summary refs log tree commit diff
path: root/tests
diff options
context:
space:
mode:
authorNeil Johnson <neil@matrix.org>2018-07-31 16:36:24 +0100
committerNeil Johnson <neil@matrix.org>2018-07-31 16:36:24 +0100
commit6ef983ce5cc0a1cd7323ac82c8eed41d72ff3a99 (patch)
treead017979b62ecbed42837f4af79cbf18e92f4f5f /tests
parentMerge pull request #3629 from ptman/patch-1 (diff)
downloadsynapse-6ef983ce5cc0a1cd7323ac82c8eed41d72ff3a99.tar.xz
api into monthly_active_users table
Diffstat (limited to 'tests')
-rw-r--r--tests/storage/test_monthly_active_users.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/tests/storage/test_monthly_active_users.py b/tests/storage/test_monthly_active_users.py
new file mode 100644
index 0000000000..9b1ffc6369
--- /dev/null
+++ b/tests/storage/test_monthly_active_users.py
@@ -0,0 +1,42 @@
+from twisted.internet import defer
+
+from synapse.storage.monthly_active_users import MonthlyActiveUsersStore
+
+import tests.unittest
+import tests.utils
+from tests.utils import setup_test_homeserver
+
+
+class MonthlyActiveUsersTestCase(tests.unittest.TestCase):
+    def __init__(self, *args, **kwargs):
+        super(MonthlyActiveUsersTestCase, self).__init__(*args, **kwargs)
+        self.mau = None
+
+    @defer.inlineCallbacks
+    def setUp(self):
+        hs = yield setup_test_homeserver()
+        self.mau = MonthlyActiveUsersStore(hs)
+
+    @defer.inlineCallbacks
+    def test_can_insert_and_count_mau(self):
+        count = yield self.mau.get_monthly_active_count()
+        self.assertEqual(0, count)
+
+        yield self.mau.upsert_monthly_active_user("@user:server")
+        count = yield self.mau.get_monthly_active_count()
+
+        self.assertEqual(1, count)
+
+    @defer.inlineCallbacks
+    def test_is_user_monthly_active(self):
+        user_id1 = "@user1:server"
+        user_id2 = "@user2:server"
+        user_id3 = "@user3:server"
+        result = yield self.mau.is_user_monthly_active(user_id1)
+        self.assertFalse(result)
+        yield self.mau.upsert_monthly_active_user(user_id1)
+        yield self.mau.upsert_monthly_active_user(user_id2)
+        result = yield self.mau.is_user_monthly_active(user_id1)
+        self.assertTrue(result)
+        result = yield self.mau.is_user_monthly_active(user_id3)
+        self.assertFalse(result)