def test_sync(self): client = self.get_client() remote_index = Index("remote-index-1") remote_field = remote_index.field("remote-field-1") schema1 = Schema() index11 = schema1.index("diff-index1") index11.field("field1-1") index11.field("field1-2") index12 = schema1.index("diff-index2") index12.field("field2-1") schema1.index(remote_index.name) try: client.ensure_index(remote_index) client.ensure_field(remote_field) client.sync_schema(schema1) # check that the schema was created schema2 = client.schema() self.assertTrue("remote-index-1" in schema2._indexes) self.assertTrue( "remote-field-1" in schema2.index("remote-index-1")._fields) self.assertTrue("diff-index1" in schema2._indexes) self.assertTrue("field1-1" in schema2.index("diff-index1")._fields) self.assertTrue("field1-2" in schema2.index("diff-index1")._fields) self.assertTrue("diff-index2" in schema2._indexes) self.assertTrue("field2-1" in schema2.index("diff-index2")._fields) finally: try: client.delete_index(remote_index) client.delete_index(index11) client.delete_index(index12) except PilosaError: pass
def test_ensure_index_exists(self): client = self.get_client() index = Index(self.index.name + "-ensure") client.ensure_index(index) client.create_field(index.field("frm")) client.ensure_index(index) client.delete_index(index)
def test_field_for_nonexisting_index(self): client = self.get_client() index = Index("non-existing-database") field = index.field("frm") self.assertRaises(PilosaServerError, client.create_field, field)