1package semver 2 3import ( 4 "reflect" 5 "testing" 6) 7 8func TestSort(t *testing.T) { 9 v100, _ := Parse("1.0.0") 10 v010, _ := Parse("0.1.0") 11 v001, _ := Parse("0.0.1") 12 versions := []Version{v010, v100, v001} 13 Sort(versions) 14 15 correct := []Version{v001, v010, v100} 16 if !reflect.DeepEqual(versions, correct) { 17 t.Fatalf("Sort returned wrong order: %s", versions) 18 } 19} 20 21func BenchmarkSort(b *testing.B) { 22 v100, _ := Parse("1.0.0") 23 v010, _ := Parse("0.1.0") 24 v001, _ := Parse("0.0.1") 25 b.ReportAllocs() 26 b.ResetTimer() 27 for n := 0; n < b.N; n++ { 28 Sort([]Version{v010, v100, v001}) 29 } 30} 31