github.com/Mericusta/go-stp@v0.6.8/bs_test.go (about) 1 package stp 2 3 import ( 4 "fmt" 5 "testing" 6 ) 7 8 type testBSTValue struct { 9 i Int 10 s String 11 } 12 13 func (v testBSTValue) LT(rv testBSTValue) bool { 14 return v.i < rv.i && v.s < rv.s 15 } 16 17 func (v testBSTValue) GT(rv testBSTValue) bool { 18 return v.i > rv.i && v.s > rv.s 19 } 20 21 func Test_BSTree(t *testing.T) { 22 bst1 := NewBSTree(Int(3)) 23 bst2 := NewBSTree(testBSTValue{i: 3, s: "3"}) 24 for index := 0; index != 5; index++ { 25 bst1.Set(Int(5 - index)) 26 bst2.Set(testBSTValue{ 27 i: Int(5 - index), 28 s: String(fmt.Sprintf("%v", index)), 29 }) 30 } 31 }