AppWidgetHandler unittest 75/87575/3
authorTomasz Iwanek <t.iwanek@samsung.com>
Thu, 8 Sep 2016 11:40:16 +0000 (13:40 +0200)
committerTomasz Iwanek <t.iwanek@samsung.com>
Tue, 13 Sep 2016 13:28:20 +0000 (06:28 -0700)
Submit together:
 - https://review.tizen.org/gerrit/87574
 - https://review.tizen.org/gerrit/87575

Change-Id: If7fff6b3231d2dd60c4f588f7486db22dfbe4842

31 files changed:
src/unit_tests/CMakeLists.txt
src/unit_tests/appwidget_handler_unittest.cc [new file with mode: 0644]
src/unit_tests/content_handler_unittest.cc
src/unit_tests/service_handler_unittest.cc
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_auto_launch_not_bool/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_box_size_invalid/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_box_size_none/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_box_size_use_decoration_invalid/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_mouse_event_not_bool/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_none/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_height_invalid/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_height_ood/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_src_none/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_width_invalid/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_src_none/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_touch_effect_not_bool/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_two/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_icon_none/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_icon_src_none/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_icon_two/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_label_none/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_id_invalid_1/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_id_invalid_2/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_id_none/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_primary_none/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_primary_not_bool/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_update_period_invalid/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_update_period_ood/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox2/config.xml [new file with mode: 0644]
src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox2_app_widget_primary_two_true/config.xml [new file with mode: 0644]

index 5a2b74b21a451ea86c71fd4009064e9bf6c8e2b0..e84b01a89092c873e06556fcce281cfee69ef0a7 100644 (file)
@@ -1,49 +1,35 @@
 SET(PRJ_PATH ..)
 
 SET(TESTS
-  manifest_util_unittest
+  parser_manifest_util_unittest
   service_handler_unittest
   content_handler_unittest
+  appwidget_handler_unittest
 )
 SET(DESTINATION_DIR manifest-parser-ut)
 
 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../)
 
-# Executables
-ADD_EXECUTABLE(manifest_util_unittest
-               parser_manifest_util_unittest.cc)
-ADD_EXECUTABLE(service_handler_unittest
-               service_handler_unittest.cc)
-ADD_EXECUTABLE(content_handler_unittest
-               content_handler_unittest.cc)
-
 INSTALL(DIRECTORY test_samples/ DESTINATION ${SHAREDIR}/${DESTINATION_DIR}/test_samples)
 
 FOREACH(test ${TESTS})
-APPLY_PKG_CONFIG(${test} PUBLIC
-  LIBXML_DEPS
-  PKGMGR_INFO_DEPS
-  PKGMGR_PARSER_DEPS
-  VCONF_DEPS
-  Boost
-  GTEST
-  MANIFEST_PARSER_DEPS
-  MANIFEST_PARSER_UTILS_DEPS
-)
-
-ENDFOREACH(test)
+  ADD_EXECUTABLE(${test} "${test}.cc")
+
+  APPLY_PKG_CONFIG(${test} PUBLIC
+    LIBXML_DEPS
+    PKGMGR_INFO_DEPS
+    PKGMGR_PARSER_DEPS
+    VCONF_DEPS
+    Boost
+    GTEST
+    MANIFEST_PARSER_DEPS
+    MANIFEST_PARSER_UTILS_DEPS
+  )
 
-# FindGTest module do not sets all needed libraries in GTEST_LIBRARIES and
-# GTest main libraries is still missing, so additional linking of
-# GTEST_MAIN_LIBRARIES is needed.
-
-TARGET_LINK_LIBRARIES(manifest_util_unittest PUBLIC ${TARGET_LIBNAME_PARSER}
-               ${TARGET_LIBNAME_WGT_MANIFEST_HANDLERS} ${GTEST_MAIN_LIBRARIES})
-TARGET_LINK_LIBRARIES(service_handler_unittest PUBLIC ${TARGET_LIBNAME_PARSER}
-               ${TARGET_LIBNAME_WGT_MANIFEST_HANDLERS} ${GTEST_MAIN_LIBRARIES})
-TARGET_LINK_LIBRARIES(content_handler_unittest PUBLIC ${TARGET_LIBNAME_PARSER}
-               ${TARGET_LIBNAME_WGT_MANIFEST_HANDLERS} ${GTEST_MAIN_LIBRARIES})
-
-FOREACH(test ${TESTS})
   INSTALL(TARGETS ${test} DESTINATION ${BINDIR}/${DESTINATION_DIR})
+  # FindGTest module do not sets all needed libraries in GTEST_LIBRARIES and
+  # GTest main libraries is still missing, so additional linking of
+  # GTEST_MAIN_LIBRARIES is needed.
+  TARGET_LINK_LIBRARIES(${test} PUBLIC ${TARGET_LIBNAME_PARSER}
+      ${TARGET_LIBNAME_WGT_MANIFEST_HANDLERS} ${GTEST_MAIN_LIBRARIES})
 ENDFOREACH(test)
diff --git a/src/unit_tests/appwidget_handler_unittest.cc b/src/unit_tests/appwidget_handler_unittest.cc
new file mode 100644 (file)
index 0000000..af9e770
--- /dev/null
@@ -0,0 +1,454 @@
+// Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
+// Use of this source code is governed by an apache 2.0 license that can be
+// found in the LICENSE file.
+
+#include <boost/filesystem/path.hpp>
+
+#include <gtest/gtest.h>
+
+#include <algorithm>
+#include <initializer_list>
+#include <vector>
+
+#include "manifest_parser/manifest.h"
+#include "manifest_parser/manifest_handler.h"
+#include "manifest_parser/manifest_parser_impl.h"
+#include "manifest_parser/manifest_parser.h"
+#include "manifest_parser/manifest_util.h"
+#include "wgt_manifest_handlers/application_manifest_constants.h"
+#include "wgt_manifest_handlers/appwidget_handler.h"
+#include "wgt_manifest_handlers/tizen_application_handler.h"
+
+namespace bf = boost::filesystem;
+
+namespace {
+
+const bf::path kXmlDirectory("/usr/share/manifest-parser-ut/test_samples/xmls");
+
+std::unique_ptr<parser::ManifestHandlerRegistry> GetRegistryForTest() {
+  std::unique_ptr<parser::ManifestHandlerRegistry> registry;
+  registry.reset(new parser::ManifestHandlerRegistry());
+  registry->RegisterManifestHandler(new wgt::parse::TizenApplicationHandler());
+  registry->RegisterManifestHandler(new wgt::parse::AppWidgetHandler());
+  return registry;
+}
+
+}  // namespace
+
+namespace parser {
+
+class AppWidgetHandlerTest : public testing::Test {
+ public:
+  void SetUp() override {
+    parser_.reset(new ManifestParserImpl((GetRegistryForTest())));
+  }
+  void TearDown() override { parser_.reset(); }
+  void SetManifest(std::shared_ptr<Manifest> manifest) {
+    parser_->SetManifest(manifest);
+  }
+  bool ParseAppManifest() {
+    std::string error;
+    return parser_->ParseAppManifest(&error);
+  }
+  bool ValidateAppManifest() {
+    std::string error;
+    return parser_->ValidateAppManifest(&error);
+  }
+  std::shared_ptr<const ManifestData> GetManifestData(const std::string& key) {
+    return parser_->GetManifestData(key);
+  }
+
+  std::string GetMyName() const {
+    std::string suite =
+        testing::UnitTest::GetInstance()->current_test_info()->test_case_name();
+    std::string case_name =
+        testing::UnitTest::GetInstance()->current_test_info()->name();
+    return suite + '.' + case_name;
+  }
+
+ private:
+  std::unique_ptr<ManifestParserImpl> parser_;
+};
+
+TEST_F(AppWidgetHandlerTest, dbox1) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_TRUE(ParseAppManifest());
+  ASSERT_TRUE(ValidateAppManifest());
+  std::shared_ptr<const wgt::parse::AppWidgetInfo> data =
+      std::static_pointer_cast<const wgt::parse::AppWidgetInfo>(
+          GetManifestData(
+              wgt::application_widget_keys::kTizenAppWidgetFullKey));
+  ASSERT_EQ(data->app_widgets().size(), 1);
+  const wgt::parse::AppWidget& app_widget = *data->app_widgets().begin();
+  ASSERT_EQ(app_widget.auto_launch, true);
+  ASSERT_EQ(app_widget.content_mouse_event, true);
+  ASSERT_EQ(app_widget.content_touch_effect, false);
+  ASSERT_EQ(app_widget.content_src, "box/index.html");
+  ASSERT_EQ(app_widget.id, "aaaaaaa100.dbox1.default");
+  ASSERT_EQ(app_widget.primary, true);
+  ASSERT_EQ(app_widget.label.default_value, "dbox1 default label");
+  ASSERT_EQ(app_widget.label.lang_value_map.size(), 2);
+  ASSERT_EQ(app_widget.label.lang_value_map.count("pl"), 1);
+  ASSERT_EQ(app_widget.label.lang_value_map.find("pl")->second,
+            "dbox1 pl label");
+  ASSERT_EQ(app_widget.label.lang_value_map.count("en"), 1);
+  ASSERT_EQ(app_widget.label.lang_value_map.find("en")->second,
+            "dbox1 en label");
+  ASSERT_EQ(app_widget.icon_src, "icon.png");
+  ASSERT_EQ(app_widget.max_instance, 0);
+  ASSERT_EQ(app_widget.update_period.size(), 1);
+  ASSERT_EQ(app_widget.update_period.at(0), 2000.0);
+
+  ASSERT_EQ(app_widget.content_size.size(), 3);
+  auto size1 = std::find_if(app_widget.content_size.begin(),
+                            app_widget.content_size.end(),
+                            [](const wgt::parse::AppWidgetSize& size) {
+        return size.type == wgt::parse::k1x1;
+      });
+  auto size2 = std::find_if(app_widget.content_size.begin(),
+                            app_widget.content_size.end(),
+                            [](const wgt::parse::AppWidgetSize& size) {
+        return size.type == wgt::parse::k2x1;
+      });
+  auto size3 = std::find_if(app_widget.content_size.begin(),
+                            app_widget.content_size.end(),
+                            [](const wgt::parse::AppWidgetSize& size) {
+        return size.type == wgt::parse::k2x2;
+      });
+  ASSERT_NE(size1, app_widget.content_size.end());
+  ASSERT_NE(size2, app_widget.content_size.end());
+  ASSERT_NE(size3, app_widget.content_size.end());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_icon_none) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_TRUE(ParseAppManifest());
+  ASSERT_TRUE(ValidateAppManifest());
+  std::shared_ptr<const wgt::parse::AppWidgetInfo> data =
+      std::static_pointer_cast<const wgt::parse::AppWidgetInfo>(
+          GetManifestData(
+              wgt::application_widget_keys::kTizenAppWidgetFullKey));
+  ASSERT_EQ(data->app_widgets().size(), 1);
+  const wgt::parse::AppWidget& app_widget = *data->app_widgets().begin();
+  ASSERT_TRUE(app_widget.icon_src.empty());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox2) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_TRUE(ParseAppManifest());
+  ASSERT_TRUE(ValidateAppManifest());
+  std::shared_ptr<const wgt::parse::AppWidgetInfo> data =
+      std::static_pointer_cast<const wgt::parse::AppWidgetInfo>(
+          GetManifestData(
+              wgt::application_widget_keys::kTizenAppWidgetFullKey));
+  ASSERT_EQ(data->app_widgets().size(), 2);
+  auto result1 = std::find_if(data->app_widgets().begin(),
+                              data->app_widgets().end(),
+                              [](const wgt::parse::AppWidget& candidate) {
+        return candidate.id == "aaaaaaa200.dbox2.default";
+      });
+  auto result2 = std::find_if(data->app_widgets().begin(),
+                              data->app_widgets().end(),
+                              [](const wgt::parse::AppWidget& candidate) {
+        return candidate.id == "aaaaaaa200.dbox2.second";
+      });
+  ASSERT_NE(result1, data->app_widgets().end());
+  ASSERT_NE(result2, data->app_widgets().end());
+
+  const wgt::parse::AppWidget& app_widget1 = *result1;
+  ASSERT_EQ(app_widget1.auto_launch, true);
+  ASSERT_EQ(app_widget1.content_mouse_event, true);
+  ASSERT_EQ(app_widget1.content_touch_effect, false);
+  ASSERT_EQ(app_widget1.content_src, "box/index.html");
+  ASSERT_EQ(app_widget1.id, "aaaaaaa200.dbox2.default");
+  ASSERT_EQ(app_widget1.primary, true);
+  ASSERT_EQ(app_widget1.label.default_value, "dbox2 default label");
+  ASSERT_EQ(app_widget1.label.lang_value_map.size(), 2);
+  ASSERT_EQ(app_widget1.label.lang_value_map.count("pl"), 1);
+  ASSERT_EQ(app_widget1.label.lang_value_map.find("pl")->second,
+            "dbox2 pl label");
+  ASSERT_EQ(app_widget1.label.lang_value_map.count("en"), 1);
+  ASSERT_EQ(app_widget1.label.lang_value_map.find("en")->second,
+            "dbox2 en label");
+  ASSERT_EQ(app_widget1.icon_src, "icon.png");
+  ASSERT_EQ(app_widget1.max_instance, 0);
+  ASSERT_EQ(app_widget1.update_period.size(), 1);
+  ASSERT_EQ(app_widget1.update_period.at(0), 2000.0);
+
+  const wgt::parse::AppWidget& app_widget2 = *result2;
+  ASSERT_EQ(app_widget2.auto_launch, false);
+  ASSERT_EQ(app_widget2.content_mouse_event, false);
+  ASSERT_EQ(app_widget2.content_touch_effect, true);
+  ASSERT_EQ(app_widget2.content_src, "box/index2.html");
+  ASSERT_EQ(app_widget2.id, "aaaaaaa200.dbox2.second");
+  ASSERT_EQ(app_widget2.primary, false);
+  ASSERT_EQ(app_widget2.label.default_value, "dbox2 default label 2");
+  ASSERT_EQ(app_widget2.label.lang_value_map.size(), 2);
+  ASSERT_EQ(app_widget2.label.lang_value_map.count("pl"), 1);
+  ASSERT_EQ(app_widget2.label.lang_value_map.find("pl")->second,
+            "dbox2 pl label 2");
+  ASSERT_EQ(app_widget2.label.lang_value_map.count("en"), 1);
+  ASSERT_EQ(app_widget2.label.lang_value_map.find("en")->second,
+            "dbox2 en label 2");
+  ASSERT_EQ(app_widget2.icon_src, "icon2.png");
+  ASSERT_EQ(app_widget2.max_instance, 0);
+  ASSERT_EQ(app_widget2.update_period.size(), 1);
+  ASSERT_EQ(app_widget2.update_period.at(0), 4000.0);
+}
+
+TEST_F(AppWidgetHandlerTest, dbox2_app_widget_primary_two_true) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_TRUE(ParseAppManifest());
+  ASSERT_TRUE(ValidateAppManifest());
+  std::shared_ptr<const wgt::parse::AppWidgetInfo> data =
+      std::static_pointer_cast<const wgt::parse::AppWidgetInfo>(
+          GetManifestData(
+              wgt::application_widget_keys::kTizenAppWidgetFullKey));
+  ASSERT_EQ(data->app_widgets().size(), 2);
+  auto result1 = std::find_if(data->app_widgets().begin(),
+                              data->app_widgets().end(),
+                              [](const wgt::parse::AppWidget& candidate) {
+        return candidate.id == "aaaaaaa201.dbox2.default";
+      });
+  auto result2 = std::find_if(data->app_widgets().begin(),
+                              data->app_widgets().end(),
+                              [](const wgt::parse::AppWidget& candidate) {
+        return candidate.id == "aaaaaaa201.dbox2.second";
+      });
+  ASSERT_NE(result1, data->app_widgets().end());
+  ASSERT_NE(result2, data->app_widgets().end());
+
+  const wgt::parse::AppWidget& app_widget1 = *result1;
+  ASSERT_EQ(app_widget1.primary, true);
+
+  const wgt::parse::AppWidget& app_widget2 = *result2;
+  ASSERT_EQ(app_widget2.primary, true);
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_auto_launch_not_bool) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_content_box_size_invalid) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_content_box_size_none) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest,
+       dbox1_app_widget_box_content_box_size_use_decoration_invalid) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest,
+       dbox1_app_widget_box_content_mouse_event_not_bool) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_content_none) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_content_pd_height_invalid) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_content_pd_height_ood) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_content_pd_src_none) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_content_pd_width_invalid) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_content_src_none) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest,
+       dbox1_app_widget_box_content_touch_effect_not_bool) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_content_two) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_icon_src_none) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_icon_two) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_box_label_none) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_id_invalid_1) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_id_invalid_2) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_id_none) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_primary_none) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_primary_not_bool) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_update_period_invalid) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+TEST_F(AppWidgetHandlerTest, dbox1_app_widget_update_period_ood) {
+  std::string error;
+  bf::path xml = kXmlDirectory / GetMyName() / "config.xml";
+  std::shared_ptr<Manifest> manifest(LoadManifest(xml.string(), &error));
+  ASSERT_FALSE(!manifest);
+  SetManifest(manifest);
+  ASSERT_FALSE(ParseAppManifest() && ValidateAppManifest());
+}
+
+}  // namespace parser
index 2b0eee1bee1513e5e1bb0299b6c53410642070e4..499eff593b018c7a009e10dd28c924902a781d48 100644 (file)
@@ -58,7 +58,7 @@ class ContentHandlerTest : public testing::Test {
   }
   void TearDown() override { parser_.reset(); }
   void SetManifest(std::shared_ptr<Manifest> manifest) {
-    parser_->manifest_ = manifest;
+    parser_->SetManifest(manifest);
   }
   bool ParseAppManifest() {
     std::string error;
index e791c30dfebca1bd75092ec25963f14f4b23b0f1..5bc7f4e6d65cb65eda134518d0f603c22ca5ec89 100644 (file)
@@ -58,7 +58,7 @@ class ServiceHandlerTest : public testing::Test {
   }
   void TearDown() override { parser_.reset(); }
   void SetManifest(std::shared_ptr<Manifest> manifest) {
-    parser_->manifest_ = manifest;
+    parser_->SetManifest(manifest);
   }
   bool ParseAppManifest() {
     std::string error;
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1/config.xml
new file mode 100644 (file)
index 0000000..1345024
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa100.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa100.dbox1" package="aaaaaaa100" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_auto_launch_not_bool/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_auto_launch_not_bool/config.xml
new file mode 100644 (file)
index 0000000..d3ce80a
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa102.dbox1.default" primary="true" update-period="2000.0" auto-launch="ab12">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa102.dbox1" package="aaaaaaa102" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_box_size_invalid/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_box_size_invalid/config.xml
new file mode 100644 (file)
index 0000000..c5d3d1d
--- /dev/null
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa106.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:box-size>3x3</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa106.dbox1" package="aaaaaaa106" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_box_size_none/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_box_size_none/config.xml
new file mode 100644 (file)
index 0000000..8153a46
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa108.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa108.dbox1" package="aaaaaaa108" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_box_size_use_decoration_invalid/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_box_size_use_decoration_invalid/config.xml
new file mode 100644 (file)
index 0000000..0db7cee
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa110.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="ab12">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa110.dbox1" package="aaaaaaa110" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_mouse_event_not_bool/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_mouse_event_not_bool/config.xml
new file mode 100644 (file)
index 0000000..3db2289
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa111.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="ab12" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa111.dbox1" package="aaaaaaa111" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_none/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_none/config.xml
new file mode 100644 (file)
index 0000000..224f9d6
--- /dev/null
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa103.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa103.dbox1" package="aaaaaaa103" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_height_invalid/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_height_invalid/config.xml
new file mode 100644 (file)
index 0000000..f1124eb
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa112.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="abc"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa112.dbox1" package="aaaaaaa112" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_height_ood/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_height_ood/config.xml
new file mode 100644 (file)
index 0000000..5616cca
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa113.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="-500"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa113.dbox1" package="aaaaaaa113" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_src_none/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_src_none/config.xml
new file mode 100644 (file)
index 0000000..a204c27
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa114.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa114.dbox1" package="aaaaaaa114" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_width_invalid/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_pd_width_invalid/config.xml
new file mode 100644 (file)
index 0000000..ddaf2b4
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa115.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="abc" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa115.dbox1" package="aaaaaaa115" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_src_none/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_src_none/config.xml
new file mode 100644 (file)
index 0000000..47c0375
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa116.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa116.dbox1" package="aaaaaaa116" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_touch_effect_not_bool/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_touch_effect_not_bool/config.xml
new file mode 100644 (file)
index 0000000..74801fd
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa117.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="ab12">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa117.dbox1" package="aaaaaaa117" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_two/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_content_two/config.xml
new file mode 100644 (file)
index 0000000..713f59a
--- /dev/null
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa105.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+        <tizen:box-content src="box/index.html" mouse-event="false" touch-effect="true">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="true">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="730" height="300"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa105.dbox1" package="aaaaaaa105" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_icon_none/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_icon_none/config.xml
new file mode 100644 (file)
index 0000000..121e8cd
--- /dev/null
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa133.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa133.dbox1" package="aaaaaaa133" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_icon_src_none/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_icon_src_none/config.xml
new file mode 100644 (file)
index 0000000..d1ff0ba
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa120.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa120.dbox1" package="aaaaaaa120" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_icon_two/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_icon_two/config.xml
new file mode 100644 (file)
index 0000000..b13a850
--- /dev/null
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa119.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa119.dbox1" package="aaaaaaa119" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_label_none/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_box_label_none/config.xml
new file mode 100644 (file)
index 0000000..d789524
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa121.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa121.dbox1" package="aaaaaaa121" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_id_invalid_1/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_id_invalid_1/config.xml
new file mode 100644 (file)
index 0000000..1118bc7
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="9999999123.dbox1.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa123.dbox1" package="aaaaaaa123" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_id_invalid_2/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_id_invalid_2/config.xml
new file mode 100644 (file)
index 0000000..edb9961
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa124.dbox1.the-default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa124.dbox1" package="aaaaaaa124" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_id_none/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_id_none/config.xml
new file mode 100644 (file)
index 0000000..1475f83
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa125.dbox1" package="aaaaaaa125" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_primary_none/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_primary_none/config.xml
new file mode 100644 (file)
index 0000000..c4b8cac
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa128.dbox1.default" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa128.dbox1" package="aaaaaaa128" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_primary_not_bool/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_primary_not_bool/config.xml
new file mode 100644 (file)
index 0000000..90df03d
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa129.dbox1.default" primary="ab12" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa129.dbox1" package="aaaaaaa129" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_update_period_invalid/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_update_period_invalid/config.xml
new file mode 100644 (file)
index 0000000..b40e72e
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa130.dbox1.default" primary="true" update-period="ab12" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa130.dbox1" package="aaaaaaa130" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_update_period_ood/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox1_app_widget_update_period_ood/config.xml
new file mode 100644 (file)
index 0000000..4267dae
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox1" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa131.dbox1.default" primary="true" update-period="1000.0" auto-launch="true">
+        <tizen:box-label>dbox1 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox1 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox1 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa131.dbox1" package="aaaaaaa131" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox1</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox2/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox2/config.xml
new file mode 100644 (file)
index 0000000..9c18e5d
--- /dev/null
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox2" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa200.dbox2.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox2 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox2 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox2 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:app-widget id="aaaaaaa200.dbox2.second" primary="false" update-period="4000.0" auto-launch="false">
+        <tizen:box-label>dbox2 default label 2</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox2 pl label 2</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox2 en label 2</tizen:box-label>
+        <tizen:box-icon src="icon2.png"/>
+        <tizen:box-content src="box/index2.html" mouse-event="false" touch-effect="true">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon2.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="true">2x2</tizen:box-size>
+            <tizen:pd src="pd/index2.html" width="740" height="300"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa200.dbox2" package="aaaaaaa200" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox2</name>
+</widget>
diff --git a/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox2_app_widget_primary_two_true/config.xml b/src/unit_tests/test_samples/xmls/AppWidgetHandlerTest.dbox2_app_widget_primary_two_true/config.xml
new file mode 100644 (file)
index 0000000..cce08fd
--- /dev/null
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/dbox2" version="1.0.0">
+    <tizen:app-widget id="aaaaaaa201.dbox2.default" primary="true" update-period="2000.0" auto-launch="true">
+        <tizen:box-label>dbox2 default label</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox2 pl label</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox2 en label</tizen:box-label>
+        <tizen:box-icon src="icon.png"/>
+        <tizen:box-content src="box/index.html" mouse-event="true" touch-effect="false">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="false">2x2</tizen:box-size>
+            <tizen:pd src="pd/index.html" width="720" height="200"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:app-widget id="aaaaaaa201.dbox2.second" primary="true" update-period="4000.0" auto-launch="false">
+        <tizen:box-label>dbox2 default label 2</tizen:box-label>
+        <tizen:box-label xml:lang="pl">dbox2 pl label 2</tizen:box-label>
+        <tizen:box-label xml:lang="en">dbox2 en label 2</tizen:box-label>
+        <tizen:box-icon src="icon2.png"/>
+        <tizen:box-content src="box/index2.html" mouse-event="false" touch-effect="true">
+            <tizen:box-size>1x1</tizen:box-size>
+            <tizen:box-size preview="icon2.png">2x1</tizen:box-size>
+            <tizen:box-size use-decoration="true">2x2</tizen:box-size>
+            <tizen:pd src="pd/index2.html" width="740" height="300"/>
+        </tizen:box-content>
+    </tizen:app-widget>
+    <tizen:application id="aaaaaaa201.dbox2" package="aaaaaaa201" required_version="2.2"/>
+    <feature name="http://tizen.org/feature/screen.size.normal.720.1280"/>
+    <icon src="icon.png"/>
+    <name>dbox2</name>
+</widget>