From 3d6aee079ef7cb44a7c5a7ea4f13f67a6850128a Mon Sep 17 00:00:00 2001 From: "Paul \"LeoNerd\" Evans" Date: Thu, 11 Sep 2014 17:44:00 +0100 Subject: Unit-test for RegistrationStore using SQLiteMemoryDbPool --- tests/storage/test_registration.py | 69 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 tests/storage/test_registration.py (limited to 'tests/storage/test_registration.py') diff --git a/tests/storage/test_registration.py b/tests/storage/test_registration.py new file mode 100644 index 0000000000..5e11ce3511 --- /dev/null +++ b/tests/storage/test_registration.py @@ -0,0 +1,69 @@ +# -*- coding: utf-8 -*- +# Copyright 2014 OpenMarket Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +from twisted.trial import unittest +from twisted.internet import defer + +from synapse.server import HomeServer +from synapse.storage.registration import RegistrationStore + +from tests.utils import SQLiteMemoryDbPool + + +class RegistrationStoreTestCase(unittest.TestCase): + + @defer.inlineCallbacks + def setUp(self): + db_pool = SQLiteMemoryDbPool() + yield db_pool.prepare() + + hs = HomeServer("test", + db_pool=db_pool, + ) + + self.store = RegistrationStore(hs) + + self.user_id = "@my-user:test" + self.tokens = ["AbCdEfGhIjKlMnOpQrStUvWxYz", + "BcDeFgHiJkLmNoPqRsTuVwXyZa"] + self.pwhash = "{xx1}123456789" + + @defer.inlineCallbacks + def test_register(self): + yield self.store.register(self.user_id, self.tokens[0], self.pwhash) + + self.assertEquals( + # TODO(paul): Surely this field should be 'user_id', not 'name' + # Additionally surely it shouldn't come in a 1-element list + [{"name": self.user_id, "password_hash": self.pwhash}], + (yield self.store.get_user_by_id(self.user_id)) + ) + + self.assertEquals( + self.user_id, + (yield self.store.get_user_by_token(self.tokens[0])) + ) + + @defer.inlineCallbacks + def test_add_tokens(self): + yield self.store.register(self.user_id, self.tokens[0], self.pwhash) + yield self.store.add_access_token_to_user(self.user_id, self.tokens[1]) + + self.assertEquals( + self.user_id, + (yield self.store.get_user_by_token(self.tokens[1])) + ) + -- cgit 1.5.1 From ae7dfeb5b6e8ee491f137d9a706cc83b9294b86f Mon Sep 17 00:00:00 2001 From: "Paul \"LeoNerd\" Evans" Date: Mon, 15 Sep 2014 14:19:16 +0100 Subject: Use new 'tests.unittest' in new storage level tests --- tests/storage/test_directory.py | 2 +- tests/storage/test_presence.py | 2 +- tests/storage/test_profile.py | 2 +- tests/storage/test_registration.py | 2 +- tests/storage/test_roommember.py | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) (limited to 'tests/storage/test_registration.py') diff --git a/tests/storage/test_directory.py b/tests/storage/test_directory.py index c4c321dda6..9a80bf6c04 100644 --- a/tests/storage/test_directory.py +++ b/tests/storage/test_directory.py @@ -14,7 +14,7 @@ # limitations under the License. -from twisted.trial import unittest +from tests import unittest from twisted.internet import defer from synapse.server import HomeServer diff --git a/tests/storage/test_presence.py b/tests/storage/test_presence.py index f3fab4fe79..9655d3cf42 100644 --- a/tests/storage/test_presence.py +++ b/tests/storage/test_presence.py @@ -14,7 +14,7 @@ # limitations under the License. -from twisted.trial import unittest +from tests import unittest from twisted.internet import defer from synapse.server import HomeServer diff --git a/tests/storage/test_profile.py b/tests/storage/test_profile.py index 1855278044..21df2babdc 100644 --- a/tests/storage/test_profile.py +++ b/tests/storage/test_profile.py @@ -14,7 +14,7 @@ # limitations under the License. -from twisted.trial import unittest +from tests import unittest from twisted.internet import defer from synapse.server import HomeServer diff --git a/tests/storage/test_registration.py b/tests/storage/test_registration.py index 5e11ce3511..91e221d53e 100644 --- a/tests/storage/test_registration.py +++ b/tests/storage/test_registration.py @@ -14,7 +14,7 @@ # limitations under the License. -from twisted.trial import unittest +from tests import unittest from twisted.internet import defer from synapse.server import HomeServer diff --git a/tests/storage/test_roommember.py b/tests/storage/test_roommember.py index 5a6e93d4d1..dd18291b4c 100644 --- a/tests/storage/test_roommember.py +++ b/tests/storage/test_roommember.py @@ -14,7 +14,7 @@ # limitations under the License. -from twisted.trial import unittest +from tests import unittest from twisted.internet import defer from synapse.server import HomeServer -- cgit 1.5.1