Add tests for EllipsisString() and fix bug if param length < 3
This commit is contained in:
parent
f81711f40d
commit
030ba2894f
|
@ -462,7 +462,10 @@ func Subtract(left interface{}, right interface{}) interface{} {
|
|||
// EllipsisString returns a truncated short string,
|
||||
// it appends '...' in the end of the length of string is too large.
|
||||
func EllipsisString(str string, length int) string {
|
||||
if len(str) < length {
|
||||
if length <= 3 {
|
||||
return "..."
|
||||
}
|
||||
if len(str) <= length {
|
||||
return str
|
||||
}
|
||||
return str[:length-3] + "..."
|
||||
|
|
|
@ -68,14 +68,11 @@ func TestAvatarLink(t *testing.T) {
|
|||
)
|
||||
}
|
||||
|
||||
// TODO: AvatarLink()
|
||||
// TODO: computeTimeDiff()
|
||||
// TODO: TimeSincePro()
|
||||
// TODO: timeSince()
|
||||
// TODO: RawTimeSince()
|
||||
// TODO: TimeSince()
|
||||
// TODO: logn()
|
||||
// TODO: humanateBytes()
|
||||
|
||||
func TestFileSize(t *testing.T) {
|
||||
var size int64
|
||||
|
@ -96,7 +93,18 @@ func TestFileSize(t *testing.T) {
|
|||
}
|
||||
|
||||
// TODO: Subtract()
|
||||
// TODO: EllipsisString()
|
||||
|
||||
func TestEllipsisString(t *testing.T) {
|
||||
assert.Equal(t, "...", EllipsisString("foobar", 0))
|
||||
assert.Equal(t, "...", EllipsisString("foobar", 1))
|
||||
assert.Equal(t, "...", EllipsisString("foobar", 2))
|
||||
assert.Equal(t, "...", EllipsisString("foobar", 3))
|
||||
assert.Equal(t, "f...", EllipsisString("foobar", 4))
|
||||
assert.Equal(t, "fo...", EllipsisString("foobar", 5))
|
||||
assert.Equal(t, "foobar", EllipsisString("foobar", 6))
|
||||
assert.Equal(t, "foobar", EllipsisString("foobar", 10))
|
||||
}
|
||||
|
||||
// TODO: TruncateString()
|
||||
// TODO: StringsToInt64s()
|
||||
// TODO: Int64sToStrings()
|
||||
|
|
Loading…
Reference in a new issue