diff options
author | Eric Avdey <eiri@eiri.ca> | 2018-01-04 12:05:36 -0400 |
---|---|---|
committer | Eric Avdey <eiri@eiri.ca> | 2018-01-04 12:05:36 -0400 |
commit | 0dfbad5c9e3f85ce83166229f5c646986b8bc42f (patch) | |
tree | eaa7f1ed8dcdc83a4ccf9a9a9c48c3801f614292 | |
parent | 3c90cc3aa72090ad6db8675167a1af17ed5182f4 (diff) | |
download | couchdb-0dfbad5c9e3f85ce83166229f5c646986b8bc42f.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]) |