Esempio n. 1
0
    def test_invalid_aws_client_credentials(self):
        """ Test invalid AWS client credentials """

        try:
            credentials = "testing"
            AWSClient(credentials, 'us-west-2')
            self.fail('Expected InvalidCredentials exception did not ocurr.')
        except InvalidCredentials:
            pass
Esempio n. 2
0
 def test_valid_aws_client(self):
     """ Test valid AWS Credentials """
     try:
         credentials = AWSCredentials(
             'AKIAIOSFODNN7EXAMPLE',
             'wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY'
         )
         AWSClient(credentials, 'us-west-2')
     except InvalidCredentials:
         self.fail('Unexpected exception initializing AWSClient')
Esempio n. 3
0
    def test_empty_query(self):
        """ Test empty query from DynamoDB table """
        expected = []
        dynamo = DynamoDBProvider(
            AWSClient(self.credentials,
                      'us-west-2',
                      mock=AWSMockResponses.empty_query_response))
        response = dynamo.get_records(
            TestModel(),
            'TestTable',
            KeyConditionExpression=Key('test1').eq('value1'),
            IndexName='TestIndex')

        self.assertListEqual(response, expected)
Esempio n. 4
0
 def test_get_item_not_found(self):
     """ Test get_item not found from dynamodb table """
     key = {'test1': 'value1', 'test2': 'value2'}
     dynamo = DynamoDBProvider(
         AWSClient(self.credentials,
                   'us-west-2',
                   mock=AWSMockResponses.get_empty_item_response))
     try:
         dynamo.get_record(TestModel(), 'TestTable', Key=key)
         self.fail('Expected exception not raised.')
     except RecordNotFound as e:
         pass
     except Exception as e:
         self.fail('Unexpected exception: {}'.format(str(e.message)))
Esempio n. 5
0
    def test_basic_put_item(self):
        """ Test basic put_item into dynamodb table """
        expected = {
            'test1': 'value1',
            'test2': 'value2',
            'test3': 'value3',
            'test4': 'value4'
        }
        dynamo = DynamoDBProvider(
            AWSClient(self.credentials,
                      'us-west-2',
                      mock=AWSMockResponses.put_item_response))
        response = dynamo.put_record(TestModel(), 'TestTable', Item=expected)

        self.assertDictEqual(response, expected)
Esempio n. 6
0
    def test_basic_delete_item(self):
        """ Test basic delete_item from dynamodb table """
        expected = {
            'test1': 'value1',
            'test2': 'value2',
            'test3': 'value3',
            'test4': 'value4'
        }
        key = {'test1': 'value1', 'test2': 'value2'}
        dynamo = DynamoDBProvider(
            AWSClient(self.credentials,
                      'us-west-2',
                      mock=AWSMockResponses.delete_item_response))
        response = dynamo.delete_record(TestModel(), 'TestTable', Key=key)

        self.assertDictEqual(response, expected)
Esempio n. 7
0
    def test_basic_query(self):
        """ Test basic query from DynamoDB table """
        expected = [
            {
                'test1': 'value1',
                'test2': 'value2',
                'test3': 'value3',
                'test4': 'value4',
            },
            {
                'test1': 'value5',
                'test2': 'value6',
                'test3': 'value7',
                'test4': 'value8',
            },
            {
                'test1': 'value9',
                'test2': 'value10',
                'test3': 'value11',
                'test4': 'value12',
            },
            {
                'test1': 'value13',
                'test2': 'value14',
                'test3': 'value15',
                'test4': 'value16',
            },
        ]
        dynamo = DynamoDBProvider(
            AWSClient(self.credentials,
                      'us-west-2',
                      mock=AWSMockResponses.query_response))
        response = dynamo.get_records(
            TestModel(),
            'TestTable',
            KeyConditionExpression=Key('test1').eq('value1'),
            IndexName='TestIndex')

        self.assertListEqual(response, expected)