summary refs log tree commit diff
path: root/tests/rest
diff options
context:
space:
mode:
authorPaul "LeoNerd" Evans <paul@matrix.org>2015-01-27 13:09:57 +0000
committerPaul "LeoNerd" Evans <paul@matrix.org>2015-01-27 13:09:57 +0000
commit57d2bfca3fc52d9e7fc80577854333b482eeae02 (patch)
treeef9218bd0647e0b66d72a1bbd2342cee4904e484 /tests/rest
parentMerge pull request #34 from matrix-org/remove_serialize_event_from_hs (diff)
downloadsynapse-57d2bfca3fc52d9e7fc80577854333b482eeae02.tar.xz
Initial cut of a shared base class for REST unit tests
Diffstat (limited to 'tests/rest')
-rw-r--r--tests/rest/client/v2_alpha/__init__.py45
1 files changed, 45 insertions, 0 deletions
diff --git a/tests/rest/client/v2_alpha/__init__.py b/tests/rest/client/v2_alpha/__init__.py
index 803f97ea4f..f59745e13c 100644
--- a/tests/rest/client/v2_alpha/__init__.py
+++ b/tests/rest/client/v2_alpha/__init__.py
@@ -13,3 +13,48 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+from tests import unittest
+
+from mock import Mock
+
+from ....utils import MockHttpResource, MockKey
+
+from synapse.server import HomeServer
+from synapse.types import UserID
+
+
+PATH_PREFIX = "/_matrix/client/v2_alpha"
+
+
+class V2AlphaRestTestCase(unittest.TestCase):
+    # Consumer must define
+    #   USER_ID = <some string>
+    #   TO_REGISTER = [<list of REST servlets to register>]
+
+    def setUp(self):
+        self.mock_resource = MockHttpResource(prefix=PATH_PREFIX)
+
+        mock_config = Mock()
+        mock_config.signing_key = [MockKey()]
+
+        hs = HomeServer("test",
+            db_pool=None,
+            datastore=Mock(spec=[
+                "insert_client_ip",
+            ]),
+            http_client=None,
+            resource_for_client=self.mock_resource,
+            resource_for_federation=self.mock_resource,
+            config=mock_config,
+        )
+
+        def _get_user_by_token(token=None):
+            return {
+                "user": UserID.from_string(self.USER_ID),
+                "admin": False,
+                "device_id": None,
+            }
+        hs.get_auth().get_user_by_token = _get_user_by_token
+
+        for r in self.TO_REGISTER:
+            r.register_servlets(hs, self.mock_resource)