EngineRuntimeDataTest.cpp 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*
  2. * author: Patrick-Christopher Mattulat
  3. * e-mail: webmaster@lynarstudios.com
  4. */
  5. #include <cycle/EngineRuntimeData.hpp>
  6. #include <gmock/gmock.h>
  7. #include <gtest/gtest.h>
  8. #include <ls-std/core/exception/IllegalArgumentException.hpp>
  9. #include <test/cycle/mock/WindowApiMock.hpp>
  10. using ls::atlantis::cycle::EngineRuntimeData;
  11. using ls::atlantis::cycle::test::WindowApiMock;
  12. using ls::std::core::IllegalArgumentException;
  13. using ::std::make_shared;
  14. using ::std::shared_ptr;
  15. using ::testing::Test;
  16. namespace
  17. {
  18. class EngineRuntimeDataTest : public Test
  19. {
  20. public:
  21. EngineRuntimeDataTest() = default;
  22. ~EngineRuntimeDataTest() override = default;
  23. shared_ptr<WindowApiMock> windowApiMock = make_shared<WindowApiMock>();
  24. };
  25. TEST_F(EngineRuntimeDataTest, setWindowApi_nullPointer)
  26. {
  27. ASSERT_THROW(EngineRuntimeData().setWindowApi(nullptr), IllegalArgumentException);
  28. }
  29. TEST_F(EngineRuntimeDataTest, getWindowApi)
  30. {
  31. EngineRuntimeData engineRuntimeData{};
  32. engineRuntimeData.setWindowApi(windowApiMock);
  33. ASSERT_EQ(windowApiMock, engineRuntimeData.getWindowApi());
  34. }
  35. }