コード例 #1
0
    def test_record_not_found(self):
        params = {'pathParameters': {'article_id': 'testid000003'}}

        response = ArticlesAlisTokensShow(params, {}, self.dynamodb).main()

        self.assertEqual(response['statusCode'], 200)
        self.assertEqual(json.loads(response['body']), {
            'article_id': 'testid000003',
            'alis_token': 0
        })
コード例 #2
0
    def test_call_validate_article_existence(self):
        params = {'pathParameters': {'article_id': 'testid000001'}}

        mock_lib = MagicMock()
        with patch('articles_alis_tokens_show.DBUtil', mock_lib):
            ArticlesAlisTokensShow(params, {}, self.dynamodb).main()
            args, kwargs = mock_lib.validate_article_existence.call_args

            self.assertTrue(mock_lib.validate_article_existence.called)
            self.assertTrue(args[0])
            self.assertEqual(args[1], 'testid000001')
            self.assertEqual(kwargs['status'], 'public')
コード例 #3
0
    def test_main_ok(self):
        params = {'pathParameters': {'article_id': 'testid000001'}}

        response = ArticlesAlisTokensShow(params, {}, self.dynamodb).main()

        expected_item = {
            'article_id': 'testid000001',
            'alis_token': 100,
            'evaluated_at': 1520150272000000
        }

        self.assertEqual(response['statusCode'], 200)
        self.assertEqual(json.loads(response['body']), expected_item)
コード例 #4
0
    def test_main_with_no_article_evalueted_management(self):
        article_evaluated_manage_table = self.dynamodb.Table(
            os.environ['ARTICLE_EVALUATED_MANAGE_TABLE_NAME'])
        article_evaluated_manage_table.delete_item(Key={'type': 'alistoken'})

        params = {'pathParameters': {'article_id': 'testid000001'}}

        response = ArticlesAlisTokensShow(params, {}, self.dynamodb).main()

        self.assertEqual(response['statusCode'], 200)
        self.assertEqual(json.loads(response['body']), {
            'article_id': 'testid000001',
            'alis_token': 0
        })
コード例 #5
0
    def assert_bad_request(self, params):
        function = ArticlesAlisTokensShow(params, {}, self.dynamodb)
        response = function.main()

        self.assertEqual(response['statusCode'], 400)
コード例 #6
0
def lambda_handler(event, context):
    articles_alis_tokens_show = ArticlesAlisTokensShow(event, context, dynamodb)
    return articles_alis_tokens_show.main()