def testBasicFunctionality(self): """Tests that GetEntities handles well formed input as expected.""" p = 'foo_project' with io.BytesIO(self._BASIC_JSON) as f: entities = list(export_to_gcloud.GetEntities(p, f)) self.assertEqual(len(entities), 3) self.assertEqual( entities[0].key, datastore.key.Key('Foo', 1, project=p)) self.assertEqual( entities[2].key, datastore.key.Key('Bar', 1, 'Bar', 2, project=p))
def testNamespace(self): """Tests that GetEntities handles namespace as expected.""" p = 'foo_project' n = 'foo_namespace' with io.BytesIO(self._BASIC_JSON) as f: entities = list(export_to_gcloud.GetEntities(p, f, namespace=n)) self.assertEqual(len(entities), 3) self.assertEqual(entities[0].key, datastore.key.Key('Foo', 1, project=p, namespace=n)) self.assertEqual( entities[2].key, datastore.key.Key('Bar', 1, 'Bar', 2, project=p, namespace=n))
def testOuterParent(self): """Tests that GetEntities handles outer_parent_key as expected.""" p = 'foo_project' par_id = datastore.key.Key('Parent', 1, project=p) with io.BytesIO(self._BASIC_JSON) as f: entities = list( export_to_gcloud.GetEntities(p, f, outer_parent_key=par_id)) self.assertEqual(len(entities), 3) self.assertEqual(entities[0].key, datastore.key.Key('Parent', 1, 'Foo', 1, project=p)) self.assertEqual( entities[2].key, datastore.key.Key('Parent', 1, 'Bar', 1, 'Bar', 2, project=p))
def testDuplicateKey(self): """Tests that GetEntities throws a ValueError on duplicate keys.""" p = 'foo_project' with self.assertRaises(export_to_gcloud.DuplicateKeyError): with io.BytesIO(self._DUPE_KEY_JSON) as f: list(export_to_gcloud.GetEntities(p, f))