Example #1
0
def test_application_service_11_debug(mock_debug):
    """
    Action : Test the main server script loop.
    Expected Results : Test finished with status "Passed".
    Returns: N/A.
    """
    set_parser('XML', sys.argv[2])
    signal_interpreter_app.test_client().post('/',
                                              data=json.dumps(
                                                  dict({'service': '11'})),
                                              content_type='application/json')
    mock_debug.assert_has_calls([
        call(
            'Available Services : %s ', {
                'services': [{
                    'title': 'ECU Reset',
                    'id': '11'
                }, {
                    'title': 'Security Access',
                    'id': '27'
                }]
            }),
        call('Requested Id : "%s"', '11'),
        call('Service : "%s"', 'ECU Reset'),
        call('Answer : "%s"', 'ECU Reset')
    ])
Example #2
0
def test_application_wrong_xml_data_error(mock_error):
    """
    Action : Test the server correct error check
    Expected Results : Test finished with status "Passed".
    Returns: N/A.
    """
    set_parser('XML', sys.argv[2])
    signal_interpreter_app.test_client().post('/',
                                              data=json.dumps(
                                                  dict({'xxxxx': '27'})),
                                              content_type='application/json')
    mock_error.assert_has_calls([call('Exception %s occurred', "'service'")])
def test_application_wrong_json_file_content_error():
    """
    Action : Test the server correct error check.
    Expected Results : Test finished with status "Passed".
    Returns: N/A.
    """
    with pytest.raises(ParserErrorDecodeError):
        set_parser('XML', sys.argv[2])
        signal_interpreter_app.test_client().post('/',
                                                  data=json.dumps
                                                  (dict({'service': '27'})),
                                                  content_type='application'
                                                               '/json')
Example #4
0
def test_application_wrong_id_info(mock_warning):
    """
    Action : Test the server correct error check
    Expected Results : Test finished with status "Passed".
    Returns: N/A.
    """
    jsonparser.load_file(sys.argv[2])
    signal_interpreter_app.test_client().post('/',
                                              data=json.dumps
                                              (dict({'service': '1876871'})),
                                              content_type='application/json')
    mock_warning.assert_has_calls([call('Service %s not suported!', '1876871'),
                                   call("The Requested Id is Not Avaiable")])
Example #5
0
def test_application_service_27_info(mock_info):
    """
    Action : Test the main server script loop.
    Expected Results : Test finished with status "Passed".
    Returns: N/A.
    """
    jsonparser.load_file(sys.argv[2])
    signal_interpreter_app.test_client().post('/',
                                              data=json.dumps
                                              (dict({'service': '27'})),
                                              content_type='application/json')
    mock_info.assert_has_calls([call("Processing Request..."),
                                call("Sending data to client...")])
Example #6
0
def test_application_wrong_json_file_name_error():
    """
    Action : Test the server correct error check
    Expected Results : Test finished with status "Passed".
    Returns: N/A.
    """
    with pytest.raises(JsonParserErrorFileNotFoundError):
        jsonparser.load_file(sys.argv[2])
        signal_interpreter_app.test_client().post('/',
                                                  data=json.dumps
                                                  (dict({'service': '27'})),
                                                  content_type='application'
                                                               '/json')
Example #7
0
def test_interpret_signal_xml(mock_get_parser, mock_get_signal_title, mock_get_signal_database_format, mock_abort):
    signal_interpreter_app.testing = True
    my_app_instance = signal_interpreter_app.test_client()

    with my_app_instance as client:
        my_payload = {"signal": "27"}
        mock_get_signal_database_format.return_value = "XML"
        mock_get_signal_title.return_value = "None"
        client.post("/", json=my_payload)
        mock_abort.assert_called_once_with(404, description="Signal not found")
def test_interpreter_signal():
    signal_interpreter_app.testing = True
    signal_interpreter_app_instance = signal_interpreter_app.test_client()

    with patch.object(JsonParser, 'get_signal_title',
                      return_value='ECU Reset') as mock_get_signal_title:
        with signal_interpreter_app_instance as client:
            payload = {'signal': '11'}
            response = client.post('/', json=payload)
            mock_get_signal_title.assert_called_with('11')
            assert response.get_json() == 'ECU Reset'
Example #9
0
def test_interpret_signal(mock_get_parser, mock_get_signal_title, mock_get_signal_database_format, mock_abort):
    signal_interpreter_app.testing = True
    my_app_instance = signal_interpreter_app.test_client()

    with my_app_instance as client:
        my_payload = {"signal": "27"}
        mock_get_signal_database_format.return_value = "FORMAT"
        mock_get_signal_title.return_value = "Security Access"
        response = client.post("/", json=my_payload)
        assert response.get_json() == "Security Access"
        mock_get_signal_database_format.return_value = "JSON"
        mock_get_signal_title.return_value = "None"
        client.post("/", json=my_payload)
        mock_abort.assert_called_once_with(404, description="Signal not found")
def test_wrong_data_raise():
    """
    Action : Test mocking server answer.
    Expected Results : No difference from normal application usage.
    Returns: N/A.
    """
    signal_interpreter_app.testing = True
    signal_interpreter_app_instance = signal_interpreter_app.test_client()
    with patch.object(LoadAndParse,
                      "return_signal_by_title",
                      return_value="Service not suported!"):
        with signal_interpreter_app_instance as client:
            payload = {"service": "XXXXX"}
            with pytest.raises(JsonParserErrorKeyError):
                client.post("/", json=payload)
def test_correct_data():
    """
    Action : Test mocking server answer.
    Expected Results : No difference from normal application usage.
    Returns: N/A.
    """
    signal_interpreter_app.testing = True
    signal_interpreter_app_instance = signal_interpreter_app.test_client()
    with patch.object(
            LoadAndParse, "return_signal_by_title",
            return_value="Security Access")\
            as mock_return_signal_by_title:
        with signal_interpreter_app_instance as client:
            payload = {"service": "27"}
            response = client.post("/", json=payload)
            mock_return_signal_by_title.assert_called_with("27")
            assert response.get_json() == "Security Access"