示例#1
0
    def test_is_stale__is_not_stale_after_update(self):
        data = user_settings.FirebaseData()
        data.last_updated_at = datetime.datetime.utcnow() - datetime.timedelta(
            hours=2)

        data.set('foo', 'bar')
        assert not data.is_stale()
示例#2
0
    def test_receive_event(self, mocker):
        data = user_settings.FirebaseData()
        listen_mock = mocker.MagicMock()

        def listener(*args, **kwargs):
            listen_mock(*args, **kwargs)

        blinker.signal('/foo/bar').connect(listener)

        data.set('/foo/bar', 2)
        listen_mock.assert_called_with(data, value=2)
示例#3
0
def test_FirebaseData_repr():
    data = user_settings.FirebaseData(a=1)
    data_id = id(data)
    data.last_updated_at = datetime.datetime(year=2017,
                                             month=9,
                                             day=2,
                                             hour=20,
                                             minute=2,
                                             second=59)
    result = str(data)
    assert result == ('FirebaseData('
                      'id={}, '
                      'last_updated_at=2017-09-02 20:02:59, '
                      'data={{\'a\': 1}}'
                      ')'.format(data_id))
示例#4
0
 def test_set_different_type_then_set_missing(self):
     data = user_settings.FirebaseData({'foo': 1})
     data.set('/foo/bar', 2)
     data.set('/foo/bar/baz', {'qux': 1})
     assert data == {'foo': {'bar': {'baz': {'qux': 1}}}}
示例#5
0
 def test_set_missing_then_set_existing(self):
     data = user_settings.FirebaseData()
     data.set('/foo', {'bar': 1})
     data.set('/foo/bar', 2)
     assert data == {'foo': {'bar': 2}}
示例#6
0
 def test_set_missing_then_set_different_type(self):
     data = user_settings.FirebaseData()
     data.set('/foo', 1)
     data.set('/foo/bar', 2)
     assert data == {'foo': {'bar': 2}}
示例#7
0
 def test_set_missing_child(self):
     data = user_settings.FirebaseData()
     data.set('/foo/bar', 1)
     assert data == {'foo': {'bar': 1}}
示例#8
0
 def test_set_existing_child(self):
     data = user_settings.FirebaseData({'foo': {'bar': 1}})
     data.set('/foo/bar', 2)
     assert data == {'foo': {'bar': 2}}
示例#9
0
 def test_merge_nested_child_overwrite(self):
     data = user_settings.FirebaseData({'foo': {'bar': 1}})
     data.merge('/', {'foo/bar/baz': 1})
     assert data == {'foo': {'bar': {'baz': 1}}}
示例#10
0
 def test_set_root(self):
     data = user_settings.FirebaseData()
     data.set('/', {'foo': 1})
     assert data == {'foo': 1}
示例#11
0
 def test_get_root(self):
     data = user_settings.FirebaseData()
     result = data.get('/')
     assert result == {}
示例#12
0
 def test_get_missing_key(self):
     data = user_settings.FirebaseData()
     result = data.get('/foo/bar')
     assert result == None
示例#13
0
    def test_is_stale__is_not_stale(self):
        data = user_settings.FirebaseData()

        assert not data.is_stale()
示例#14
0
    def test_is_stale__is_stale(self):
        data = user_settings.FirebaseData()
        data.last_updated_at = datetime.datetime.utcnow() - datetime.timedelta(
            hours=2)

        assert data.is_stale()
示例#15
0
    def test_last_updated_at__somehow_missing(self):
        data = user_settings.FirebaseData()
        data.last_updated_at = None

        assert data.is_stale()
示例#16
0
    def test_last_updated_at__set_on_init(self):
        data = user_settings.FirebaseData()

        assert isinstance(data.last_updated_at, datetime.datetime)
示例#17
0
 def test_merge_missing(self):
     data = user_settings.FirebaseData()
     data.merge('/foo', {'bar': 1})
     assert data == {'foo': {'bar': 1}}
示例#18
0
 def test_unset_root(self):
     data = user_settings.FirebaseData({'foo': {'bar': 1}})
     data.set('/', None)
     assert data == {}
示例#19
0
 def test_merge_root(self):
     data = user_settings.FirebaseData()
     data.merge('/', {'foo/bar': 1})
     assert data == {'foo': {'bar': 1}}
示例#20
0
 def test_unset_missing_child(self):
     data = user_settings.FirebaseData({'foo': {'bar': 1}})
     data.set('/foo/bar/baz', None)
     assert data == {'foo': {'bar': {}}}
示例#21
0
 def test_merge_simple_child(self):
     data = user_settings.FirebaseData({'foo': {'bar': 1}})
     data.merge('/foo', {'baz': 1})
     assert data == {'foo': {'bar': 1, 'baz': 1}}
示例#22
0
 def test_no_path(self):
     data = user_settings.FirebaseData()
     result = user_settings._get_path_list('')
     assert result == []
示例#23
0
 def test_relative_child_path(self):
     data = user_settings.FirebaseData()
     result = user_settings._get_path_list('foo/bar')
     assert result == ['foo', 'bar']
示例#24
0
 def test_get_different_type_key(self):
     data = user_settings.FirebaseData({'foo': 1})
     result = data.get('/foo/bar')
     assert result == None
示例#25
0
 def test_existing_key(self):
     data = user_settings.FirebaseData({'foo': {'bar': 1}})
     result = data.get('/foo/bar')
     assert result == 1