diff options
author | Eric Avdey <eiri@eiri.ca> | 2018-01-04 12:05:36 -0400 |
---|---|---|
committer | Eric Avdey <eiri@eiri.ca> | 2018-01-04 13:44:43 -0400 |
commit | 0414ef3e5d39de159cb6e985110773ea5522aea4 (patch) | |
tree | 5be8f959af353b2175c6080e8606c4e45cfff425 | |
parent | bc192d1e2849ce977de496601c763830a7449496 (diff) | |
download | couchdb-0414ef3e5d39de159cb6e985110773ea5522aea4.tar.gz |
Make sure mango tests's recreate fun creates db
Rapid same database deletion/creation is a known
antipattern prone to a race condition, especially
on slow VMs.
This fix modifies mango test's helper function
used for db recreation to ensure that we are actually
starting tests when a database created and empty.
-rw-r--r-- | src/mango/test/mango.py | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/mango/test/mango.py b/src/mango/test/mango.py index 560914b8c..ecf969e04 100644 --- a/src/mango/test/mango.py +++ b/src/mango/test/mango.py @@ -82,13 +82,15 @@ class Database(object): def recreate(self): r = self.sess.get(self.url) - db_info = r.json() - docs = db_info["doc_count"] + db_info["doc_del_count"] - if docs == 0: - # db never used - create unnecessary - return - self.delete() + if r.status_code == 200: + db_info = r.json() + docs = db_info["doc_count"] + db_info["doc_del_count"] + if docs == 0: + # db never used - create unnecessary + return + self.delete() self.create() + self.recreate() def save_doc(self, doc): self.save_docs([doc]) |