-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest_state_util.py
More file actions
41 lines (28 loc) · 1.14 KB
/
test_state_util.py
File metadata and controls
41 lines (28 loc) · 1.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
"""Tests for state objects.
License: BSD
"""
import unittest
import state_util
class StateUtilTest(unittest.TestCase):
def test_toggle(self):
state = state_util.VizState()
self.assertIsNone(state.get_category_selected())
state.toggle_category_selected('test')
self.assertEqual(state.get_category_selected(), 'test')
state.toggle_category_selected('test')
self.assertIsNone(state.get_category_selected())
def test_get_query(self):
state = state_util.VizState()
query = state.get_query()
self.assertIsNone(query.get_keyword())
state.toggle_keyword_selected('test')
query = state.get_query()
self.assertEqual(query.get_keyword(), 'test')
def test_serialize_equal(self):
state_1 = state_util.VizState()
state_2 = state_util.VizState()
self.assertEqual(state_1.serialize(), state_2.serialize())
state_1.toggle_category_selected('test')
self.assertNotEqual(state_1.serialize(), state_2.serialize())
state_2.toggle_category_selected('test')
self.assertEqual(state_1.serialize(), state_2.serialize())