Add IsEmpty() method 27/236127/1
authorSangyoon Jang <jeremy.jang@samsung.com>
Mon, 15 Jun 2020 06:25:19 +0000 (15:25 +0900)
committerSangyoon Jang <jeremy.jang@samsung.com>
Mon, 15 Jun 2020 06:25:19 +0000 (15:25 +0900)
Change-Id: Id7a36a8f2f7ac5079c731ce8fb46ae5d7e2529b1
Signed-off-by: Sangyoon Jang <jeremy.jang@samsung.com>
include/bundle_cpp.h
src/bundle_cpp.cc
unit_tests/src/test_bundle.cc

index d95a241..bcab268 100644 (file)
@@ -192,6 +192,13 @@ class EXPORT_API Bundle final {
   Bundle& operator = (Bundle&& b) noexcept;
 
   /**
+   * @brief Check the bundle is empty or not.
+   * @since_tizen 6.0
+   * @return true if the bundle is empty
+   */
+  bool IsEmpty() const noexcept;
+
+  /**
    * @brief Gets keys in bundle object.
    * @since_tizen 5.5
    * @return A string array of object KeyInfo
index 2d3233a..6d1163c 100644 (file)
@@ -170,6 +170,10 @@ Bundle& Bundle::operator = (Bundle&& b) noexcept {
   return *this;
 }
 
+bool Bundle::IsEmpty() const noexcept {
+  return (bundle_get_count(impl_->handle_) == 0) ? true : false;
+}
+
 std::vector<Bundle::KeyInfo> Bundle::GetKeys() {
   std::vector<Bundle::KeyInfo> v;
 
index 0ac8827..c94b080 100644 (file)
@@ -154,3 +154,10 @@ TEST(Bundle, GetKeysMove) {
     EXPECT_EQ(copied.GetName(), name);
   }
 }
+
+TEST(Bundle, IsEmpty) {
+  Bundle bundle;
+  EXPECT_TRUE(bundle.IsEmpty());
+  bundle.Add("TestKey1", "TestVal");
+  EXPECT_FALSE(bundle.IsEmpty());
+}