diff --git a/test_bc.lua b/test_bc.lua index ce7e5e499314..4ae1efd699a7 100644 --- a/test_bc.lua +++ b/test_bc.lua @@ -43,13 +43,24 @@ function test_request_noun() end function test_call_verb() - local bci = bc:init({["light"]=true}, {["toggle_light"]=function(b) - b:set_noun("light", not b:get_noun("light")) - end}) + local bci = bc:init({["light"]=true}, { + ["toggle_light"]=function(b) + b:set_noun("light", not b:get_noun("light")) + end, + ["set_light"]=function(b, state) + b:set_noun("light", state) + end, + }) local addr = network.get_scene() -- Call verb network.send(addr, 1234, ser.serialize({ty=2, verb="toggle_light"})) assert_equal(false, bci:get_noun("light"), "Verb did not do its job") + + network.send(addr, 1234, ser.serialize({ty=2, verb="set_light", param=true})) + assert_equal(true, bci:get_noun("light"), "Verb did not do its job") + + network.send(addr, 1234, ser.serialize({ty=2, verb="set_light", param=false})) + assert_equal(false, bci:get_noun("light"), "Verb did not do its job") end function test_multinode_call_verb()