diff --git a/firebase_admin/db.py b/firebase_admin/db.py index 8c05e3a1c..b46710ce9 100644 --- a/firebase_admin/db.py +++ b/firebase_admin/db.py @@ -147,7 +147,7 @@ def get(self, etag=False): else: return self._client.body('get', self._add_suffix()) - def _get_if_changed(self, etag): + def get_if_changed(self, etag): """Gets data in this location only if the specified ETag does not match. Args: diff --git a/integration/test_db.py b/integration/test_db.py index cf1fe5913..6ddc4439a 100644 --- a/integration/test_db.py +++ b/integration/test_db.py @@ -90,13 +90,11 @@ def test_get_value_and_etag(self, testref, testdata): assert isinstance(etag, six.string_types) def test_get_if_changed(self, testref, testdata): - success, data, etag = testref._get_if_changed('wrong_etag') + success, data, etag = testref.get_if_changed('wrong_etag') assert success is True assert data == testdata assert isinstance(etag, six.string_types) - # TODO: Server API seems to be misbehaving in the following case. - # TODO: Re-enable once fixed. - #assert testref.get_if_changed(etag) == (False, None, None) + assert testref.get_if_changed(etag) == (False, None, None) def test_get_child_value(self, testref, testdata): child = testref.child('dinosaurs') diff --git a/tests/test_db.py b/tests/test_db.py index a5d76b0d2..5449627c9 100644 --- a/tests/test_db.py +++ b/tests/test_db.py @@ -160,13 +160,13 @@ def test_get_if_changed(self, data): ref = db.reference('/test') recorder = self.instrument(ref, json.dumps(data)) - assert ref._get_if_changed('invalid-etag') == (True, data, MockAdapter.ETAG) + assert ref.get_if_changed('invalid-etag') == (True, data, MockAdapter.ETAG) assert len(recorder) == 1 assert recorder[0].method == 'GET' assert recorder[0].url == 'https://test.firebaseio.com/test.json' assert recorder[0].headers['if-none-match'] == 'invalid-etag' - assert ref._get_if_changed(MockAdapter.ETAG) == (False, None, None) + assert ref.get_if_changed(MockAdapter.ETAG) == (False, None, None) assert len(recorder) == 2 assert recorder[1].method == 'GET' assert recorder[1].url == 'https://test.firebaseio.com/test.json' @@ -176,7 +176,7 @@ def test_get_if_changed(self, data): def test_get_if_changed_invalid_etag(self, etag): ref = db.reference('/test') with pytest.raises(ValueError): - ref._get_if_changed(etag) + ref.get_if_changed(etag) @pytest.mark.parametrize('data', valid_values) def test_order_by_query(self, data):