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()
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)
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))
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}}}}
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}}
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}}
def test_set_missing_child(self): data = user_settings.FirebaseData() data.set('/foo/bar', 1) assert data == {'foo': {'bar': 1}}
def test_set_existing_child(self): data = user_settings.FirebaseData({'foo': {'bar': 1}}) data.set('/foo/bar', 2) assert data == {'foo': {'bar': 2}}
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}}}
def test_set_root(self): data = user_settings.FirebaseData() data.set('/', {'foo': 1}) assert data == {'foo': 1}
def test_get_root(self): data = user_settings.FirebaseData() result = data.get('/') assert result == {}
def test_get_missing_key(self): data = user_settings.FirebaseData() result = data.get('/foo/bar') assert result == None
def test_is_stale__is_not_stale(self): data = user_settings.FirebaseData() assert not data.is_stale()
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()
def test_last_updated_at__somehow_missing(self): data = user_settings.FirebaseData() data.last_updated_at = None assert data.is_stale()
def test_last_updated_at__set_on_init(self): data = user_settings.FirebaseData() assert isinstance(data.last_updated_at, datetime.datetime)
def test_merge_missing(self): data = user_settings.FirebaseData() data.merge('/foo', {'bar': 1}) assert data == {'foo': {'bar': 1}}
def test_unset_root(self): data = user_settings.FirebaseData({'foo': {'bar': 1}}) data.set('/', None) assert data == {}
def test_merge_root(self): data = user_settings.FirebaseData() data.merge('/', {'foo/bar': 1}) assert data == {'foo': {'bar': 1}}
def test_unset_missing_child(self): data = user_settings.FirebaseData({'foo': {'bar': 1}}) data.set('/foo/bar/baz', None) assert data == {'foo': {'bar': {}}}
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}}
def test_no_path(self): data = user_settings.FirebaseData() result = user_settings._get_path_list('') assert result == []
def test_relative_child_path(self): data = user_settings.FirebaseData() result = user_settings._get_path_list('foo/bar') assert result == ['foo', 'bar']
def test_get_different_type_key(self): data = user_settings.FirebaseData({'foo': 1}) result = data.get('/foo/bar') assert result == None
def test_existing_key(self): data = user_settings.FirebaseData({'foo': {'bar': 1}}) result = data.get('/foo/bar') assert result == 1