diff options
author | Mark Haines <mjark@negativecurvature.net> | 2016-02-22 15:21:10 +0000 |
---|---|---|
committer | Mark Haines <mjark@negativecurvature.net> | 2016-02-22 15:21:10 +0000 |
commit | c43609e035527114f52cb3068b61a2bd936a797e (patch) | |
tree | 81ded4edb11fbc7177de6791dfa575f47888c916 | |
parent | Remove superfluous call to get_state_at when we already have an event for tha... (diff) | |
parent | Test Filter.filter_rooms (diff) | |
download | synapse-c43609e035527114f52cb3068b61a2bd936a797e.tar.xz |
Merge pull request #591 from matrix-org/markjh/coverage
Test Filter.filter_rooms
-rw-r--r-- | tests/api/test_filtering.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/api/test_filtering.py b/tests/api/test_filtering.py index 4297a89f85..dcb6c5bc31 100644 --- a/tests/api/test_filtering.py +++ b/tests/api/test_filtering.py @@ -456,6 +456,22 @@ class FilteringTestCase(unittest.TestCase): results = user_filter.filter_room_state(events) self.assertEquals([], results) + def test_filter_rooms(self): + definition = { + "rooms": ["!allowed:example.com", "!excluded:example.com"], + "not_rooms": ["!excluded:example.com"], + } + + room_ids = [ + "!allowed:example.com", # Allowed because in rooms and not in not_rooms. + "!excluded:example.com", # Disallowed because in not_rooms. + "!not_included:example.com", # Disallowed because not in rooms. + ] + + filtered_room_ids = list(Filter(definition).filter_rooms(room_ids)) + + self.assertEquals(filtered_room_ids, ["!allowed:example.com"]) + @defer.inlineCallbacks def test_add_filter(self): user_filter_json = { @@ -500,3 +516,5 @@ class FilteringTestCase(unittest.TestCase): ) self.assertEquals(filter.get_filter_json(), user_filter_json) + + self.assertRegexpMatches(repr(filter), r"<FilterCollection \{.*\}>") |