diff options
-rw-r--r-- | tests/unit/ec2/test_ec2object.py | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/tests/unit/ec2/test_ec2object.py b/tests/unit/ec2/test_ec2object.py index 5664c1bc..14841e91 100644 --- a/tests/unit/ec2/test_ec2object.py +++ b/tests/unit/ec2/test_ec2object.py @@ -141,6 +141,71 @@ class TestRemoveTags(AWSMockServiceTestCase): self.assertEqual(taggedEC2Object.tags, {"key1": "value1", "key2": "value2"}) + def test_remove_tags(self): + self.set_http_response(status_code=200) + taggedEC2Object = TaggedEC2Object(self.service_connection) + taggedEC2Object.id = "i-abcd1234" + taggedEC2Object.tags["key1"] = "value1" + taggedEC2Object.tags["key2"] = "value2" + + taggedEC2Object.remove_tags({"key1": "value1", "key2": "value2"}) + + self.assert_request_parameters({ + 'ResourceId.1': 'i-abcd1234', + 'Action': 'DeleteTags', + 'Tag.1.Key': 'key1', + 'Tag.1.Value': 'value1', + 'Tag.2.Key': 'key2', + 'Tag.2.Value': 'value2'}, + ignore_params_values=['AWSAccessKeyId', 'SignatureMethod', + 'SignatureVersion', 'Timestamp', + 'Version']) + + self.assertEqual(taggedEC2Object.tags, {}) + + def test_remove_tags_wrong_values(self): + self.set_http_response(status_code=200) + taggedEC2Object = TaggedEC2Object(self.service_connection) + taggedEC2Object.id = "i-abcd1234" + taggedEC2Object.tags["key1"] = "value1" + taggedEC2Object.tags["key2"] = "value2" + + taggedEC2Object.remove_tags({"key1": "value1", "key2": "value3"}) + + self.assert_request_parameters({ + 'ResourceId.1': 'i-abcd1234', + 'Action': 'DeleteTags', + 'Tag.1.Key': 'key1', + 'Tag.1.Value': 'value1', + 'Tag.2.Key': 'key2', + 'Tag.2.Value': 'value3'}, + ignore_params_values=['AWSAccessKeyId', 'SignatureMethod', + 'SignatureVersion', 'Timestamp', + 'Version']) + + self.assertEqual(taggedEC2Object.tags, {"key2": "value2"}) + + def test_remove_tags_none_values(self): + self.set_http_response(status_code=200) + taggedEC2Object = TaggedEC2Object(self.service_connection) + taggedEC2Object.id = "i-abcd1234" + taggedEC2Object.tags["key1"] = "value1" + taggedEC2Object.tags["key2"] = "value2" + + taggedEC2Object.remove_tags({"key1": "value1", "key2": None}) + + self.assert_request_parameters({ + 'ResourceId.1': 'i-abcd1234', + 'Action': 'DeleteTags', + 'Tag.1.Key': 'key1', + 'Tag.1.Value': 'value1', + 'Tag.2.Key': 'key2'}, + ignore_params_values=['AWSAccessKeyId', 'SignatureMethod', + 'SignatureVersion', 'Timestamp', + 'Version']) + + self.assertEqual(taggedEC2Object.tags, {}) + if __name__ == '__main__': unittest.main() |