LuaBinder.cpp 685 B

12345678910111213141516171819202122232425262728293031
  1. // Copyright (C) 2014, Panagiotis Christopoulos Charitos.
  2. // All rights reserved.
  3. // Code licensed under the BSD License.
  4. // http://www.anki3d.org/LICENSE
  5. #include "tests/framework/Framework.h"
  6. #include "anki/script/ScriptManager.h"
  7. #include "anki/Math.h"
  8. static const char* script = R"(
  9. b = Vec2.new(3.0, 4.0)
  10. v2:copy(v2 * b)
  11. v3:setZ(0.1)
  12. )";
  13. ANKI_TEST(Script, LuaBinder)
  14. {
  15. HeapAllocator<U8> alloc(allocAligned, nullptr);
  16. ScriptManager sm(alloc, nullptr);
  17. Vec2 v2(2.0, 3.0);
  18. Vec3 v3(1.1, 2.2, 3.3);
  19. sm.exposeVariable("v2", &v2);
  20. sm.exposeVariable("v3", &v3);
  21. sm.evalString(script);
  22. ANKI_TEST_EXPECT_EQ(v2, Vec2(6, 12));
  23. ANKI_TEST_EXPECT_EQ(v3, Vec3(1.1, 2.2, 0.1));
  24. }