beam-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tibor Kiss (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (BEAM-1680) Uber-JIRA: Extend Python-SDK's unit test coverage
Date Fri, 10 Mar 2017 11:56:04 GMT

     [ 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 ([2c2424c|https://github.com/apache/beam/tree/2c2424c]) the test coverage looks as follows (excluding autocomplete_test.py):
{code}
Name                                                                              Stmts   Miss  Cover
-----------------------------------------------------------------------------------------------------
apache_beam/__init__.py                                                              10      1    90%
apache_beam/coders/__init__.py                                                        2      0   100%
apache_beam/coders/coder_impl.py                                                    414     23    94%
apache_beam/coders/coders.py                                                        392     84    79%
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      8    88%
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                                                     73     37    49%
apache_beam/internal/gcp/auth_test.py                                                17      2    88%
apache_beam/internal/gcp/json_value.py                                               64     54    16%
apache_beam/internal/gcp/json_value_test.py                                          49     22    55%
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                                                           15      2    87%
apache_beam/io/avroio.py                                                            138     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                                                   124      4    97%
apache_beam/io/filebasedsource_test.py                                              478      4    99%
apache_beam/io/fileio.py                                                            409     68    83%
apache_beam/io/fileio_test.py                                                       186      2    99%
apache_beam/io/gcp/__init__.py                                                        0      0   100%
apache_beam/io/gcp/bigquery.py                                                      416    327    21%
apache_beam/io/gcp/bigquery_test.py                                                 434    341    21%
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    116    32%
apache_beam/io/gcp/datastore/v1/datastoreio_test.py                                 146    112    23%
apache_beam/io/gcp/datastore/v1/fake_datastore.py                                    38     28    26%
apache_beam/io/gcp/datastore/v1/helper.py                                           126    100    21%
apache_beam/io/gcp/datastore/v1/helper_test.py                                      175    139    21%
apache_beam/io/gcp/datastore/v1/query_splitter.py                                   102     85    17%
apache_beam/io/gcp/datastore/v1/query_splitter_test.py                              127    100    21%
apache_beam/io/gcp/gcsio.py                                                         414    402     3%
apache_beam/io/gcp/gcsio_test.py                                                    478    403    16%
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/storage/__init__.py                               9      2    78%
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     30    36%
apache_beam/io/gcp/tests/bigquery_matcher_test.py                                    57     38    33%
apache_beam/io/iobase.py                                                            151     30    80%
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                                                            150     13    91%
apache_beam/io/textio_test.py                                                       436      4    99%
apache_beam/io/tfrecordio.py                                                         86      4    95%
apache_beam/io/tfrecordio_test.py                                                   220     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                                                             188     14    93%
apache_beam/pipeline_test.py                                                        285      7    98%
apache_beam/pvalue.py                                                               177     13    93%
apache_beam/pvalue_test.py                                                           36      3    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                                     49      4    92%
apache_beam/runners/dataflow/dataflow_metrics_test.py                                42      1    98%
apache_beam/runners/dataflow/dataflow_runner.py                                     324    263    19%
apache_beam/runners/dataflow/dataflow_runner_test.py                                 88     59    33%
apache_beam/runners/dataflow/internal/__init__.py                                     0      0   100%
apache_beam/runners/dataflow/internal/apiclient.py                                  342    331     3%
apache_beam/runners/dataflow/internal/apiclient_test.py                              50     31    38%
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/message_matchers.py           62     52    16%
apache_beam/runners/dataflow/internal/clients/dataflow/message_matchers_test.py      36     22    39%
apache_beam/runners/dataflow/internal/dependency.py                                 214     66    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     50    47%
apache_beam/runners/dataflow/template_runner_test.py                                 37     19    49%
apache_beam/runners/dataflow/test_dataflow_runner.py                                 15      8    47%
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                     27      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                                    134      6    96%
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                                   279     29    90%
apache_beam/runners/direct/transform_result.py                                       26      0   100%
apache_beam/runners/direct/watermark_manager.py                                     129      1    99%
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     42    70%
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                                              48      4    92%
apache_beam/tests/pipeline_verifiers_test.py                                         61      8    87%
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     20    83%
apache_beam/transforms/display_test.py                                              108     20    81%
apache_beam/transforms/ptransform.py                                                294     30    90%
apache_beam/transforms/ptransform_test.py                                          1039     19    98%
apache_beam/transforms/sideinputs.py                                                 93      2    98%
apache_beam/transforms/sideinputs_test.py                                           176      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                                                       75      5    93%
apache_beam/transforms/window.py                                                    206     25    88%
apache_beam/transforms/window_test.py                                               127      3    98%
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     37    86%
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                                               168      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      9    87%
apache_beam/utils/retry_test.py                                                     109      8    93%
apache_beam/utils/timestamp.py                                                      105      2    98%
apache_beam/utils/timestamp_test.py                                                 103      1    99%
apache_beam/utils/urns.py                                                             6      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                                                               22     17    23%
-----------------------------------------------------------------------------------------------------
TOTAL                                                                             21497   4697    78%
{code} 

CC: [~altay]

  was:
Some components of the Python-SDK has low coverage rate.
As of now ([2c2424c|https://github.com/apache/beam/tree/2c2424c) the test coverage looks as follows (excluding autocomplete_test.py):
{code}
Name                                                                              Stmts   Miss  Cover
-----------------------------------------------------------------------------------------------------
apache_beam/__init__.py                                                              10      1    90%
apache_beam/coders/__init__.py                                                        2      0   100%
apache_beam/coders/coder_impl.py                                                    414     23    94%
apache_beam/coders/coders.py                                                        392     84    79%
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      8    88%
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                                                     73     37    49%
apache_beam/internal/gcp/auth_test.py                                                17      2    88%
apache_beam/internal/gcp/json_value.py                                               64     54    16%
apache_beam/internal/gcp/json_value_test.py                                          49     22    55%
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                                                           15      2    87%
apache_beam/io/avroio.py                                                            138     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                                                   124      4    97%
apache_beam/io/filebasedsource_test.py                                              478      4    99%
apache_beam/io/fileio.py                                                            409     68    83%
apache_beam/io/fileio_test.py                                                       186      2    99%
apache_beam/io/gcp/__init__.py                                                        0      0   100%
apache_beam/io/gcp/bigquery.py                                                      416    327    21%
apache_beam/io/gcp/bigquery_test.py                                                 434    341    21%
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    116    32%
apache_beam/io/gcp/datastore/v1/datastoreio_test.py                                 146    112    23%
apache_beam/io/gcp/datastore/v1/fake_datastore.py                                    38     28    26%
apache_beam/io/gcp/datastore/v1/helper.py                                           126    100    21%
apache_beam/io/gcp/datastore/v1/helper_test.py                                      175    139    21%
apache_beam/io/gcp/datastore/v1/query_splitter.py                                   102     85    17%
apache_beam/io/gcp/datastore/v1/query_splitter_test.py                              127    100    21%
apache_beam/io/gcp/gcsio.py                                                         414    402     3%
apache_beam/io/gcp/gcsio_test.py                                                    478    403    16%
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/storage/__init__.py                               9      2    78%
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     30    36%
apache_beam/io/gcp/tests/bigquery_matcher_test.py                                    57     38    33%
apache_beam/io/iobase.py                                                            151     30    80%
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                                                            150     13    91%
apache_beam/io/textio_test.py                                                       436      4    99%
apache_beam/io/tfrecordio.py                                                         86      4    95%
apache_beam/io/tfrecordio_test.py                                                   220     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                                                             188     14    93%
apache_beam/pipeline_test.py                                                        285      7    98%
apache_beam/pvalue.py                                                               177     13    93%
apache_beam/pvalue_test.py                                                           36      3    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                                     49      4    92%
apache_beam/runners/dataflow/dataflow_metrics_test.py                                42      1    98%
apache_beam/runners/dataflow/dataflow_runner.py                                     324    263    19%
apache_beam/runners/dataflow/dataflow_runner_test.py                                 88     59    33%
apache_beam/runners/dataflow/internal/__init__.py                                     0      0   100%
apache_beam/runners/dataflow/internal/apiclient.py                                  342    331     3%
apache_beam/runners/dataflow/internal/apiclient_test.py                              50     31    38%
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/message_matchers.py           62     52    16%
apache_beam/runners/dataflow/internal/clients/dataflow/message_matchers_test.py      36     22    39%
apache_beam/runners/dataflow/internal/dependency.py                                 214     66    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     50    47%
apache_beam/runners/dataflow/template_runner_test.py                                 37     19    49%
apache_beam/runners/dataflow/test_dataflow_runner.py                                 15      8    47%
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                     27      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                                    134      6    96%
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                                   279     29    90%
apache_beam/runners/direct/transform_result.py                                       26      0   100%
apache_beam/runners/direct/watermark_manager.py                                     129      1    99%
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     42    70%
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                                              48      4    92%
apache_beam/tests/pipeline_verifiers_test.py                                         61      8    87%
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     20    83%
apache_beam/transforms/display_test.py                                              108     20    81%
apache_beam/transforms/ptransform.py                                                294     30    90%
apache_beam/transforms/ptransform_test.py                                          1039     19    98%
apache_beam/transforms/sideinputs.py                                                 93      2    98%
apache_beam/transforms/sideinputs_test.py                                           176      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                                                       75      5    93%
apache_beam/transforms/window.py                                                    206     25    88%
apache_beam/transforms/window_test.py                                               127      3    98%
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     37    86%
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                                               168      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      9    87%
apache_beam/utils/retry_test.py                                                     109      8    93%
apache_beam/utils/timestamp.py                                                      105      2    98%
apache_beam/utils/timestamp_test.py                                                 103      1    99%
apache_beam/utils/urns.py                                                             6      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                                                               22     17    23%
-----------------------------------------------------------------------------------------------------
TOTAL                                                                             21497   4697    78%
{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 ([2c2424c|https://github.com/apache/beam/tree/2c2424c]) the test coverage looks as follows (excluding autocomplete_test.py):
> {code}
> Name                                                                              Stmts   Miss  Cover
> -----------------------------------------------------------------------------------------------------
> apache_beam/__init__.py                                                              10      1    90%
> apache_beam/coders/__init__.py                                                        2      0   100%
> apache_beam/coders/coder_impl.py                                                    414     23    94%
> apache_beam/coders/coders.py                                                        392     84    79%
> 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      8    88%
> 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                                                     73     37    49%
> apache_beam/internal/gcp/auth_test.py                                                17      2    88%
> apache_beam/internal/gcp/json_value.py                                               64     54    16%
> apache_beam/internal/gcp/json_value_test.py                                          49     22    55%
> 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                                                           15      2    87%
> apache_beam/io/avroio.py                                                            138     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                                                   124      4    97%
> apache_beam/io/filebasedsource_test.py                                              478      4    99%
> apache_beam/io/fileio.py                                                            409     68    83%
> apache_beam/io/fileio_test.py                                                       186      2    99%
> apache_beam/io/gcp/__init__.py                                                        0      0   100%
> apache_beam/io/gcp/bigquery.py                                                      416    327    21%
> apache_beam/io/gcp/bigquery_test.py                                                 434    341    21%
> 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    116    32%
> apache_beam/io/gcp/datastore/v1/datastoreio_test.py                                 146    112    23%
> apache_beam/io/gcp/datastore/v1/fake_datastore.py                                    38     28    26%
> apache_beam/io/gcp/datastore/v1/helper.py                                           126    100    21%
> apache_beam/io/gcp/datastore/v1/helper_test.py                                      175    139    21%
> apache_beam/io/gcp/datastore/v1/query_splitter.py                                   102     85    17%
> apache_beam/io/gcp/datastore/v1/query_splitter_test.py                              127    100    21%
> apache_beam/io/gcp/gcsio.py                                                         414    402     3%
> apache_beam/io/gcp/gcsio_test.py                                                    478    403    16%
> 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/storage/__init__.py                               9      2    78%
> 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     30    36%
> apache_beam/io/gcp/tests/bigquery_matcher_test.py                                    57     38    33%
> apache_beam/io/iobase.py                                                            151     30    80%
> 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                                                            150     13    91%
> apache_beam/io/textio_test.py                                                       436      4    99%
> apache_beam/io/tfrecordio.py                                                         86      4    95%
> apache_beam/io/tfrecordio_test.py                                                   220     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                                                             188     14    93%
> apache_beam/pipeline_test.py                                                        285      7    98%
> apache_beam/pvalue.py                                                               177     13    93%
> apache_beam/pvalue_test.py                                                           36      3    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                                     49      4    92%
> apache_beam/runners/dataflow/dataflow_metrics_test.py                                42      1    98%
> apache_beam/runners/dataflow/dataflow_runner.py                                     324    263    19%
> apache_beam/runners/dataflow/dataflow_runner_test.py                                 88     59    33%
> apache_beam/runners/dataflow/internal/__init__.py                                     0      0   100%
> apache_beam/runners/dataflow/internal/apiclient.py                                  342    331     3%
> apache_beam/runners/dataflow/internal/apiclient_test.py                              50     31    38%
> 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/message_matchers.py           62     52    16%
> apache_beam/runners/dataflow/internal/clients/dataflow/message_matchers_test.py      36     22    39%
> apache_beam/runners/dataflow/internal/dependency.py                                 214     66    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     50    47%
> apache_beam/runners/dataflow/template_runner_test.py                                 37     19    49%
> apache_beam/runners/dataflow/test_dataflow_runner.py                                 15      8    47%
> 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                     27      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                                    134      6    96%
> 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                                   279     29    90%
> apache_beam/runners/direct/transform_result.py                                       26      0   100%
> apache_beam/runners/direct/watermark_manager.py                                     129      1    99%
> 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     42    70%
> 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                                              48      4    92%
> apache_beam/tests/pipeline_verifiers_test.py                                         61      8    87%
> 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     20    83%
> apache_beam/transforms/display_test.py                                              108     20    81%
> apache_beam/transforms/ptransform.py                                                294     30    90%
> apache_beam/transforms/ptransform_test.py                                          1039     19    98%
> apache_beam/transforms/sideinputs.py                                                 93      2    98%
> apache_beam/transforms/sideinputs_test.py                                           176      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                                                       75      5    93%
> apache_beam/transforms/window.py                                                    206     25    88%
> apache_beam/transforms/window_test.py                                               127      3    98%
> 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     37    86%
> 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                                               168      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      9    87%
> apache_beam/utils/retry_test.py                                                     109      8    93%
> apache_beam/utils/timestamp.py                                                      105      2    98%
> apache_beam/utils/timestamp_test.py                                                 103      1    99%
> apache_beam/utils/urns.py                                                             6      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                                                               22     17    23%
> -----------------------------------------------------------------------------------------------------
> TOTAL                                                                             21497   4697    78%
> {code} 
> CC: [~altay]



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message