def test_create_composite_index(self): db_batch = flexmock() db_batch.should_receive('valid_data_version_sync').and_return(True) db_batch.should_receive("batch_put_entity").and_return(ASYNC_NONE) transaction_manager = flexmock() dd = DatastoreDistributed(db_batch, transaction_manager, self.get_zookeeper()) zk_handle = flexmock(ensure_path=lambda path: None, get=lambda path: (None, flexmock(version=None)), set=lambda path, value, version: None) dd.zookeeper.handle = zk_handle dd = flexmock(dd) index = entity_pb.CompositeIndex() index.set_app_id("appid") index.set_state(2) definition = index.mutable_definition() definition.set_entity_type("kind") definition.set_ancestor(0) prop1 = definition.add_property() prop1.set_name("prop1") prop1.set_direction(1) # ascending prop2 = definition.add_property() prop2.set_name("prop2") prop1.set_direction(1) # ascending index_id = yield dd.create_composite_index("appid", index) assert index_id > 0
def test_create_composite_index(self): db_batch = flexmock() db_batch.should_receive('valid_data_version').and_return(True) db_batch.should_receive("batch_put_entity").and_return(None) dd = DatastoreDistributed(db_batch, self.get_zookeeper()) dd = flexmock(dd) index = entity_pb.CompositeIndex() index.set_app_id("appid") index.set_state(2) definition = index.mutable_definition() definition.set_entity_type("kind") definition.set_ancestor(0) prop1 = definition.add_property() prop1.set_name("prop1") prop1.set_direction(1) # ascending prop2 = definition.add_property() prop2.set_name("prop2") prop1.set_direction(1) # ascending dd.create_composite_index("appid", index) assert index.id() > 0