Skip to content

Commit 3d2699e

Browse files
committed
1 parent a14a936 commit 3d2699e

2 files changed

Lines changed: 34 additions & 19 deletions

File tree

gcloud/datastore/dataset.py

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -87,17 +87,12 @@ def transaction(self):
8787
return Transaction(dataset_id=self.dataset_id,
8888
connection=self.connection)
8989

90-
def query(self,
91-
kind=None,
92-
namespace=None,
93-
ancestor=None,
94-
filters=(),
95-
projection=(),
96-
order=(),
97-
group_by=()):
90+
def query(self, **kwargs):
9891
"""Proxy to :func:`gcloud.datastore.query.Query`.
9992
10093
Passes our ``dataset_id``.
10194
"""
102-
return Query(self.dataset_id, kind, namespace, ancestor, filters,
103-
projection, order, group_by)
95+
if 'dataset_id' in kwargs:
96+
raise TypeError('Cannot pass dataset_id')
97+
kwargs['dataset_id'] = self.dataset_id
98+
return Query(**kwargs)

gcloud/datastore/test_dataset.py

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,12 @@ def test_transaction_w_connection(self):
232232
self.assertEqual(xact.kwargs,
233233
{'dataset_id': self.DATASET_ID, 'connection': conn})
234234

235+
def test_query_w_dataset_id(self):
236+
KIND = 'KIND'
237+
dataset = self._makeOne()
238+
self.assertRaises(TypeError,
239+
dataset.query, kind=KIND, dataset_id=self.DATASET_ID)
240+
235241
def test_query_w_defaults(self):
236242
from gcloud.datastore import dataset as MUT
237243
from gcloud._testing import _Monkey
@@ -241,9 +247,8 @@ def test_query_w_defaults(self):
241247
query = dataset.query()
242248

243249
self.assertTrue(isinstance(query, _Dummy))
244-
args = (self.DATASET_ID, None, None, None, (), (), (), ())
245-
self.assertEqual(query.args, args)
246-
self.assertEqual(query.kwargs, {})
250+
self.assertEqual(query.args, ())
251+
self.assertEqual(query.kwargs, {'dataset_id': self.DATASET_ID})
247252

248253
def test_query_explicit(self):
249254
from gcloud.datastore import dataset as MUT
@@ -258,14 +263,29 @@ def test_query_explicit(self):
258263
dataset = self._makeOne()
259264

260265
with _Monkey(MUT, Query=_Dummy):
261-
query = dataset.query(KIND, NAMESPACE, ANCESTOR, FILTERS,
262-
PROJECTION, ORDER, GROUP_BY)
266+
query = dataset.query(
267+
kind=KIND,
268+
namespace=NAMESPACE,
269+
ancestor=ANCESTOR,
270+
filters=FILTERS,
271+
projection=PROJECTION,
272+
order=ORDER,
273+
group_by=GROUP_BY,
274+
)
263275

264276
self.assertTrue(isinstance(query, _Dummy))
265-
args = (self.DATASET_ID, KIND, NAMESPACE, ANCESTOR, FILTERS,
266-
PROJECTION, ORDER, GROUP_BY)
267-
self.assertEqual(query.args, args)
268-
self.assertEqual(query.kwargs, {})
277+
kwargs = {
278+
'dataset_id': self.DATASET_ID,
279+
'kind': KIND,
280+
'namespace': NAMESPACE,
281+
'ancestor': ANCESTOR,
282+
'filters': FILTERS,
283+
'projection': PROJECTION,
284+
'order': ORDER,
285+
'group_by': GROUP_BY,
286+
}
287+
self.assertEqual(query.args, ())
288+
self.assertEqual(query.kwargs, kwargs)
269289

270290

271291
class _Dummy(object):

0 commit comments

Comments
 (0)