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  }