github.com/consensys/gnark@v0.11.0/internal/regression_tests/issue1227/issue_1227_test.go (about) 1 package issue1226 2 3 import ( 4 "testing" 5 6 "github.com/consensys/gnark/frontend" 7 "github.com/consensys/gnark/test" 8 ) 9 10 type Circuit struct { 11 constVal int 12 X frontend.Variable 13 } 14 15 func (circuit *Circuit) Define(api frontend.API) error { 16 api.AssertIsLessOrEqual(circuit.constVal, circuit.X) 17 return nil 18 } 19 20 func TestConstantPath(t *testing.T) { 21 assert := test.NewAssert(t) 22 assert.CheckCircuit(&Circuit{constVal: 1}, 23 test.WithValidAssignment(&Circuit{X: 1}), // 1 <= 1 --> true 24 test.WithInvalidAssignment(&Circuit{X: 0})) // 1 <= 0 --> false 25 // test edge case where constant is 0 26 assert.CheckCircuit(&Circuit{constVal: 0}, 27 test.WithValidAssignment(&Circuit{X: 1}), // 0 <= 1 --> true 28 test.WithValidAssignment(&Circuit{X: 0})) // 0 <= 0 --> true 29 }