tests: datastore backends are happy to delete leafs as well

Change-Id: Ibfd6279e21aae2f6a7f6da173dd9d03f48711a63
diff --git a/tests/datastore_access.cpp b/tests/datastore_access.cpp
index 2837c84..e9490ba 100644
--- a/tests/datastore_access.cpp
+++ b/tests/datastore_access.cpp
@@ -146,6 +146,21 @@
         datastore.commitChanges();
     }
 
+    SECTION("set a string, then delete it")
+    {
+        REQUIRE_CALL(mock, write("/example-schema:leafString", std::nullopt, "blah"s));
+        datastore.setLeaf("/example-schema:leafString", "blah"s);
+        datastore.commitChanges();
+        DatastoreAccess::Tree expected{{"/example-schema:leafString", "blah"s}};
+        REQUIRE(datastore.getItems("/example-schema:leafString") == expected);
+
+        REQUIRE_CALL(mock, write("/example-schema:leafString", "blah"s, std::nullopt));
+        datastore.deleteItem("/example-schema:leafString");
+        datastore.commitChanges();
+        expected.clear();
+        REQUIRE(datastore.getItems("/example-schema:leafString") == expected);
+    }
+
     SECTION("set a non-existing leaf")
     {
         catching<OnInvalidSchemaPathCreate>([&]{