예제 #1
0
 def test_tuple_parser_key_error(self, mocker):
     mock_response = mocker.Mock()
     mock_response.json.return_value = {
         "message": [
             {"mock": "json1", "mock2": "json2"},
             {"mock": "json3", "mock2": "json4"},
         ]
     }
     with pytest.raises(RequestParserError):
         RequestParser.tuple_parser(mock_response, data_key="data")
예제 #2
0
 def test_tuple_parser_list(self, mocker):
     mock_response = mocker.Mock()
     mock_response.json.return_value = {"data": [{"mock": "json"}, {"mock": "json"}]}
     result = RequestParser.tuple_parser(mock_response, data_key="data")
     expected_named_tuple = namedtuple("response_tuple", ["mock"])
     assert result == [
         expected_named_tuple(**{"mock": "json"}),
         expected_named_tuple(**{"mock": "json"}),
     ]
예제 #3
0
 def test_tuple_parser_unable_to_parse(self, mocker):
     mock_response = mocker.Mock()
     mock_response.json.return_value = 1
     with pytest.raises(RequestParserError):
         RequestParser.tuple_parser(mock_response)
예제 #4
0
 def test_tuple_parser_json_fail(self, mocker):
     mock_response = mocker.Mock()
     mock_response.json.side_effect = ValueError
     with pytest.raises(RequestParserError):
         RequestParser.tuple_parser(mock_response)
예제 #5
0
 def test_tuple_parser(self, mocker):
     mock_response = mocker.Mock()
     mock_response.json.return_value = {"mock": "json"}
     result = RequestParser.tuple_parser(mock_response)
     expected_named_tuple = namedtuple("response_tuple", ["mock"])
     assert result == [expected_named_tuple(**{"mock": "json"})]