include pending days input for schedule key deletion and update tests since boto client returns DeletionDate as datetime
This commit is contained in:
		
							parent
							
								
									6277983e3f
								
							
						
					
					
						commit
						21c8914efe
					
				@ -269,11 +269,12 @@ class KmsResponse(BaseResponse):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    def schedule_key_deletion(self):
 | 
					    def schedule_key_deletion(self):
 | 
				
			||||||
        key_id = self.parameters.get('KeyId')
 | 
					        key_id = self.parameters.get('KeyId')
 | 
				
			||||||
 | 
					        pending_window_in_days = self.parameters.get('PendingWindowInDays')
 | 
				
			||||||
        _assert_valid_key_id(self.kms_backend.get_key_id(key_id))
 | 
					        _assert_valid_key_id(self.kms_backend.get_key_id(key_id))
 | 
				
			||||||
        try:
 | 
					        try:
 | 
				
			||||||
            return json.dumps({
 | 
					            return json.dumps({
 | 
				
			||||||
                'KeyId': key_id,
 | 
					                'KeyId': key_id,
 | 
				
			||||||
                'DeletionDate': iso_8601_datetime_without_milliseconds(self.kms_backend.schedule_key_deletion(key_id))
 | 
					                'DeletionDate': iso_8601_datetime_without_milliseconds(self.kms_backend.schedule_key_deletion(key_id, pending_window_in_days))
 | 
				
			||||||
            })
 | 
					            })
 | 
				
			||||||
        except KeyError:
 | 
					        except KeyError:
 | 
				
			||||||
            raise JSONResponseError(404, 'Not Found', body={
 | 
					            raise JSONResponseError(404, 'Not Found', body={
 | 
				
			||||||
 | 
				
			|||||||
@ -7,7 +7,6 @@ from boto.exception import JSONResponseError
 | 
				
			|||||||
from boto.kms.exceptions import AlreadyExistsException, NotFoundException
 | 
					from boto.kms.exceptions import AlreadyExistsException, NotFoundException
 | 
				
			||||||
import sure  # noqa
 | 
					import sure  # noqa
 | 
				
			||||||
from moto import mock_kms, mock_kms_deprecated
 | 
					from moto import mock_kms, mock_kms_deprecated
 | 
				
			||||||
from moto.core.utils import iso_8601_datetime_without_milliseconds
 | 
					 | 
				
			||||||
from nose.tools import assert_raises
 | 
					from nose.tools import assert_raises
 | 
				
			||||||
from freezegun import freeze_time
 | 
					from freezegun import freeze_time
 | 
				
			||||||
from datetime import datetime, timedelta
 | 
					from datetime import datetime, timedelta
 | 
				
			||||||
@ -660,7 +659,7 @@ def test_schedule_key_deletion():
 | 
				
			|||||||
            KeyId=key['KeyMetadata']['KeyId']
 | 
					            KeyId=key['KeyMetadata']['KeyId']
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
        assert response['KeyId'] == key['KeyMetadata']['KeyId']
 | 
					        assert response['KeyId'] == key['KeyMetadata']['KeyId']
 | 
				
			||||||
        assert response['DeletionDate'] == iso_8601_datetime_without_milliseconds(datetime.now() + timedelta(days=30))
 | 
					        assert response['DeletionDate'] == datetime.now() + timedelta(days=30)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    result = client.describe_key(KeyId=key['KeyMetadata']['KeyId'])
 | 
					    result = client.describe_key(KeyId=key['KeyMetadata']['KeyId'])
 | 
				
			||||||
    assert result["KeyMetadata"]["Enabled"] == False
 | 
					    assert result["KeyMetadata"]["Enabled"] == False
 | 
				
			||||||
@ -678,7 +677,7 @@ def test_schedule_key_deletion_custom():
 | 
				
			|||||||
            PendingWindowInDays=7
 | 
					            PendingWindowInDays=7
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
        assert response['KeyId'] == key['KeyMetadata']['KeyId']
 | 
					        assert response['KeyId'] == key['KeyMetadata']['KeyId']
 | 
				
			||||||
        assert response['DeletionDate'] == iso_8601_datetime_without_milliseconds(datetime.now() + timedelta(days=7))
 | 
					        assert response['DeletionDate'] == datetime.now() + timedelta(days=7)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    result = client.describe_key(KeyId=key['KeyMetadata']['KeyId'])
 | 
					    result = client.describe_key(KeyId=key['KeyMetadata']['KeyId'])
 | 
				
			||||||
    assert result["KeyMetadata"]["Enabled"] == False
 | 
					    assert result["KeyMetadata"]["Enabled"] == False
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user