Lines Matching +full:0 +full:- +full:987

36 #include <atf-c++.hpp>
72 const bool ok = (lua_pcall(raw(state), 0, 1, 0) == 0 && in is_available()
73 !lua_isnil(raw(state), -1)); in is_available()
102 /// \post stack(-2) contains the first upvalue.
103 /// \post stack(-1) contains the second upvalue.
122 /// \pre stack(-1) contains the second factor.
123 /// \post stack(-1) contains the product of the two input factors.
132 const int f2 = lua_tointeger(raw(state), -1); in cxx_multiply_closure()
140 /// \pre stack(-2) contains the dividend.
141 /// \pre stack(-1) contains the divisor.
142 /// \post stack(-2) contains the quotient of the division.
143 /// \post stack(-1) contains the remainder of the division.
156 const int dividend = state.to_integer(-2); in cxx_divide()
157 const int divisor = state.to_integer(-1); in cxx_divide()
158 if (divisor == 0) in cxx_divide()
159 throw std::runtime_error("Divisor is 0"); in cxx_divide()
160 if (dividend < 0 || divisor < 0) in cxx_divide()
170 /// \pre stack(-1) contains the length of the message to construct.
181 const int length = state.to_integer(-1); in raise_long_error()
203 ATF_REQUIRE(luaL_dostring(raw(state), "test_variable = 3") == 0); in ATF_TEST_CASE_BODY()
205 ATF_REQUIRE(lua_isnumber(raw(state), -1)); in ATF_TEST_CASE_BODY()
215 ATF_REQUIRE(lua_isnil(raw(state), -1)); in ATF_TEST_CASE_BODY()
224 ATF_REQUIRE(luaL_dostring(raw(state), "global_variable = 'hello'") == 0); in ATF_TEST_CASE_BODY()
227 lua_gettable(raw(state), -2); in ATF_TEST_CASE_BODY()
228 ATF_REQUIRE(lua_isstring(raw(state), -1)); in ATF_TEST_CASE_BODY()
229 ATF_REQUIRE(std::strcmp("hello", lua_tostring(raw(state), -1)) == 0); in ATF_TEST_CASE_BODY()
240 "t = {}; setmetatable(t, meta)") == 0); in ATF_TEST_CASE_BODY()
242 ATF_REQUIRE(state.get_metafield(-1, "foo")); in ATF_TEST_CASE_BODY()
243 ATF_REQUIRE(lua_isnumber(raw(state), -1)); in ATF_TEST_CASE_BODY()
244 ATF_REQUIRE_EQ(567, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
255 "t = {}; setmetatable(t, meta)") == 0); in ATF_TEST_CASE_BODY()
257 ATF_REQUIRE(!state.get_metafield(-1, "bar")); in ATF_TEST_CASE_BODY()
268 "t = {}; setmetatable(t, meta)") == 0); in ATF_TEST_CASE_BODY()
271 ATF_REQUIRE(state.get_metatable(-2)); in ATF_TEST_CASE_BODY()
272 ATF_REQUIRE(lua_istable(raw(state), -1)); in ATF_TEST_CASE_BODY()
274 lua_gettable(raw(state), -2); in ATF_TEST_CASE_BODY()
275 ATF_REQUIRE(lua_isnumber(raw(state), -1)); in ATF_TEST_CASE_BODY()
276 ATF_REQUIRE_EQ(567, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
285 ATF_REQUIRE(luaL_dostring(raw(state), "t = {}") == 0); in ATF_TEST_CASE_BODY()
287 ATF_REQUIRE(!state.get_metatable(-1)); in ATF_TEST_CASE_BODY()
296 ATF_REQUIRE(luaL_dostring(raw(state), "t = { a = 1, bar = 234 }") == 0); in ATF_TEST_CASE_BODY()
299 state.get_table(-2); in ATF_TEST_CASE_BODY()
300 ATF_REQUIRE(lua_isnumber(raw(state), -1)); in ATF_TEST_CASE_BODY()
301 ATF_REQUIRE_EQ(234, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
312 REQUIRE_API_ERROR("lua_gettable", state.get_table(-2)); in ATF_TEST_CASE_BODY()
323 "the_table = { foo = 1, bar = 2 }") == 0); in ATF_TEST_CASE_BODY()
326 state.get_table(-2); in ATF_TEST_CASE_BODY()
327 ATF_REQUIRE(lua_isnil(raw(state), -1)); in ATF_TEST_CASE_BODY()
336 ATF_REQUIRE_EQ(0, state.get_top()); in ATF_TEST_CASE_BODY()
353 state.insert(-3); in ATF_TEST_CASE_BODY()
354 ATF_REQUIRE_EQ(3, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
355 ATF_REQUIRE_EQ(2, lua_tointeger(raw(state), -2)); in ATF_TEST_CASE_BODY()
356 ATF_REQUIRE_EQ(4, lua_tointeger(raw(state), -3)); in ATF_TEST_CASE_BODY()
357 ATF_REQUIRE_EQ(1, lua_tointeger(raw(state), -4)); in ATF_TEST_CASE_BODY()
366 ATF_REQUIRE(!state.is_boolean(-1)); in ATF_TEST_CASE_BODY()
375 ATF_REQUIRE(state.is_boolean(-1)); in ATF_TEST_CASE_BODY()
377 ATF_REQUIRE(!state.is_boolean(-1)); in ATF_TEST_CASE_BODY()
378 ATF_REQUIRE(state.is_boolean(-2)); in ATF_TEST_CASE_BODY()
387 ATF_REQUIRE(!state.is_function(-1)); in ATF_TEST_CASE_BODY()
398 ATF_REQUIRE(state.is_function(-1)); in ATF_TEST_CASE_BODY()
400 ATF_REQUIRE(!state.is_function(-1)); in ATF_TEST_CASE_BODY()
401 ATF_REQUIRE(state.is_function(-2)); in ATF_TEST_CASE_BODY()
410 ATF_REQUIRE(state.is_nil(-1)); in ATF_TEST_CASE_BODY()
419 ATF_REQUIRE(state.is_nil(-1)); in ATF_TEST_CASE_BODY()
421 ATF_REQUIRE(!state.is_nil(-1)); in ATF_TEST_CASE_BODY()
422 ATF_REQUIRE(state.is_nil(-2)); in ATF_TEST_CASE_BODY()
431 ATF_REQUIRE(!state.is_number(-1)); in ATF_TEST_CASE_BODY()
440 ATF_REQUIRE(!state.is_number(-1)); in ATF_TEST_CASE_BODY()
442 ATF_REQUIRE(state.is_number(-1)); in ATF_TEST_CASE_BODY()
443 ATF_REQUIRE(!state.is_number(-2)); in ATF_TEST_CASE_BODY()
452 ATF_REQUIRE(!state.is_string(-1)); in ATF_TEST_CASE_BODY()
461 ATF_REQUIRE(state.is_string(-1)); in ATF_TEST_CASE_BODY()
463 ATF_REQUIRE(!state.is_string(-1)); in ATF_TEST_CASE_BODY()
464 ATF_REQUIRE(state.is_string(-2)); in ATF_TEST_CASE_BODY()
466 ATF_REQUIRE(state.is_string(-1)); in ATF_TEST_CASE_BODY()
467 ATF_REQUIRE(!state.is_string(-2)); in ATF_TEST_CASE_BODY()
468 ATF_REQUIRE(state.is_string(-3)); in ATF_TEST_CASE_BODY()
477 ATF_REQUIRE(!state.is_table(-1)); in ATF_TEST_CASE_BODY()
488 ATF_REQUIRE(!state.is_table(-1)); in ATF_TEST_CASE_BODY()
490 ATF_REQUIRE(state.is_table(-1)); in ATF_TEST_CASE_BODY()
491 ATF_REQUIRE(!state.is_table(-2)); in ATF_TEST_CASE_BODY()
500 ATF_REQUIRE(!state.is_userdata(-1)); in ATF_TEST_CASE_BODY()
510 ATF_REQUIRE(!state.is_userdata(-1)); in ATF_TEST_CASE_BODY()
512 ATF_REQUIRE(state.is_userdata(-1)); in ATF_TEST_CASE_BODY()
513 ATF_REQUIRE(!state.is_userdata(-2)); in ATF_TEST_CASE_BODY()
527 ATF_REQUIRE(lua_pcall(raw(state), 0, 0, 0) == 0); in ATF_TEST_CASE_BODY()
529 ATF_REQUIRE(std::strcmp("oh yes", lua_tostring(raw(state), -1)) == 0); in ATF_TEST_CASE_BODY()
560 ATF_REQUIRE(lua_pcall(raw(state), 0, 1, 0) == 0); in ATF_TEST_CASE_BODY()
561 ATF_REQUIRE_EQ(5, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
570 REQUIRE_API_ERROR("luaL_loadstring", state.load_string("-")); in ATF_TEST_CASE_BODY()
580 ATF_REQUIRE(lua_istable(raw(state), -1)); in ATF_TEST_CASE_BODY()
592 ATF_REQUIRE(lua_isuserdata(raw(state), -1)); in ATF_TEST_CASE_BODY()
606 ATF_REQUIRE(!state.next(-3)); in ATF_TEST_CASE_BODY()
620 ATF_REQUIRE(state.next(-2)); in ATF_TEST_CASE_BODY()
622 ATF_REQUIRE(lua_isnumber(raw(state), -2)); in ATF_TEST_CASE_BODY()
623 ATF_REQUIRE_EQ(1, lua_tointeger(raw(state), -2)); in ATF_TEST_CASE_BODY()
624 ATF_REQUIRE(lua_isnumber(raw(state), -1)); in ATF_TEST_CASE_BODY()
625 ATF_REQUIRE_EQ(100, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
628 ATF_REQUIRE(state.next(-2)); in ATF_TEST_CASE_BODY()
630 ATF_REQUIRE(lua_isnumber(raw(state), -2)); in ATF_TEST_CASE_BODY()
631 ATF_REQUIRE_EQ(2, lua_tointeger(raw(state), -2)); in ATF_TEST_CASE_BODY()
632 ATF_REQUIRE(lua_isnumber(raw(state), -1)); in ATF_TEST_CASE_BODY()
633 ATF_REQUIRE_EQ(200, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
636 ATF_REQUIRE(!state.next(-2)); in ATF_TEST_CASE_BODY()
657 // Best-effort attempt at looking for a bunch of possible modules. in ATF_TEST_CASE_BODY()
691 state.pcall(0, 0, 0); in ATF_TEST_CASE_BODY()
694 lua_gettable(raw(state), -2); in ATF_TEST_CASE_BODY()
697 state.pcall(2, 1, 0); in ATF_TEST_CASE_BODY()
698 ATF_REQUIRE_EQ(15, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
708 REQUIRE_API_ERROR("lua_pcall", state.pcall(0, 0, 0)); in ATF_TEST_CASE_BODY()
721 ATF_REQUIRE_EQ(20, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
735 ATF_REQUIRE_EQ(10, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
746 ATF_REQUIRE(lua_toboolean(raw(state), -1)); in ATF_TEST_CASE_BODY()
749 ATF_REQUIRE(!lua_toboolean(raw(state), -1)); in ATF_TEST_CASE_BODY()
750 ATF_REQUIRE(lua_toboolean(raw(state), -2)); in ATF_TEST_CASE_BODY()
764 "return cxx_multiply_closure(10)") == 0); in ATF_TEST_CASE_BODY()
765 ATF_REQUIRE_EQ(150, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
777 ATF_REQUIRE(luaL_dostring(raw(state), "return cxx_divide(17, 3)") == 0); in ATF_TEST_CASE_BODY()
778 ATF_REQUIRE_EQ(5, lua_tointeger(raw(state), -2)); in ATF_TEST_CASE_BODY()
779 ATF_REQUIRE_EQ(2, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
791 ATF_REQUIRE(luaL_dostring(raw(state), "return cxx_divide(15, 0)") != 0); in ATF_TEST_CASE_BODY()
792 ATF_REQUIRE_MATCH("Divisor is 0", lua_tostring(raw(state), -1)); in ATF_TEST_CASE_BODY()
804 ATF_REQUIRE(luaL_dostring(raw(state), "return cxx_divide(-3, -1)") != 0); in ATF_TEST_CASE_BODY()
805 ATF_REQUIRE_MATCH("Unhandled exception", lua_tostring(raw(state), -1)); in ATF_TEST_CASE_BODY()
817 ATF_REQUIRE(luaL_dostring(raw(state), "return fail(900)") != 0); in ATF_TEST_CASE_BODY()
818 ATF_REQUIRE_MATCH(std::string(900, 'A'), lua_tostring(raw(state), -1)); in ATF_TEST_CASE_BODY()
821 ATF_REQUIRE(luaL_dostring(raw(state), "return fail(8192)") != 0); in ATF_TEST_CASE_BODY()
822 ATF_REQUIRE_MATCH(std::string(900, 'A'), lua_tostring(raw(state), -1)); in ATF_TEST_CASE_BODY()
833 ATF_REQUIRE_EQ(12, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
836 ATF_REQUIRE_EQ(34, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
837 ATF_REQUIRE_EQ(12, lua_tointeger(raw(state), -2)); in ATF_TEST_CASE_BODY()
848 ATF_REQUIRE(lua_isnil(raw(state), -1)); in ATF_TEST_CASE_BODY()
851 ATF_REQUIRE(!lua_isnil(raw(state), -1)); in ATF_TEST_CASE_BODY()
852 ATF_REQUIRE(lua_isnil(raw(state), -2)); in ATF_TEST_CASE_BODY()
866 ATF_REQUIRE_EQ(std::string("first"), lua_tostring(raw(state), -1)); in ATF_TEST_CASE_BODY()
871 ATF_REQUIRE_EQ(std::string("second"), lua_tostring(raw(state), -1)); in ATF_TEST_CASE_BODY()
872 ATF_REQUIRE_EQ(std::string("first"), lua_tostring(raw(state), -2)); in ATF_TEST_CASE_BODY()
884 state.push_value(-2); in ATF_TEST_CASE_BODY()
886 ATF_REQUIRE_EQ(10, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
887 ATF_REQUIRE_EQ(20, lua_tointeger(raw(state), -2)); in ATF_TEST_CASE_BODY()
888 ATF_REQUIRE_EQ(10, lua_tointeger(raw(state), -3)); in ATF_TEST_CASE_BODY()
900 raw(state), "t = {foo=123} ; setmetatable(t, {__index=1})") == 0); in ATF_TEST_CASE_BODY()
904 state.raw_get(-3); in ATF_TEST_CASE_BODY()
905 ATF_REQUIRE(lua_isnumber(raw(state), -1)); in ATF_TEST_CASE_BODY()
906 ATF_REQUIRE_EQ(123, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
907 ATF_REQUIRE_EQ(9876, lua_tointeger(raw(state), -2)); in ATF_TEST_CASE_BODY()
919 raw(state), "t = {} ; setmetatable(t, {__newindex=1})") == 0); in ATF_TEST_CASE_BODY()
924 state.raw_set(-4); in ATF_TEST_CASE_BODY()
925 ATF_REQUIRE(luaL_dostring(raw(state), "return t.foo") == 0); in ATF_TEST_CASE_BODY()
926 ATF_REQUIRE(lua_isnumber(raw(state), -1)); in ATF_TEST_CASE_BODY()
927 ATF_REQUIRE_EQ(345, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
928 ATF_REQUIRE_EQ(876, lua_tointeger(raw(state), -2)); in ATF_TEST_CASE_BODY()
940 lua_settable(raw(state), -3); in ATF_TEST_CASE_BODY()
943 "return custom_variable == nil") == 0); in ATF_TEST_CASE_BODY()
944 ATF_REQUIRE(lua_isboolean(raw(state), -1)); in ATF_TEST_CASE_BODY()
945 ATF_REQUIRE(lua_toboolean(raw(state), -1)); in ATF_TEST_CASE_BODY()
956 ATF_REQUIRE(luaL_dostring(raw(state), "return test_variable + 1") == 0); in ATF_TEST_CASE_BODY()
957 ATF_REQUIRE(lua_isnumber(raw(state), -1)); in ATF_TEST_CASE_BODY()
958 ATF_REQUIRE_EQ(4, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
972 "numbers[1] = 5\n") == 0); in ATF_TEST_CASE_BODY()
977 state.set_metatable(-3); in ATF_TEST_CASE_BODY()
980 ATF_REQUIRE(luaL_dostring(raw(state), "return numbers + 2") == 0); in ATF_TEST_CASE_BODY()
981 ATF_REQUIRE(lua_isnumber(raw(state), -1)); in ATF_TEST_CASE_BODY()
982 ATF_REQUIRE_EQ(7, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
991 ATF_REQUIRE(luaL_dostring(raw(state), "t = { a = 1, bar = 234 }") == 0); in ATF_TEST_CASE_BODY()
996 state.set_table(-3); in ATF_TEST_CASE_BODY()
1000 lua_gettable(raw(state), -2); in ATF_TEST_CASE_BODY()
1001 ATF_REQUIRE(lua_isnumber(raw(state), -1)); in ATF_TEST_CASE_BODY()
1002 ATF_REQUIRE_EQ(1, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()
1006 lua_gettable(raw(state), -2); in ATF_TEST_CASE_BODY()
1007 ATF_REQUIRE(lua_isstring(raw(state), -1)); in ATF_TEST_CASE_BODY()
1008 ATF_REQUIRE_EQ(std::string("baz"), lua_tostring(raw(state), -1)); in ATF_TEST_CASE_BODY()
1022 REQUIRE_API_ERROR("lua_settable", state.set_table(-3)); in ATF_TEST_CASE_BODY()
1031 lua_pushboolean(raw(state), 0); in ATF_TEST_CASE_BODY()
1033 ATF_REQUIRE(!state.to_boolean(-2)); in ATF_TEST_CASE_BODY()
1034 ATF_REQUIRE(state.to_boolean(-1)); in ATF_TEST_CASE_BODY()
1045 ATF_REQUIRE_EQ(12, state.to_integer(-2)); in ATF_TEST_CASE_BODY()
1056 ATF_REQUIRE_EQ("foobar", state.to_string(-2)); in ATF_TEST_CASE_BODY()
1057 ATF_REQUIRE_EQ("12", state.to_string(-1)); in ATF_TEST_CASE_BODY()
1069 *pointer = 987; in ATF_TEST_CASE_BODY()
1073 int* pointer = state.to_userdata< int >(-2); in ATF_TEST_CASE_BODY()
1074 ATF_REQUIRE_EQ(987, *pointer); in ATF_TEST_CASE_BODY()
1089 "return c_get_upvalues()") == 0); in ATF_TEST_CASE_BODY()
1090 ATF_REQUIRE_EQ(25, lua_tointeger(raw(state), -2)); in ATF_TEST_CASE_BODY()
1091 ATF_REQUIRE_EQ(30, lua_tointeger(raw(state), -1)); in ATF_TEST_CASE_BODY()