GitHub user markflyhigh reopened a pull request:

    https://github.com/apache/incubator-beam/pull/1639

    [BEAM-1112] Python E2E Test Framework And Wordcount E2E Test

    Be sure to do all of the following to help us incorporate your contribution
    quickly and easily:
    
     - [x] Make sure the PR title is formatted like:
       `[BEAM-<Jira issue #>] Description of pull request`
     - [ ] Make sure tests pass via `mvn clean verify`. (Even better, enable
           Travis-CI on your fork and ensure the whole test matrix passes).
     - [ ] Replace `<Jira issue #>` in the title with the actual Jira issue
           number, if there is one.
     - [ ] If this contribution is large, please file an Apache
           [Individual Contributor License 
Agreement](https://www.apache.org/licenses/icla.txt).
    
    ---
    
     - E2e test framework that supports TestRunner start and verify pipeline 
job.
       - add `TestOptions` which defined `on_success_matcher` that is used to 
verify state/output of pipeline job.
       - validate `on_success_matcher` before pipeline execution to make sure 
it's unpicklable to a subclass of BaseMatcher.
       - create a `TestDataflowRunner` which provide functionalities of 
`DataflowRunner` plus result verification.
       - provide a test verifier `PipelineStateMatcher` that can verify 
pipeline job finished in DONE or not.
     - Add wordcount_it (it = integration test) that build e2e test based on 
existing wordcount pipeline.
       - include wordcount_it to nose collector, so that wordcount_it can be 
collected and run by nose.
       - skip ITs when running unit tests from tox in precommit and postcommit.
    
    Current changes will not change behavior of existing pre/postcommit.
    Test is done by running `tox -e py27 -c sdks/python/tox.ini` for unit test 
and running wordcount_it with `TestDataflowRunner` on service 
([link](https://pantheon.corp.google.com/dataflow/job/2016-12-15_17_36_16-3857167705491723621?project=google.com:clouddfe)).
    
    TODO:
     - Output data verifier that verify pipeline output that stores in 
filesystem.
     - Add wordcount_it to precommit and replace existing wordcount execution 
command in postcommit with a better structured nose command.

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

    $ git pull https://github.com/markflyhigh/incubator-beam e2e-testrunner

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

    https://github.com/apache/incubator-beam/pull/1639.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 #1639
    
----
commit e1e1fa3a60e1fe234829432d144d6689e240b6f0
Author: Mark Liu <mark...@google.com>
Date:   2016-12-16T01:41:20Z

    [BEAM-1112] Python E2E Test Framework And Wordcount E2E Test

commit 0e7007879ee082e3afe5db36107f51c03274f3f5
Author: Mark Liu <mark...@google.com>
Date:   2016-12-16T02:55:53Z

    fixup! Fix Code Style

commit d6d71a717e8ed7ab32ffa02621c837c797f66cd7
Author: Mark Liu <mark...@google.com>
Date:   2016-12-20T19:15:59Z

    fixup! Address Ahmet comments

commit 669077fff2032cf5d48e891a097f3e33bef75679
Author: Mark Liu <mark...@google.com>
Date:   2016-12-20T22:18:52Z

    Add Hamcrest To Tox For autocomplete_test Execution

commit 601956fba1bee486e1aadc4fd1193848867c50d6
Author: Mark Liu <mark...@google.com>
Date:   2016-12-21T19:16:22Z

    fixup! Fix Unit Test

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to