Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id B31AB200BE4 for ; Wed, 21 Dec 2016 22:31:21 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id B1B18160B26; Wed, 21 Dec 2016 21:31:21 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 0869F160B18 for ; Wed, 21 Dec 2016 22:31:20 +0100 (CET) Received: (qmail 82481 invoked by uid 500); 21 Dec 2016 21:31:20 -0000 Mailing-List: contact commits-help@beam.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@beam.incubator.apache.org Delivered-To: mailing list commits@beam.incubator.apache.org Received: (qmail 82471 invoked by uid 99); 21 Dec 2016 21:31:20 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 21 Dec 2016 21:31:20 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id BFF9318C4B4 for ; Wed, 21 Dec 2016 21:31:19 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -6.769 X-Spam-Level: X-Spam-Status: No, score=-6.769 tagged_above=-999 required=6.31 tests=[KAM_LAZY_DOMAIN_SECURITY=1, KAM_LOTSOFHASH=0.25, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-2.999] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id uqAUjEnCEo13 for ; Wed, 21 Dec 2016 21:31:18 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with SMTP id 93E075F2F1 for ; Wed, 21 Dec 2016 21:31:17 +0000 (UTC) Received: (qmail 82323 invoked by uid 99); 21 Dec 2016 21:31:16 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 21 Dec 2016 21:31:16 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 9B9DADFCE0; Wed, 21 Dec 2016 21:31:16 +0000 (UTC) From: markflyhigh To: commits@beam.incubator.apache.org Reply-To: commits@beam.incubator.apache.org References: In-Reply-To: Subject: [GitHub] incubator-beam pull request #1639: [BEAM-1112] Python E2E Test Framework And... Content-Type: text/plain Message-Id: <20161221213116.9B9DADFCE0@git1-us-west.apache.org> Date: Wed, 21 Dec 2016 21:31:16 +0000 (UTC) archived-at: Wed, 21 Dec 2016 21:31:21 -0000 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-] 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 `` 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 Date: 2016-12-16T01:41:20Z [BEAM-1112] Python E2E Test Framework And Wordcount E2E Test commit 0e7007879ee082e3afe5db36107f51c03274f3f5 Author: Mark Liu Date: 2016-12-16T02:55:53Z fixup! Fix Code Style commit d6d71a717e8ed7ab32ffa02621c837c797f66cd7 Author: Mark Liu Date: 2016-12-20T19:15:59Z fixup! Address Ahmet comments commit 669077fff2032cf5d48e891a097f3e33bef75679 Author: Mark Liu Date: 2016-12-20T22:18:52Z Add Hamcrest To Tox For autocomplete_test Execution commit 601956fba1bee486e1aadc4fd1193848867c50d6 Author: Mark Liu 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 infrastructure@apache.org or file a JIRA ticket with INFRA. ---