| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- // Copyright 2017 The Gitea Authors. All rights reserved.
- // SPDX-License-Identifier: MIT
-
- package base
-
- import (
- "testing"
-
- "github.com/stretchr/testify/assert"
- )
-
- func TestNaturalSortLess(t *testing.T) {
- testLess := func(s1, s2 string) {
- assert.True(t, NaturalSortLess(s1, s2), "s1<s2 should be true: s1=%q, s2=%q", s1, s2)
- assert.False(t, NaturalSortLess(s2, s1), "s2<s1 should be false: s1=%q, s2=%q", s1, s2)
- }
- testEqual := func(s1, s2 string) {
- assert.False(t, NaturalSortLess(s1, s2), "s1<s2 should be false: s1=%q, s2=%q", s1, s2)
- assert.False(t, NaturalSortLess(s2, s1), "s2<s1 should be false: s1=%q, s2=%q", s1, s2)
- }
-
- testEqual("", "")
- testLess("", "a")
- testLess("", "1")
-
- testLess("v1.2", "v1.2.0")
- testLess("v1.2.0", "v1.10.0")
- testLess("v1.20.0", "v1.29.0")
- testEqual("v1.20.0", "v1.20.0")
-
- testLess("a", "A")
- testLess("a", "B")
- testLess("A", "b")
- testLess("A", "ab")
-
- testLess("abc", "bcd")
- testLess("a-1-a", "a-1-b")
- testLess("2", "12")
-
- testLess("cafe", "café")
- testLess("café", "caff")
-
- testLess("A-2", "A-11")
- testLess("0.txt", "1.txt")
- }
|