You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pegasus.apache.org by GitBox <gi...@apache.org> on 2020/09/14 08:08:08 UTC

[GitHub] [incubator-pegasus] neverchanje commented on a change in pull request #598: refactor: use db_get to implement incr

neverchanje commented on a change in pull request #598:
URL: https://github.com/apache/incubator-pegasus/pull/598#discussion_r487726578



##########
File path: src/server/test/pegasus_write_service_impl_test.cpp
##########
@@ -140,5 +156,66 @@ TEST_F(pegasus_write_service_impl_test, verify_timetag_compatible_with_version_0
     dsn::fail::teardown();
 }
 
+TEST_F(pegasus_write_service_impl_test, incr_on_absent_record)
+{
+    dsn::apps::incr_request req;
+    req.increment = 100;
+    pegasus::pegasus_generate_key(
+        req.key, dsn::string_view("hash_key"), dsn::string_view("sort_key"));
+
+    db_get_context get_ctx;
+    db_get(req.key, &get_ctx);
+    ASSERT_FALSE(get_ctx.found);
+
+    dsn::apps::incr_response resp;
+    _write_impl->incr(0, req, resp);
+    ASSERT_EQ(resp.new_value, 100);
+
+    db_get(req.key, &get_ctx);
+    ASSERT_TRUE(get_ctx.found);
+}
+
+TEST_F(pegasus_write_service_impl_test, negative_incr_and_zero_incr)
+{
+    dsn::apps::incr_request req;
+    req.increment = -100;

Review comment:
       Take a look at the new code. I've refactored much. I think it is compacted enough.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@pegasus.apache.org
For additional commands, e-mail: dev-help@pegasus.apache.org