/* * Author: Patrick-Christopher Mattulat * Company: Lynar Studios * E-Mail: webmaster@lynarstudios.com * Created: 2020-08-16 * Changed: 2023-03-25 * * */ #include #include #include using ls::std::core::Class; using ls::std::core::IllegalArgumentException; using std::make_shared; using std::shared_ptr; using test::core::ClassWrapper; using testing::Test; namespace { class ClassTest : public Test { public: ClassTest() = default; ~ClassTest() override = default; }; TEST_F(ClassTest, constructor_empty_parameter) { EXPECT_THROW( { try { Class object{""}; } catch (const IllegalArgumentException &_exception) { throw; } }, IllegalArgumentException); } TEST_F(ClassTest, destructor) { shared_ptr object = make_shared(); EXPECT_CALL(*object, Die()); } TEST_F(ClassTest, getClassName) { Class object{"Class"}; ASSERT_STREQ("Class", object.getClassName().c_str()); } }