ep_testsuite: Expand Delete-with-value test cases 10/76110/16
authorDave Rigby <daver@couchbase.com>
Thu, 30 Mar 2017 11:28:52 +0000 (12:28 +0100)
committerDave Rigby <daver@couchbase.com>
Fri, 7 Apr 2017 14:25:21 +0000 (14:25 +0000)
commit5a1762d4c78ffcef167401eeb4319b88efe86813
treee7616fd7f243c5b694bcedf62f923d0083745f06
parentee509d09f463405f668fecbb07f8b76f31d20edf
ep_testsuite: Expand Delete-with-value test cases

Expand the ep_testsuite tests for Deletes with a value. Ensure that
all possible state transitions (between Alive, Deleted-with-value &
Deleted-no-value) are handled.

Note that the Delete-with-value -> Delete-no-value transition cannot
be driven correctly from the engine API:-

a) Calling EvpDelete() will fail, as it requires the item is in the
   Alive state.

b) Calling EvpStore(<zero-length-item>, DocState:Deleted) will
   succeed, but results in a memory leak from couchstore when fetching
   the zero-length body. Note: this is a latent bug - see MB-23697.

As such this transition isn't currently handled.

Change-Id: I9ed79e5dd1bc0387fa39a84cd5574a38d696576a
Reviewed-on: http://review.couchbase.org/76110
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Jim Walker <jim@couchbase.com>
tests/ep_test_apis.cc
tests/ep_test_apis.h
tests/ep_testsuite_basic.cc