def test_list_tables(): name = "TestTable" dynamodb_backend.create_table(name, hash_key_attr="name", hash_key_type="S") conn = boto.connect_dynamodb("the_key", "the_secret") assert conn.list_tables() == ["TestTable"]
def test_list_tables(): name = 'TestTable' dynamodb_backend.create_table(name, hash_key_attr="name", hash_key_type="S") conn = boto.connect_dynamodb('the_key', 'the_secret') assert conn.list_tables() == ['TestTable']
def test_list_tables(self): dynamodb_backend.create_table("Test", hash_key_attr="content", hash_key_type="S") list_result = self.conn.list_tables() spans = self.get_spans() assert spans span = spans[0] assert span.name == "pynamodb.command" assert span.service == "pynamodb" assert span.resource == "ListTables" assert len(spans) == 1 assert_is_measured(span) assert span.span_type == "http" assert span.get_tag("aws.operation") == "ListTables" assert span.get_tag("aws.region") == "us-east-1" assert span.get_tag("aws.agent") == "pynamodb" assert span.duration >= 0 assert span.error == 0 assert len(list_result["TableNames"]) == 1 assert list_result["TableNames"][0] == "Test"
def test_list_tables(): # Given that I have a table in my dynamo backend name = 'TestTable' dynamodb_backend.create_table(name, hash_key_attr="name", hash_key_type="S") # When I use the boto API to list tables conn = boto.connect_dynamodb('the_key', 'the_secret') # Then I see the exact table I just created conn.list_tables().should.equal(['TestTable'])
def test_list_tables_layer_1(): dynamodb_backend.create_table("test_1", hash_key_attr="name", hash_key_type="S") dynamodb_backend.create_table("test_2", hash_key_attr="name", hash_key_type="S") conn = boto.connect_dynamodb('the_key', 'the_secret') res = conn.layer1.list_tables(limit=1) expected = {"TableNames": ["test_1"], "LastEvaluatedTableName": "test_1"} res.should.equal(expected) res = conn.layer1.list_tables(limit=1, start_table="test_1") expected = {"TableNames": ["test_2"]} res.should.equal(expected)
def test_list_tables_layer_1(): dynamodb_backend.create_table("test_1", hash_key_attr="name", hash_key_type="S") dynamodb_backend.create_table("test_2", hash_key_attr="name", hash_key_type="S") conn = boto.connect_dynamodb("the_key", "the_secret") res = conn.layer1.list_tables(limit=1) expected = {"TableNames": ["test_1"], "LastEvaluatedTableName": "test_1"} res.should.equal(expected) res = conn.layer1.list_tables(limit=1, start_table="test_1") expected = {"TableNames": ["test_2"]} res.should.equal(expected)
def test_user_specified_service(self): from ddtrace import config assert config.service == "mysvc" dynamodb_backend.create_table("Test", hash_key_attr="content", hash_key_type="S") list_result = self.conn.list_tables() span = self.get_spans()[0] assert span.service == "pynamodb" assert len(list_result["TableNames"]) == 1 assert list_result["TableNames"][0] == "Test"
def test_service_precedence(self): dynamodb_backend.create_table("Test", hash_key_attr="content", hash_key_type="S") list_result = self.conn.list_tables() span = self.get_spans()[0] assert span.service == "env-pynamodb", span.service assert len(list_result["TableNames"]) == 1 assert list_result["TableNames"][0] == "Test" self.reset() # Manual overide dynamodb_backend.create_table("Test", hash_key_attr="content", hash_key_type="S") Pin.override(self.conn, service="override-pynamodb", tracer=self.tracer) list_result = self.conn.list_tables() span = self.get_spans()[0] assert span.service == "override-pynamodb", span.service assert len(list_result["TableNames"]) == 1 assert list_result["TableNames"][0] == "Test"
def test_list_tables_layer_1(): # Given that I have two tables in my dynamo backend dynamodb_backend.create_table("test_1", hash_key_attr="name", hash_key_type="S") dynamodb_backend.create_table("test_2", hash_key_attr="name", hash_key_type="S") # When I list tables with the limit flag set to 1 conn = boto.connect_dynamodb('the_key', 'the_secret') res = conn.layer1.list_tables(limit=1) # Then I see that, as expected, I received the partial list of tables expected = {"TableNames": ["test_1"], "LastEvaluatedTableName": "test_1"} res.should.equal(expected) # And then I see that I can still retrieve the rest of the list using both # `limit` and `start_table`. res = conn.layer1.list_tables(limit=1, start_table="test_1") expected = {"TableNames": ["test_2"]} res.should.equal(expected)
def test_env_user_specified_pynamodb_service(self): dynamodb_backend.create_table("Test", hash_key_attr="content", hash_key_type="S") list_result = self.conn.list_tables() span = self.get_spans()[0] assert span.service == "mypynamodb", span.service assert len(list_result["TableNames"]) == 1 assert list_result["TableNames"][0] == "Test" self.reset() # Global config with self.override_config("pynamodb", dict(service="cfg-pynamodb")): dynamodb_backend.create_table("Test", hash_key_attr="content", hash_key_type="S") list_result = self.conn.list_tables() span = self.get_spans()[0] assert span.service == "cfg-pynamodb", span.service assert len(list_result["TableNames"]) == 1 assert list_result["TableNames"][0] == "Test" self.reset() # Manual override dynamodb_backend.create_table("Test", hash_key_attr="content", hash_key_type="S") Pin.override(self.conn, service="mypynamodb", tracer=self.tracer) list_result = self.conn.list_tables() span = self.get_spans()[0] assert span.service == "mypynamodb", span.service assert len(list_result["TableNames"]) == 1 assert list_result["TableNames"][0] == "Test"
def test_scan(self): dynamodb_backend.create_table("Test", hash_key_attr="content", hash_key_type="S") scan_result = self.conn.scan("Test") spans = self.get_spans() assert spans span = spans[0] assert span.name == "pynamodb.command" assert span.service == "pynamodb" assert span.resource == "Scan Test" assert len(spans) == 1 assert_is_measured(span) assert span.span_type == "http" assert span.get_tag("aws.operation") == "Scan" assert span.get_tag("aws.region") == "us-east-1" assert span.get_tag("aws.agent") == "pynamodb" assert span.duration >= 0 assert span.error == 0 assert scan_result["ScannedCount"] == 0 assert len(scan_result["Items"]) == 0
def test_list_tables(): name = 'TestTable' dynamodb_backend.create_table( name, hash_key_attr="name", hash_key_type="S") conn = boto.connect_dynamodb('the_key', 'the_secret') assert conn.list_tables() == ['TestTable']