version_test.go 521 B

123456789101112131415161718192021222324252627282930
  1. package utils
  2. import (
  3. "testing"
  4. "github.com/stretchr/testify/assert"
  5. )
  6. func TestCompareVersions(t *testing.T) {
  7. cases := []struct {
  8. ver1 string
  9. ver2 string
  10. out int
  11. }{
  12. {"1", "1.0.1", -1},
  13. {"1.0.1", "1.0.2", -1},
  14. {"1.0.3", "1.1", -1},
  15. {"1.1", "1.1.1", -1},
  16. {"1.3.2", "1.2", 1},
  17. {"1.1.1", "1.1.1", 0},
  18. {"1.1.0", "1.1", 0},
  19. }
  20. for _, each := range cases {
  21. t.Run(each.ver1, func(t *testing.T) {
  22. actual := CompareVersions(each.ver1, each.ver2)
  23. assert.Equal(t, each.out, actual)
  24. })
  25. }
  26. }