コード例 #1
0
  def test_release_put_locks_for_nontrans(self):
    zookeeper = flexmock()
    zookeeper.should_receive("get_valid_transaction_id").and_return(1)
    zookeeper.should_receive("register_updated_key").and_return(1)
    zookeeper.should_receive("release_lock").and_return(True)
    db_batch = flexmock()
    db_batch.should_receive('valid_data_version').and_return(True)
    db_batch.should_receive("batch_put_entity").and_return(None)
    db_batch.should_receive("batch_get_entity").and_return(None)
    db_batch.should_receive("batch_delete").and_return(None)

    dd = DatastoreDistributed(db_batch, zookeeper) 
    entity_proto1 = self.get_new_entity_proto("test", "test_kind", "bob", "prop1name", 
                                              "prop1val", ns="blah")
    entity_proto2 = self.get_new_entity_proto("test", "test_kind", "nancy", "prop1name", 
                                              "prop2val", ns="blah")
    entities = [entity_proto1, entity_proto2]
    dd.release_locks_for_nontrans("test", entities, 
                  {'test\x00blah\x00test_kind:bob\x01': 1, 'test\x00blah\x00test_kind:nancy\x01': 2})
コード例 #2
0
  def test_release_put_locks_for_nontrans(self):
    zookeeper = flexmock()
    zookeeper.should_receive("get_valid_transaction_id").and_return(1)
    zookeeper.should_receive("register_updated_key").and_return(1)
    zookeeper.should_receive("release_lock").and_return(True)
    db_batch = flexmock()
    db_batch.should_receive('valid_data_version').and_return(True)
    db_batch.should_receive("batch_put_entity").and_return(None)
    db_batch.should_receive("batch_get_entity").and_return(None)
    db_batch.should_receive("batch_delete").and_return(None)

    dd = DatastoreDistributed(db_batch, zookeeper) 
    entity_proto1 = self.get_new_entity_proto("test", "test_kind", "bob", "prop1name", 
                                              "prop1val", ns="blah")
    entity_proto2 = self.get_new_entity_proto("test", "test_kind", "nancy", "prop1name", 
                                              "prop2val", ns="blah")
    entities = [entity_proto1, entity_proto2]
    dd.release_locks_for_nontrans("test", entities, 
                  {'test\x00blah\x00test_kind:bob\x01': 1, 'test\x00blah\x00test_kind:nancy\x01': 2})
コード例 #3
0
  def test_release_put_locks_for_nontrans(self):
    zk_client = flexmock()
    zk_client.should_receive('add_listener')

    zookeeper = flexmock(handle=zk_client)
    zookeeper.should_receive("get_valid_transaction_id").and_return(1)
    zookeeper.should_receive("release_lock").and_return(True)
    db_batch = flexmock()
    db_batch.should_receive('valid_data_version_sync').and_return(True)

    transaction_manager = flexmock()
    dd = DatastoreDistributed(db_batch, transaction_manager, zookeeper)
    entity_proto1 = self.get_new_entity_proto(
      "test", "test_kind", "bob", "prop1name", "prop1val", ns="blah")
    entity_proto2 = self.get_new_entity_proto(
      "test", "test_kind", "nancy", "prop1name", "prop2val", ns="blah")
    entities = [entity_proto1, entity_proto2]
    dd.release_locks_for_nontrans(
      "test", entities, {
        'test\x00blah\x00test_kind:bob\x01': 1,
        'test\x00blah\x00test_kind:nancy\x01': 2
      })