github.com/ravendb/ravendb-go-client@v0.0.0-20240229102137-4474ee7aa0fa/range_builder_test.go (about) 1 package ravendb 2 3 import ( 4 "github.com/stretchr/testify/assert" 5 "strings" 6 "testing" 7 ) 8 9 func TestRangeBuilder(t *testing.T) { 10 { 11 b := NewRangeBuilder("foo") 12 b = b.IsLessThan(3) 13 b = b.IsLessThan(4) 14 b = b.IsLessThan(5) 15 assert.Error(t, b.Err()) 16 assert.True(t, strings.Contains(b.Err().Error(), "Less bound was already set")) 17 } 18 19 { 20 b := NewRangeBuilder("foo") 21 b = b.IsLessThan(3) 22 b = b.IsLessThanOrEqualTo(18) 23 b = b.IsLessThanOrEqualTo(22) 24 assert.Error(t, b.Err()) 25 assert.True(t, strings.Contains(b.Err().Error(), "Less bound was already set")) 26 } 27 28 { 29 b := NewRangeBuilder("foo") 30 b = b.IsGreaterThan(3) 31 b = b.IsGreaterThan(18) 32 b = b.IsGreaterThan(3) 33 assert.Error(t, b.Err()) 34 assert.True(t, strings.Contains(b.Err().Error(), "Greater bound was already set")) 35 } 36 37 { 38 b := NewRangeBuilder("foo") 39 b = b.IsGreaterThanOrEqualTo(3) 40 b = b.IsGreaterThan(18) 41 b = b.IsGreaterThanOrEqualTo(12) 42 assert.Error(t, b.Err()) 43 assert.True(t, strings.Contains(b.Err().Error(), "Greater bound was already set")) 44 45 addQueryParameter := func(interface{}) string { 46 return "" 47 } 48 _, err := b.GetStringRepresentation(addQueryParameter) 49 assert.Error(t, err) 50 assert.True(t, strings.Contains(err.Error(), "Greater bound was already set")) 51 } 52 53 { 54 b := NewRangeBuilder("foo") 55 addQueryParameter := func(interface{}) string { 56 return "" 57 } 58 s, err := b.GetStringRepresentation(addQueryParameter) 59 assert.Equal(t, s, "") 60 assert.Error(t, err) 61 assert.True(t, strings.Contains(err.Error(), "Bounds were not set")) 62 } 63 }