summaryrefslogtreecommitdiff
path: root/testing/tests/couch
diff options
context:
space:
mode:
authorVictor Shyba <victor1984@riseup.net>2016-10-28 17:42:26 -0300
committerdrebs <drebs@leap.se>2016-12-12 09:12:00 -0200
commita45084e4beb3fa16962735d7cebfa9fdac73dc6c (patch)
tree970451b6e92e696ee134af858a434d19e42862bf /testing/tests/couch
parent2505f61f7374cd0afeb9392c03589607d7b63b64 (diff)
[tests] fall back to TestCase classes
This test was using pytest, but it was making other trial based tests fail. I couldn't figure out why, but falling back to TestCase solved it.
Diffstat (limited to 'testing/tests/couch')
-rw-r--r--testing/tests/couch/conftest.py31
-rw-r--r--testing/tests/couch/test_state.py33
2 files changed, 20 insertions, 44 deletions
diff --git a/testing/tests/couch/conftest.py b/testing/tests/couch/conftest.py
deleted file mode 100644
index 1074f091..00000000
--- a/testing/tests/couch/conftest.py
+++ /dev/null
@@ -1,31 +0,0 @@
-import couchdb
-import pytest
-import random
-import string
-
-
-@pytest.fixture
-def random_name():
- return 'user-' + ''.join(
- random.choice(
- string.ascii_lowercase) for _ in range(10))
-
-
-class RandomDatabase(object):
-
- def __init__(self, couch_url, name):
- self.couch_url = couch_url
- self.name = name
- self.server = couchdb.client.Server(couch_url)
- self.database = self.server.create(name)
-
- def teardown(self):
- self.server.delete(self.name)
-
-
-@pytest.fixture
-def db(random_name, request):
- couch_url = request.config.getoption('--couch-url')
- db = RandomDatabase(couch_url, random_name)
- request.addfinalizer(db.teardown)
- return db
diff --git a/testing/tests/couch/test_state.py b/testing/tests/couch/test_state.py
index e293b5b8..e5ac3704 100644
--- a/testing/tests/couch/test_state.py
+++ b/testing/tests/couch/test_state.py
@@ -1,25 +1,32 @@
import pytest
-
from leap.soledad.common.couch import CONFIG_DOC_ID
from leap.soledad.common.couch import SCHEMA_VERSION
from leap.soledad.common.couch import SCHEMA_VERSION_KEY
from leap.soledad.common.couch.state import CouchServerState
+from uuid import uuid4
from leap.soledad.common.errors import WrongCouchSchemaVersionError
from leap.soledad.common.errors import MissingCouchConfigDocumentError
+from test_soledad.util import CouchDBTestCase
+
+class CouchDesignDocsTests(CouchDBTestCase):
-def test_wrong_couch_version_raises(db):
- wrong_schema_version = SCHEMA_VERSION + 1
- db.database.create(
- {'_id': CONFIG_DOC_ID, SCHEMA_VERSION_KEY: wrong_schema_version})
- with pytest.raises(WrongCouchSchemaVersionError):
- CouchServerState(db.couch_url, create_cmd='/bin/echo',
- check_schema_versions=True)
+ def setUp(self):
+ CouchDBTestCase.setUp(self)
+ self.db = self.couch_server.create('user-' + uuid4().hex)
+ self.addCleanup(self.delete_db, self.db.name)
+ def test_wrong_couch_version_raises(self):
+ wrong_schema_version = SCHEMA_VERSION + 1
+ self.db.create(
+ {'_id': CONFIG_DOC_ID, SCHEMA_VERSION_KEY: wrong_schema_version})
+ with pytest.raises(WrongCouchSchemaVersionError):
+ CouchServerState(self.couch_url, create_cmd='/bin/echo',
+ check_schema_versions=True)
-def test_missing_config_doc_raises(db):
- db.database.create({})
- with pytest.raises(MissingCouchConfigDocumentError):
- CouchServerState(db.couch_url, create_cmd='/bin/echo',
- check_schema_versions=True)
+ def test_missing_config_doc_raises(self):
+ self.db.create({})
+ with pytest.raises(MissingCouchConfigDocumentError):
+ CouchServerState(self.couch_url, create_cmd='/bin/echo',
+ check_schema_versions=True)