You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@metron.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2016/10/16 17:10:20 UTC

[jira] [Commented] (METRON-502) Make the ParserIntegrationTest more clear on errors

    [ https://issues.apache.org/jira/browse/METRON-502?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15580251#comment-15580251 ] 

ASF GitHub Bot commented on METRON-502:
---------------------------------------

GitHub user ottobackwards opened a pull request:

    https://github.com/apache/incubator-metron/pull/311

    METRON-502 Make the ParserIntegrationTest more clear on errors

    This is an attempt to enhance the Integration Test framework to support exposing processor errors and invalid messages.
    
    There are two goals here:
    
    1. Expose errors that are in present but not exposed because the kafka queues or other error sources are not check or exposed through the Processor run
    2. Allow the integration tests to fail quicker as opposed to timing out ( if for example there are invalid messages or errors in the kafka queue such that the message in never == message out the test will keep re-trying until timeout ).
    
    A new type ProcessorResult<T> has been added to the system as the return from running a Processor.  This type encapsulates the results, errors and invalids from any given run.
    
    All integration tests with master run.
    
    As always any feedback is appreciated.  Specifically in two areas:
    
    - Is there a better way, or a way more consistent with the system than introducing the ProcessorResult type?
    - The integration project does not have any tests, should it ( unit tests?)
    - What is the best way to test this?  Should each individual test have a 'failure mode' test as well?
    
     

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/ottobackwards/incubator-metron METRON-502

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/incubator-metron/pull/311.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #311
    
----
commit 5b993beb9017ad8554ed72f5d315169ba2b67c56
Author: Otto Fowler <of...@industrialdefender.com>
Date:   2016-10-15T13:19:58Z

    first pass at refactoring to support error and invalid messages.  Squid Test is failing validation, but that is message content( json/json ) around domain without subdomains, which may be addressed in a different PR - I need to check

commit befe5f0408d8cf738df2c319e922240549771263
Author: Otto Fowler <of...@industrialdefender.com>
Date:   2016-10-16T16:24:04Z

    update other tests - mvn integration-test now running completely

commit 964940067ce0cfac0eeb177dc76a80b3931e4385
Author: Otto Fowler <of...@industrialdefender.com>
Date:   2016-10-16T16:25:12Z

    Merge remote-tracking branch 'apache/master' into METRON-502

----


> Make the ParserIntegrationTest more clear on errors
> ---------------------------------------------------
>
>                 Key: METRON-502
>                 URL: https://issues.apache.org/jira/browse/METRON-502
>             Project: Metron
>          Issue Type: Improvement
>    Affects Versions: 0.2.1BETA
>            Reporter: Casey Stella
>
> Right now the ParserIntegrationTest fails if it does not receive the expected number of messages after a given amount of time.  In situations where messages get redirected to the error or invalid queues, this results in the test waiting and failing at the end of a timeout.  The developer cannot determine if the cause is a timeout or actual errors.
> We should, instead, dump out the error and invalid queue as soon as it becomes populated and fail the test with more specific reason.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)