BsScriptUnitTests.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #pragma once
  4. #include "BsScriptEditorPrerequisites.h"
  5. #include "BsScriptObject.h"
  6. namespace BansheeEngine
  7. {
  8. /**
  9. * @brief Interop class between C++ & CLR for various managed unit tests.
  10. */
  11. class BS_SCR_BED_EXPORT ScriptUnitTests : public ScriptObject <ScriptUnitTests>
  12. {
  13. public:
  14. SCRIPT_OBJ(EDITOR_ASSEMBLY, "BansheeEditor", "UnitTests")
  15. /**
  16. * @brief Starts execution of the managed tests.
  17. */
  18. static void runTests();
  19. private:
  20. static MonoMethod* RunTestsMethod;
  21. static SPtr<ManagedSerializableDiff> tempDiff;
  22. /************************************************************************/
  23. /* CLR HOOKS */
  24. /************************************************************************/
  25. static void internal_UT1_GameObjectClone(MonoObject* instance);
  26. static void internal_UT3_GenerateDiff(MonoObject* oldObj, MonoObject* newObj);
  27. static void internal_UT3_ApplyDiff(MonoObject* obj);
  28. };
  29. }