Refactor appcore-widget
[platform/core/appfw/appcore-widget.git] / test / unit_tests / test_widget_app_cpp.cc
index b41c249..8d5fca5 100644 (file)
  */
 
 #include <gmock/gmock.h>
+#include <gtest/gtest.h>
+
 #include <widget_app.hpp>
 
-namespace {
+#include "include/widget_app.h"
+#include "include/widget_app_efl.h"
+#include "unit_tests/mock/app_common_mock.h"
+#include "unit_tests/mock/appcore_multiwindow_base_mock.h"
+#include "unit_tests/mock/aul_mock.h"
+#include "unit_tests/mock/ecore_wl2_mock.h"
+#include "unit_tests/mock/elm_mock.h"
+#include "unit_tests/mock/gio_mock.h"
+#include "unit_tests/mock/system_info_mock.h"
+#include "unit_tests/mock/test_fixture.h"
+#include "unit_tests/mock/widget_service_mock.h"
+
+using ::testing::_;
+using ::testing::DoAll;
+using ::testing::Invoke;
+using ::testing::Return;
+using ::testing::SetArgPointee;
+
+class Mocks : public ::testing::NiceMock<GioMock>,
+              public ::testing::NiceMock<MultiWindowBaseMock>,
+              public ::testing::NiceMock<AppCommonMock>,
+              public ::testing::NiceMock<WidgetServiceMock>,
+              public ::testing::NiceMock<ElmMock>,
+              public ::testing::NiceMock<AulMock>,
+              public ::testing::NiceMock<SystemInfoMock>,
+              public ::testing::NiceMock<EcoreWl2Mock> {};
+
+class WidgetAppCppTest : public TestFixture {
+ public:
+  WidgetAppCppTest() : TestFixture(std::make_unique<Mocks>()) {}
+};
 
 class WidgetApp : public tizen_appfw::WidgetAppBase {
  public:
@@ -30,7 +62,7 @@ class WidgetApp : public tizen_appfw::WidgetAppBase {
       }
     };
 
-    Instance(widget_context_h h) : InstanceBase(h) {}
+    explicit Instance(widget_context_h h) : InstanceBase(h) {}
     void OnCreate(const tizen_base::Bundle& content, int w, int h) override {}
     void OnDestroy(DestroyType reason, tizen_base::Bundle* content) override {}
     void OnPause() override {}
@@ -44,13 +76,15 @@ class WidgetApp : public tizen_appfw::WidgetAppBase {
   void OnTerminate() override {}
 };
 
-}  // namespace
+TEST_F(WidgetAppCppTest, Run_InvalidParameter) {
+    EXPECT_CALL(GetMock<SystemInfoMock>(),
+        system_info_get_platform_bool(_, _)).
+            WillRepeatedly(DoAll(SetArgPointee<1>(true), Return(0)));
 
-TEST(WidgetAppCppTest, Run_InvalidParameter) {
   WidgetApp app;
   std::unique_ptr<tizen_appfw::WidgetAppBase::InstanceBase::Factory> factory(
       new WidgetApp::Instance::Factory());
 
   int ret = app.Run(0, nullptr, std::move(factory));
   EXPECT_EQ(ret, APP_ERROR_INVALID_PARAMETER);
-}
\ No newline at end of file
+}