From f466919ec29fee46b1dbbb30d241d80b2334cdfe Mon Sep 17 00:00:00 2001
From: chenguoping <chenguopingdota@163.com>
Date: Wed, 17 Jun 2020 15:07:25 +0800
Subject: [PATCH] change test cases

---
 test/src/unit-element_access2.cpp | 41 ++-----------------------------
 1 file changed, 2 insertions(+), 39 deletions(-)

diff --git a/test/src/unit-element_access2.cpp b/test/src/unit-element_access2.cpp
index 6df0ca59..d2a19108 100644
--- a/test/src/unit-element_access2.cpp
+++ b/test/src/unit-element_access2.cpp
@@ -148,45 +148,6 @@ TEST_CASE("element access 2")
 
         SECTION("access specified element with default value")
         {
-            SECTION("move semantics")
-            {
-                SECTION("json is rvalue")
-                {
-                    json j = {{"x", "123"}};
-                    std::string defval = "default";
-                    auto val = std::move(j).value("x", defval);
-
-                    CHECK(j["x"] == "");
-                    CHECK(defval == "default");
-                    CHECK(val == "123");
-                }
-
-                SECTION("default is rvalue")
-                {
-                    json j = {{"x", "123"}};
-                    std::string defval = "default";
-                    auto val = std::move(j).value("y", std::move(defval));
-
-                    CHECK(j["x"] == "123");
-                    CHECK(defval == "");
-                    CHECK(val == "default");
-                }
-
-                SECTION("access on non-object value")
-                {
-                    json j_nonobject(json::value_t::array);
-                    const json j_nonobject_const(j_nonobject);
-                    std::string defval = "default";
-
-                    CHECK_THROWS_AS(std::move(j_nonobject).value("foo", defval), json::type_error&);
-                    CHECK_THROWS_AS(std::move(j_nonobject_const).value("foo", defval), json::type_error&);
-                    CHECK_THROWS_WITH(std::move(j_nonobject).value("foo", defval),
-                                      "[json.exception.type_error.306] cannot use value() with array");
-                    CHECK_THROWS_WITH(std::move(j_nonobject_const).value("foo", defval),
-                                      "[json.exception.type_error.306] cannot use value() with array");
-                }
-            }
-
             SECTION("given a key")
             {
                 SECTION("access existing value")
@@ -226,6 +187,7 @@ TEST_CASE("element access 2")
                     CHECK(j.value("_", 12.34) == Approx(12.34));
                     CHECK(j.value("_", json({{"foo", "bar"}})) == json({{"foo", "bar"}}));
                     CHECK(j.value("_", json({10, 100})) == json({10, 100}));
+                    CHECK(j.value("_", std::move("default_value")) == "default_value");
 
                     CHECK(j_const.value("_", 2) == 2);
                     CHECK(j_const.value("_", 2u) == 2u);
@@ -234,6 +196,7 @@ TEST_CASE("element access 2")
                     CHECK(j_const.value("_", 12.34) == Approx(12.34));
                     CHECK(j_const.value("_", json({{"foo", "bar"}})) == json({{"foo", "bar"}}));
                     CHECK(j_const.value("_", json({10, 100})) == json({10, 100}));
+                    CHECK(j_const.value("_", std::move("default_value")) == "default_value");
                 }
 
                 SECTION("access on non-object type")