def test_put_kv_txn_instantiates_request_object_with_specified_verb(self): put_kv_txn(self.mapping, verb='cas') self.expected_data = json.dumps( _mapping_to_txn_data(self.mapping, verb='cas')).encode('utf-8') self.request.Request.assert_called_once_with( url='http://localhost:8500/v1/txn', data=self.expected_data, method='PUT', headers={'Content-Type': 'application/json'})
def setUp(self): self.request = self.set_up_patch('consul_kv.api.request') self.request.urlopen.return_value.__exit__ = lambda a, b, c, d: None self.request.urlopen.return_value.__enter__ = lambda x: Mock() self.log = self.set_up_patch('consul_kv.api.log') self.mapping = { 'some/key/1': 'some_value_1', 'some/key/2': 'some_value_2' } self.expected_data = json.dumps( _mapping_to_txn_data(self.mapping, verb='set')).encode('utf-8')
def test_mapping_to_txn_data_returns_txn_data_list_of_mapping(self): ret = _mapping_to_txn_data(self.mapping) expected_txn_data = [{ 'KV': { 'Key': 'some/key/1', 'Value': self.value_fixture1, 'Verb': 'set' } }, { 'KV': { 'Key': 'some/key/2', 'Value': self.value_fixture2, 'Verb': 'set' } }] self.assertCountEqual(ret, expected_txn_data)
def test_mapping_to_txn_data_returns_txn_data_list_of_mapping_with_specified_operation( self): ret = _mapping_to_txn_data(self.mapping, verb='cas') expected_txn_data = [{ 'KV': { 'Key': 'some/key/1', 'Value': self.value_fixture1, 'Verb': 'cas' } }, { 'KV': { 'Key': 'some/key/2', 'Value': self.value_fixture2, 'Verb': 'cas' } }] self.assertCountEqual(ret, expected_txn_data)
def test_mapping_to_txn_data_can_deal_with_ints(self): self.mapping['some/key/3'] = 123 _mapping_to_txn_data(self.mapping)