4pVKqLvWQEl7PJIZ9EXDMe changeset

Changeset383635633832 (b)
ParentNone (a)
ab
0+diff --git a/share/www/script/test/purge.js b/share/www/script/test/purge.js
0+index f8f4513..2968913 100644
0+--- a/share/www/script/test/purge.js
0++++ b/share/www/script/test/purge.js
0+@@ -110,4 +110,36 @@ couchTests.purge = function(debug) {
0+     T(rows[(2*(i-4))+1].key == i+1);
0+   }
0+   T(db.view("test/single_doc").total_rows == 0);
0++
0++  // COUCHDB-1065
0++  var dbA = new CouchDB("test_suite_db_a");
0++  var dbB = new CouchDB("test_suite_db_b");
0++  dbA.deleteDb();
0++  dbA.createDb();
0++  dbB.deleteDb();
0++  dbB.createDb();
0++  var docA = {_id:"test", a:1};
0++  var docB = {_id:"test", a:2};
0++  dbA.save(docA);
0++  dbB.save(docB);
0++  CouchDB.replicate(dbA.name, dbB.name);
0++  var xhr = CouchDB.request("POST", "/" + dbB.name + "/_purge", {
0++    body: JSON.stringify({"test":[docA._rev]})
0++  });
0++  TEquals(200, xhr.status, "single rev purge after replication succeeds");
0++
0++  var xhr = CouchDB.request("GET", "/" + dbB.name + "/test?rev=" + docA._rev);
0++  TEquals(404, xhr.status, "single rev purge removes revision");
0++
0++  var xhr = CouchDB.request("POST", "/" + dbB.name + "/_purge", {
0++    body: JSON.stringify({"test":[docB._rev]})
0++  });
0++  TEquals(200, xhr.status, "single rev purge after replication succeeds");
0++  var xhr = CouchDB.request("GET", "/" + dbB.name + "/test?rev=" + docB._rev);
0++  TEquals(404, xhr.status, "single rev purge removes revision");
0++
0++  var xhr = CouchDB.request("POST", "/" + dbB.name + "/_purge", {
0++    body: JSON.stringify({"test":[docA._rev, docB._rev]})
0++  });
0++  TEquals(200, xhr.status, "all rev purge after replication succeeds");
0+ };
...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
--- Revision None
+++ Revision 383635633832
@@ -0,0 +1,41 @@
+diff --git a/share/www/script/test/purge.js b/share/www/script/test/purge.js
+index f8f4513..2968913 100644
+--- a/share/www/script/test/purge.js
++++ b/share/www/script/test/purge.js
+@@ -110,4 +110,36 @@ couchTests.purge = function(debug) {
+ T(rows[(2*(i-4))+1].key == i+1);
+ }
+ T(db.view("test/single_doc").total_rows == 0);
++
++ // COUCHDB-1065
++ var dbA = new CouchDB("test_suite_db_a");
++ var dbB = new CouchDB("test_suite_db_b");
++ dbA.deleteDb();
++ dbA.createDb();
++ dbB.deleteDb();
++ dbB.createDb();
++ var docA = {_id:"test", a:1};
++ var docB = {_id:"test", a:2};
++ dbA.save(docA);
++ dbB.save(docB);
++ CouchDB.replicate(dbA.name, dbB.name);
++ var xhr = CouchDB.request("POST", "/" + dbB.name + "/_purge", {
++ body: JSON.stringify({"test":[docA._rev]})
++ });
++ TEquals(200, xhr.status, "single rev purge after replication succeeds");
++
++ var xhr = CouchDB.request("GET", "/" + dbB.name + "/test?rev=" + docA._rev);
++ TEquals(404, xhr.status, "single rev purge removes revision");
++
++ var xhr = CouchDB.request("POST", "/" + dbB.name + "/_purge", {
++ body: JSON.stringify({"test":[docB._rev]})
++ });
++ TEquals(200, xhr.status, "single rev purge after replication succeeds");
++ var xhr = CouchDB.request("GET", "/" + dbB.name + "/test?rev=" + docB._rev);
++ TEquals(404, xhr.status, "single rev purge removes revision");
++
++ var xhr = CouchDB.request("POST", "/" + dbB.name + "/_purge", {
++ body: JSON.stringify({"test":[docA._rev, docB._rev]})
++ });
++ TEquals(200, xhr.status, "all rev purge after replication succeeds");
+ };