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 5A1E2200C4A for ; Sun, 2 Apr 2017 08:45:51 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 58C4D160B8E; Sun, 2 Apr 2017 06:45:51 +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 A8358160B7D for ; Sun, 2 Apr 2017 08:45:49 +0200 (CEST) Received: (qmail 21510 invoked by uid 500); 2 Apr 2017 06:45:48 -0000 Mailing-List: contact commits-help@beam.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@beam.apache.org Delivered-To: mailing list commits@beam.apache.org Received: (qmail 21501 invoked by uid 99); 2 Apr 2017 06:45:48 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 02 Apr 2017 06:45:48 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 4B6F3C0EA2 for ; Sun, 2 Apr 2017 06:45:48 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -99.202 X-Spam-Level: X-Spam-Status: No, score=-99.202 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id vqTBSwa2nDj9 for ; Sun, 2 Apr 2017 06:45:43 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTP id 34D795FC8E for ; Sun, 2 Apr 2017 06:45:43 +0000 (UTC) Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 9BFA1E05C1 for ; Sun, 2 Apr 2017 06:45:42 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id B18312401C for ; Sun, 2 Apr 2017 06:45:41 +0000 (UTC) Date: Sun, 2 Apr 2017 06:45:41 +0000 (UTC) From: "Tibor Kiss (JIRA)" To: commits@beam.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (BEAM-1680) Uber-JIRA: Extend Python-SDK's unit test coverage MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Sun, 02 Apr 2017 06:45:51 -0000 [ https://issues.apache.org/jira/browse/BEAM-1680?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tibor Kiss updated BEAM-1680: ----------------------------- Description: Some components of the Python-SDK has low coverage rate. As of now ([ea33e33|https://github.com/apache/beam/tree/ea33e33]) the test coverage looks as follows (excluding autocomplete_test.py): {code} Ran 1050 tests in 145.653s OK (skipped=14) py27gcp runtests: commands[5] | coverage report Name Stmts Miss Cover ------------------------------------------------------------------------------------------------------ apache_beam/__init__.py 12 1 92% apache_beam/coders/__init__.py 2 0 100% apache_beam/coders/coder_impl.py 414 23 94% apache_beam/coders/coders.py 392 68 83% apache_beam/coders/observable.py 10 0 100% apache_beam/coders/slow_stream.py 105 6 94% apache_beam/coders/typecoders.py 69 6 91% apache_beam/error.py 7 0 100% apache_beam/internal/__init__.py 0 0 100% apache_beam/internal/gcp/__init__.py 0 0 100% apache_beam/internal/gcp/auth.py 75 39 48% apache_beam/internal/gcp/json_value.py 64 8 88% apache_beam/internal/pickler.py 96 10 90% apache_beam/internal/util.py 30 0 100% apache_beam/io/__init__.py 16 2 88% apache_beam/io/avroio.py 139 14 90% apache_beam/io/concat_source.py 134 10 93% apache_beam/io/filebasedsource.py 112 3 97% apache_beam/io/fileio.py 188 55 71% apache_beam/io/filesystem.py 184 23 88% apache_beam/io/filesystems_util.py 7 0 100% apache_beam/io/gcp/__init__.py 0 0 100% apache_beam/io/gcp/bigquery.py 418 29 93% apache_beam/io/gcp/datastore/__init__.py 0 0 100% apache_beam/io/gcp/datastore/v1/__init__.py 0 0 100% apache_beam/io/gcp/datastore/v1/datastoreio.py 170 33 81% apache_beam/io/gcp/datastore/v1/fake_datastore.py 38 2 95% apache_beam/io/gcp/datastore/v1/helper.py 126 8 94% apache_beam/io/gcp/datastore/v1/query_splitter.py 102 7 93% apache_beam/io/gcp/gcsfilesystem.py 109 11 90% apache_beam/io/gcp/gcsio.py 413 46 89% apache_beam/io/gcp/internal/__init__.py 0 0 100% apache_beam/io/gcp/internal/clients/__init__.py 0 0 100% apache_beam/io/gcp/internal/clients/bigquery/__init__.py 9 2 78% apache_beam/io/gcp/internal/clients/bigquery/bigquery_v2_client.py 116 65 44% apache_beam/io/gcp/internal/clients/bigquery/bigquery_v2_messages.py 459 0 100% apache_beam/io/gcp/internal/clients/storage/__init__.py 9 2 78% apache_beam/io/gcp/internal/clients/storage/storage_v1_client.py 165 71 57% apache_beam/io/gcp/internal/clients/storage/storage_v1_messages.py 507 0 100% apache_beam/io/gcp/pubsub.py 27 4 85% apache_beam/io/iobase.py 151 27 82% apache_beam/io/localfilesystem.py 102 2 98% apache_beam/io/range_trackers.py 265 22 92% apache_beam/io/textio.py 151 13 91% apache_beam/io/tfrecordio.py 87 4 95% apache_beam/metrics/__init__.py 1 0 100% apache_beam/metrics/cells.py 129 21 84% apache_beam/metrics/execution.py 87 2 98% apache_beam/metrics/metric.py 96 6 94% apache_beam/metrics/metricbase.py 21 3 86% apache_beam/pipeline.py 241 18 93% apache_beam/pvalue.py 146 12 92% apache_beam/runners/__init__.py 8 0 100% apache_beam/runners/api/__init__.py 0 0 100% apache_beam/runners/api/beam_runner_api_pb2.py 370 0 100% apache_beam/runners/common.py 237 35 85% apache_beam/runners/dataflow/__init__.py 0 0 100% apache_beam/runners/dataflow/dataflow_metrics.py 67 10 85% apache_beam/runners/dataflow/dataflow_runner.py 327 136 58% apache_beam/runners/dataflow/internal/__init__.py 0 0 100% apache_beam/runners/dataflow/internal/apiclient.py 351 134 62% apache_beam/runners/dataflow/internal/clients/__init__.py 0 0 100% apache_beam/runners/dataflow/internal/clients/dataflow/__init__.py 9 2 78% apache_beam/runners/dataflow/internal/clients/dataflow/dataflow_v1b3_client.py 148 40 73% apache_beam/runners/dataflow/internal/clients/dataflow/dataflow_v1b3_messages.py 1043 0 100% apache_beam/runners/dataflow/internal/clients/dataflow/message_matchers.py 62 13 79% apache_beam/runners/dataflow/internal/dependency.py 226 69 69% apache_beam/runners/dataflow/internal/names.py 54 0 100% apache_beam/runners/dataflow/native_io/__init__.py 0 0 100% apache_beam/runners/dataflow/native_io/iobase.py 95 46 52% apache_beam/runners/direct/__init__.py 2 0 100% apache_beam/runners/direct/bundle_factory.py 75 5 93% apache_beam/runners/direct/clock.py 17 6 65% apache_beam/runners/direct/consumer_tracking_pipeline_visitor.py 25 0 100% apache_beam/runners/direct/direct_metrics.py 55 0 100% apache_beam/runners/direct/direct_runner.py 83 2 98% apache_beam/runners/direct/evaluation_context.py 143 5 97% apache_beam/runners/direct/executor.py 304 14 95% apache_beam/runners/direct/helper_transforms.py 48 0 100% apache_beam/runners/direct/transform_evaluator.py 246 29 88% apache_beam/runners/direct/transform_result.py 26 0 100% apache_beam/runners/direct/watermark_manager.py 129 2 98% apache_beam/runners/pipeline_context.py 42 0 100% apache_beam/runners/runner.py 142 31 78% apache_beam/transforms/__init__.py 6 0 100% apache_beam/transforms/combiners.py 282 23 92% apache_beam/transforms/core.py 558 75 87% apache_beam/transforms/cy_combiners.py 195 102 48% apache_beam/transforms/display.py 118 11 91% apache_beam/transforms/ptransform.py 294 29 90% apache_beam/transforms/sideinputs.py 35 1 97% apache_beam/transforms/timeutil.py 57 13 77% apache_beam/transforms/trigger.py 599 72 88% apache_beam/transforms/util.py 80 1 99% apache_beam/transforms/window.py 210 25 88% apache_beam/typehints/__init__.py 3 0 100% apache_beam/typehints/decorators.py 170 9 95% apache_beam/typehints/opcodes.py 157 20 87% apache_beam/typehints/trivial_inference.py 262 38 85% apache_beam/typehints/typecheck.py 96 1 99% apache_beam/typehints/typehints.py 401 38 91% apache_beam/utils/__init__.py 2 0 100% apache_beam/utils/annotations.py 21 0 100% apache_beam/utils/counters.py 58 31 47% apache_beam/utils/path.py 6 0 100% apache_beam/utils/pipeline_options.py 169 7 96% apache_beam/utils/pipeline_options_validator.py 94 1 99% apache_beam/utils/processes.py 22 0 100% apache_beam/utils/proto_utils.py 19 0 100% apache_beam/utils/retry.py 68 3 96% apache_beam/utils/timestamp.py 105 2 98% apache_beam/utils/urns.py 7 0 100% apache_beam/utils/windowed_value.py 42 3 93% apache_beam/version.py 2 0 100% ------------------------------------------------------------------------------------------------------ TOTAL 14673 1762 88% {code} CC: [~altay] was: Some components of the Python-SDK has low coverage rate. As of now ([ea33e33|https://github.com/apache/beam/tree/ea33e33]) the test coverage looks as follows (excluding autocomplete_test.py): {code} Ran 1050 tests in 145.653s OK (skipped=14) py27gcp runtests: commands[5] | coverage report Name Stmts Miss Cover ------------------------------------------------------------------------------------------------------ apache_beam/__init__.py 12 1 92% apache_beam/coders/__init__.py 2 0 100% apache_beam/coders/coder_impl.py 414 23 94% apache_beam/coders/coders.py 392 68 83% apache_beam/coders/coders_test.py 54 3 94% apache_beam/coders/coders_test_common.py 179 3 98% apache_beam/coders/observable.py 10 0 100% apache_beam/coders/observable_test.py 28 2 93% apache_beam/coders/proto2_coder_test_messages_pb2.py 51 0 100% apache_beam/coders/slow_coders_test.py 15 3 80% apache_beam/coders/slow_stream.py 105 6 94% apache_beam/coders/standard_coders_test.py 72 15 79% apache_beam/coders/stream_test.py 127 14 89% apache_beam/coders/typecoders.py 69 6 91% apache_beam/error.py 7 0 100% apache_beam/internal/__init__.py 0 0 100% apache_beam/internal/gcp/__init__.py 0 0 100% apache_beam/internal/gcp/auth.py 75 39 48% apache_beam/internal/gcp/auth_test.py 17 2 88% apache_beam/internal/gcp/json_value.py 64 8 88% apache_beam/internal/gcp/json_value_test.py 49 3 94% apache_beam/internal/module_test.py 23 0 100% apache_beam/internal/pickler.py 96 10 90% apache_beam/internal/pickler_test.py 30 1 97% apache_beam/internal/util.py 30 0 100% apache_beam/internal/util_test.py 32 1 97% apache_beam/io/__init__.py 16 2 88% apache_beam/io/avroio.py 139 14 90% apache_beam/io/avroio_test.py 200 17 92% apache_beam/io/concat_source.py 134 10 93% apache_beam/io/concat_source_test.py 132 8 94% apache_beam/io/filebasedsource.py 112 3 97% apache_beam/io/filebasedsource_test.py 478 4 99% apache_beam/io/fileio.py 188 55 71% apache_beam/io/fileio_test.py 154 2 99% apache_beam/io/filesystem.py 184 23 88% apache_beam/io/filesystems_util.py 7 0 100% apache_beam/io/gcp/__init__.py 0 0 100% apache_beam/io/gcp/bigquery.py 418 29 93% apache_beam/io/gcp/bigquery_test.py 434 11 97% apache_beam/io/gcp/datastore/__init__.py 0 0 100% apache_beam/io/gcp/datastore/v1/__init__.py 0 0 100% apache_beam/io/gcp/datastore/v1/datastoreio.py 170 33 81% apache_beam/io/gcp/datastore/v1/datastoreio_test.py 146 5 97% apache_beam/io/gcp/datastore/v1/fake_datastore.py 38 2 95% apache_beam/io/gcp/datastore/v1/helper.py 126 8 94% apache_beam/io/gcp/datastore/v1/helper_test.py 175 4 98% apache_beam/io/gcp/datastore/v1/query_splitter.py 102 7 93% apache_beam/io/gcp/datastore/v1/query_splitter_test.py 127 3 98% apache_beam/io/gcp/gcsfilesystem.py 109 11 90% apache_beam/io/gcp/gcsfilesystem_test.py 129 2 98% apache_beam/io/gcp/gcsio.py 413 46 89% apache_beam/io/gcp/gcsio_test.py 478 5 99% apache_beam/io/gcp/internal/__init__.py 0 0 100% apache_beam/io/gcp/internal/clients/__init__.py 0 0 100% apache_beam/io/gcp/internal/clients/bigquery/__init__.py 9 2 78% apache_beam/io/gcp/internal/clients/bigquery/bigquery_v2_client.py 116 65 44% apache_beam/io/gcp/internal/clients/bigquery/bigquery_v2_messages.py 459 0 100% apache_beam/io/gcp/internal/clients/storage/__init__.py 9 2 78% apache_beam/io/gcp/internal/clients/storage/storage_v1_client.py 165 71 57% apache_beam/io/gcp/internal/clients/storage/storage_v1_messages.py 507 0 100% apache_beam/io/gcp/pubsub.py 27 4 85% apache_beam/io/gcp/pubsub_test.py 28 2 93% apache_beam/io/gcp/tests/__init__.py 0 0 100% apache_beam/io/gcp/tests/bigquery_matcher.py 47 7 85% apache_beam/io/gcp/tests/bigquery_matcher_test.py 57 4 93% apache_beam/io/iobase.py 151 27 82% apache_beam/io/localfilesystem.py 102 2 98% apache_beam/io/localfilesystem_test.py 127 8 94% apache_beam/io/range_trackers.py 265 22 92% apache_beam/io/range_trackers_test.py 346 4 99% apache_beam/io/source_test_utils.py 215 25 88% apache_beam/io/source_test_utils_test.py 64 3 95% apache_beam/io/sources_test.py 71 17 76% apache_beam/io/textio.py 151 13 91% apache_beam/io/textio_test.py 436 4 99% apache_beam/io/tfrecordio.py 87 4 95% apache_beam/io/tfrecordio_test.py 229 29 87% apache_beam/metrics/__init__.py 1 0 100% apache_beam/metrics/cells.py 129 21 84% apache_beam/metrics/cells_test.py 82 1 99% apache_beam/metrics/execution.py 87 2 98% apache_beam/metrics/execution_test.py 79 1 99% apache_beam/metrics/metric.py 96 6 94% apache_beam/metrics/metric_test.py 83 1 99% apache_beam/metrics/metricbase.py 21 3 86% apache_beam/pipeline.py 241 18 93% apache_beam/pipeline_test.py 293 24 92% apache_beam/pvalue.py 146 12 92% apache_beam/pvalue_test.py 11 1 91% apache_beam/runners/__init__.py 8 0 100% apache_beam/runners/api/__init__.py 0 0 100% apache_beam/runners/api/beam_runner_api_pb2.py 370 0 100% apache_beam/runners/common.py 237 35 85% apache_beam/runners/dataflow/__init__.py 0 0 100% apache_beam/runners/dataflow/dataflow_metrics.py 67 10 85% apache_beam/runners/dataflow/dataflow_metrics_test.py 53 1 98% apache_beam/runners/dataflow/dataflow_runner.py 327 137 58% apache_beam/runners/dataflow/dataflow_runner_test.py 88 4 95% apache_beam/runners/dataflow/internal/__init__.py 0 0 100% apache_beam/runners/dataflow/internal/apiclient.py 351 134 62% apache_beam/runners/dataflow/internal/apiclient_test.py 56 5 91% apache_beam/runners/dataflow/internal/clients/__init__.py 0 0 100% apache_beam/runners/dataflow/internal/clients/dataflow/__init__.py 9 2 78% apache_beam/runners/dataflow/internal/clients/dataflow/dataflow_v1b3_client.py 148 40 73% apache_beam/runners/dataflow/internal/clients/dataflow/dataflow_v1b3_messages.py 1043 0 100% apache_beam/runners/dataflow/internal/clients/dataflow/message_matchers.py 62 13 79% apache_beam/runners/dataflow/internal/clients/dataflow/message_matchers_test.py 36 3 92% apache_beam/runners/dataflow/internal/dependency.py 226 69 69% apache_beam/runners/dataflow/internal/dependency_test.py 249 13 95% apache_beam/runners/dataflow/internal/names.py 54 0 100% apache_beam/runners/dataflow/native_io/__init__.py 0 0 100% apache_beam/runners/dataflow/native_io/iobase.py 95 46 52% apache_beam/runners/dataflow/template_runner_test.py 37 3 92% apache_beam/runners/dataflow/test_dataflow_runner.py 15 7 53% apache_beam/runners/direct/__init__.py 2 0 100% apache_beam/runners/direct/bundle_factory.py 75 5 93% apache_beam/runners/direct/clock.py 17 6 65% apache_beam/runners/direct/consumer_tracking_pipeline_visitor.py 25 0 100% apache_beam/runners/direct/consumer_tracking_pipeline_visitor_test.py 68 6 91% apache_beam/runners/direct/direct_metrics.py 55 0 100% apache_beam/runners/direct/direct_metrics_test.py 60 1 98% apache_beam/runners/direct/direct_runner.py 83 2 98% apache_beam/runners/direct/evaluation_context.py 143 5 97% apache_beam/runners/direct/executor.py 304 14 95% apache_beam/runners/direct/helper_transforms.py 48 0 100% apache_beam/runners/direct/transform_evaluator.py 246 29 88% apache_beam/runners/direct/transform_result.py 26 0 100% apache_beam/runners/direct/watermark_manager.py 129 2 98% apache_beam/runners/pipeline_context.py 42 0 100% apache_beam/runners/pipeline_context_test.py 20 1 95% apache_beam/runners/runner.py 142 31 78% apache_beam/runners/runner_test.py 54 1 98% apache_beam/runners/test/__init__.py 5 2 60% apache_beam/test_pipeline.py 46 0 100% apache_beam/test_pipeline_test.py 53 4 92% apache_beam/tests/__init__.py 0 0 100% apache_beam/tests/pipeline_verifiers.py 60 6 90% apache_beam/tests/pipeline_verifiers_test.py 74 5 93% apache_beam/tests/test_utils.py 22 0 100% apache_beam/transforms/__init__.py 6 0 100% apache_beam/transforms/combiners.py 282 23 92% apache_beam/transforms/combiners_test.py 186 1 99% apache_beam/transforms/core.py 558 75 87% apache_beam/transforms/cy_combiners.py 195 102 48% apache_beam/transforms/display.py 118 11 91% apache_beam/transforms/display_test.py 116 20 83% apache_beam/transforms/ptransform.py 294 29 90% apache_beam/transforms/ptransform_test.py 1040 19 98% apache_beam/transforms/sideinputs.py 35 1 97% apache_beam/transforms/sideinputs_test.py 161 2 99% apache_beam/transforms/timeutil.py 57 13 77% apache_beam/transforms/trigger.py 599 72 88% apache_beam/transforms/trigger_test.py 249 97 61% apache_beam/transforms/util.py 80 1 99% apache_beam/transforms/util_test.py 23 1 96% apache_beam/transforms/window.py 210 25 88% apache_beam/transforms/window_test.py 132 1 99% apache_beam/transforms/write_ptransform_test.py 73 2 97% apache_beam/typehints/__init__.py 3 0 100% apache_beam/typehints/decorators.py 170 9 95% apache_beam/typehints/opcodes.py 157 20 87% apache_beam/typehints/trivial_inference.py 262 38 85% apache_beam/typehints/trivial_inference_test.py 71 8 89% apache_beam/typehints/typecheck.py 96 1 99% apache_beam/typehints/typed_pipeline_test.py 156 6 96% apache_beam/typehints/typehints.py 401 38 91% apache_beam/typehints/typehints_test.py 615 15 98% apache_beam/utils/__init__.py 2 0 100% apache_beam/utils/annotations.py 21 0 100% apache_beam/utils/annotations_test.py 57 3 95% apache_beam/utils/counters.py 58 31 47% apache_beam/utils/path.py 6 0 100% apache_beam/utils/path_test.py 26 1 96% apache_beam/utils/pipeline_options.py 169 7 96% apache_beam/utils/pipeline_options_test.py 79 3 96% apache_beam/utils/pipeline_options_validator.py 94 1 99% apache_beam/utils/pipeline_options_validator_test.py 141 4 97% apache_beam/utils/processes.py 22 0 100% apache_beam/utils/processes_test.py 29 1 97% apache_beam/utils/proto_utils.py 19 0 100% apache_beam/utils/retry.py 68 3 96% apache_beam/utils/retry_test.py 109 4 96% apache_beam/utils/test_stream.py 74 7 91% apache_beam/utils/test_stream_test.py 22 1 95% apache_beam/utils/timestamp.py 105 2 98% apache_beam/utils/timestamp_test.py 103 1 99% apache_beam/utils/urns.py 7 0 100% apache_beam/utils/windowed_value.py 42 3 93% apache_beam/utils/windowed_value_test.py 31 1 97% apache_beam/version.py 2 0 100% ------------------------------------------------------------------------------------------------------ TOTAL 24460 2262 91% {code} CC: [~altay] > Uber-JIRA: Extend Python-SDK's unit test coverage > ------------------------------------------------- > > Key: BEAM-1680 > URL: https://issues.apache.org/jira/browse/BEAM-1680 > Project: Beam > Issue Type: Improvement > Components: sdk-py > Reporter: Tibor Kiss > Assignee: Tibor Kiss > Priority: Minor > > Some components of the Python-SDK has low coverage rate. > As of now ([ea33e33|https://github.com/apache/beam/tree/ea33e33]) the test coverage looks as follows (excluding autocomplete_test.py): > {code} > Ran 1050 tests in 145.653s > OK (skipped=14) > py27gcp runtests: commands[5] | coverage report > Name Stmts Miss Cover > ------------------------------------------------------------------------------------------------------ > apache_beam/__init__.py 12 1 92% > apache_beam/coders/__init__.py 2 0 100% > apache_beam/coders/coder_impl.py 414 23 94% > apache_beam/coders/coders.py 392 68 83% > apache_beam/coders/observable.py 10 0 100% > apache_beam/coders/slow_stream.py 105 6 94% > apache_beam/coders/typecoders.py 69 6 91% > apache_beam/error.py 7 0 100% > apache_beam/internal/__init__.py 0 0 100% > apache_beam/internal/gcp/__init__.py 0 0 100% > apache_beam/internal/gcp/auth.py 75 39 48% > apache_beam/internal/gcp/json_value.py 64 8 88% > apache_beam/internal/pickler.py 96 10 90% > apache_beam/internal/util.py 30 0 100% > apache_beam/io/__init__.py 16 2 88% > apache_beam/io/avroio.py 139 14 90% > apache_beam/io/concat_source.py 134 10 93% > apache_beam/io/filebasedsource.py 112 3 97% > apache_beam/io/fileio.py 188 55 71% > apache_beam/io/filesystem.py 184 23 88% > apache_beam/io/filesystems_util.py 7 0 100% > apache_beam/io/gcp/__init__.py 0 0 100% > apache_beam/io/gcp/bigquery.py 418 29 93% > apache_beam/io/gcp/datastore/__init__.py 0 0 100% > apache_beam/io/gcp/datastore/v1/__init__.py 0 0 100% > apache_beam/io/gcp/datastore/v1/datastoreio.py 170 33 81% > apache_beam/io/gcp/datastore/v1/fake_datastore.py 38 2 95% > apache_beam/io/gcp/datastore/v1/helper.py 126 8 94% > apache_beam/io/gcp/datastore/v1/query_splitter.py 102 7 93% > apache_beam/io/gcp/gcsfilesystem.py 109 11 90% > apache_beam/io/gcp/gcsio.py 413 46 89% > apache_beam/io/gcp/internal/__init__.py 0 0 100% > apache_beam/io/gcp/internal/clients/__init__.py 0 0 100% > apache_beam/io/gcp/internal/clients/bigquery/__init__.py 9 2 78% > apache_beam/io/gcp/internal/clients/bigquery/bigquery_v2_client.py 116 65 44% > apache_beam/io/gcp/internal/clients/bigquery/bigquery_v2_messages.py 459 0 100% > apache_beam/io/gcp/internal/clients/storage/__init__.py 9 2 78% > apache_beam/io/gcp/internal/clients/storage/storage_v1_client.py 165 71 57% > apache_beam/io/gcp/internal/clients/storage/storage_v1_messages.py 507 0 100% > apache_beam/io/gcp/pubsub.py 27 4 85% > apache_beam/io/iobase.py 151 27 82% > apache_beam/io/localfilesystem.py 102 2 98% > apache_beam/io/range_trackers.py 265 22 92% > apache_beam/io/textio.py 151 13 91% > apache_beam/io/tfrecordio.py 87 4 95% > apache_beam/metrics/__init__.py 1 0 100% > apache_beam/metrics/cells.py 129 21 84% > apache_beam/metrics/execution.py 87 2 98% > apache_beam/metrics/metric.py 96 6 94% > apache_beam/metrics/metricbase.py 21 3 86% > apache_beam/pipeline.py 241 18 93% > apache_beam/pvalue.py 146 12 92% > apache_beam/runners/__init__.py 8 0 100% > apache_beam/runners/api/__init__.py 0 0 100% > apache_beam/runners/api/beam_runner_api_pb2.py 370 0 100% > apache_beam/runners/common.py 237 35 85% > apache_beam/runners/dataflow/__init__.py 0 0 100% > apache_beam/runners/dataflow/dataflow_metrics.py 67 10 85% > apache_beam/runners/dataflow/dataflow_runner.py 327 136 58% > apache_beam/runners/dataflow/internal/__init__.py 0 0 100% > apache_beam/runners/dataflow/internal/apiclient.py 351 134 62% > apache_beam/runners/dataflow/internal/clients/__init__.py 0 0 100% > apache_beam/runners/dataflow/internal/clients/dataflow/__init__.py 9 2 78% > apache_beam/runners/dataflow/internal/clients/dataflow/dataflow_v1b3_client.py 148 40 73% > apache_beam/runners/dataflow/internal/clients/dataflow/dataflow_v1b3_messages.py 1043 0 100% > apache_beam/runners/dataflow/internal/clients/dataflow/message_matchers.py 62 13 79% > apache_beam/runners/dataflow/internal/dependency.py 226 69 69% > apache_beam/runners/dataflow/internal/names.py 54 0 100% > apache_beam/runners/dataflow/native_io/__init__.py 0 0 100% > apache_beam/runners/dataflow/native_io/iobase.py 95 46 52% > apache_beam/runners/direct/__init__.py 2 0 100% > apache_beam/runners/direct/bundle_factory.py 75 5 93% > apache_beam/runners/direct/clock.py 17 6 65% > apache_beam/runners/direct/consumer_tracking_pipeline_visitor.py 25 0 100% > apache_beam/runners/direct/direct_metrics.py 55 0 100% > apache_beam/runners/direct/direct_runner.py 83 2 98% > apache_beam/runners/direct/evaluation_context.py 143 5 97% > apache_beam/runners/direct/executor.py 304 14 95% > apache_beam/runners/direct/helper_transforms.py 48 0 100% > apache_beam/runners/direct/transform_evaluator.py 246 29 88% > apache_beam/runners/direct/transform_result.py 26 0 100% > apache_beam/runners/direct/watermark_manager.py 129 2 98% > apache_beam/runners/pipeline_context.py 42 0 100% > apache_beam/runners/runner.py 142 31 78% > apache_beam/transforms/__init__.py 6 0 100% > apache_beam/transforms/combiners.py 282 23 92% > apache_beam/transforms/core.py 558 75 87% > apache_beam/transforms/cy_combiners.py 195 102 48% > apache_beam/transforms/display.py 118 11 91% > apache_beam/transforms/ptransform.py 294 29 90% > apache_beam/transforms/sideinputs.py 35 1 97% > apache_beam/transforms/timeutil.py 57 13 77% > apache_beam/transforms/trigger.py 599 72 88% > apache_beam/transforms/util.py 80 1 99% > apache_beam/transforms/window.py 210 25 88% > apache_beam/typehints/__init__.py 3 0 100% > apache_beam/typehints/decorators.py 170 9 95% > apache_beam/typehints/opcodes.py 157 20 87% > apache_beam/typehints/trivial_inference.py 262 38 85% > apache_beam/typehints/typecheck.py 96 1 99% > apache_beam/typehints/typehints.py 401 38 91% > apache_beam/utils/__init__.py 2 0 100% > apache_beam/utils/annotations.py 21 0 100% > apache_beam/utils/counters.py 58 31 47% > apache_beam/utils/path.py 6 0 100% > apache_beam/utils/pipeline_options.py 169 7 96% > apache_beam/utils/pipeline_options_validator.py 94 1 99% > apache_beam/utils/processes.py 22 0 100% > apache_beam/utils/proto_utils.py 19 0 100% > apache_beam/utils/retry.py 68 3 96% > apache_beam/utils/timestamp.py 105 2 98% > apache_beam/utils/urns.py 7 0 100% > apache_beam/utils/windowed_value.py 42 3 93% > apache_beam/version.py 2 0 100% > ------------------------------------------------------------------------------------------------------ > TOTAL 14673 1762 88% > {code} > CC: [~altay] -- This message was sent by Atlassian JIRA (v6.3.15#6346)