opteryx icon indicating copy to clipboard operation
opteryx copied to clipboard

🪲 test coverage is under 95% (92%)

Open joocer opened this issue 1 year ago • 0 comments
trafficstars

https://github.com/mabel-dev/opteryx/actions/runs/10274964773/job/28432725873

modules with 100% removed:

Name                                                                              Stmts   Miss  Cover   Missing
---------------------------------------------------------------------------------------------------------------
opteryx/__init__.py                                                                  52      8    85%   2[20](https://github.com/mabel-dev/opteryx/actions/runs/10274964773/job/28432725873#step:9:21)-232
opteryx/__main__.py                                                                  63      6    90%   148-153
opteryx/config.py                                                                    95      8    92%   46, 59, 61, 63, 67, 94-96
opteryx/connectors/__init__.py                                                       68     13    81%   55, 77-78, 80-84, 87-89, 95, 106
opteryx/connectors/aws_s3_connector.py                                               91     12    87%   100-101, 110-111, 113-114, 117, 1[21](https://github.com/mabel-dev/opteryx/actions/runs/10274964773/job/28432725873#step:9:22), 127, 140-142
opteryx/connectors/base/base_connector.py                                            54      6    89%   39, 59, 115-117, 155
opteryx/connectors/capabilities/asynchronous.py                                       5      1    80%   19
opteryx/connectors/capabilities/cacheable.py                                        107     61    43%   36, 48-107, 148-156, 164-167, 172-174, 182-189
opteryx/connectors/capabilities/partitionable.py                                     16      2    88%   30, 37
opteryx/connectors/capabilities/predicate_pushable.py                                42      6    86%   85, 87, 91, 93, 100, 110
opteryx/connectors/cql_connector.py                                                  83     55    34%   44-52, 88-108, 117-167, 170-197
opteryx/connectors/disk_connector.py                                                 87     11    87%   118, 121-123, 183-184, 186-187, 190, 192, 202
opteryx/connectors/file_connector.py                                                 48      5    90%   34, 63, 99-100, 113
opteryx/connectors/gcp_cloudstorage_connector.py                                    128     12    91%   145, 175, 179-181, [22](https://github.com/mabel-dev/opteryx/actions/runs/10274964773/job/28432725873#step:9:23)9, 261-262, 265-266, 274, 280
opteryx/connectors/gcp_firestore_connector.py                                        30      2    93%   98, 104
opteryx/connectors/mongodb_connector.py                                              38      2    95%   80, 86
opteryx/connectors/sql_connector.py                                                 115      3    97%   219, 245, 256
opteryx/connectors/virtual_data.py                                                   53      4    92%   56, 73, 128-129
opteryx/constants/character_set.py                                                  288      8    97%   68-70, 74, 77, 80, 310, 314
opteryx/cursor.py                                                                   169     15    91%   54, 194, 266-279, 289, 293, 299-301, 331, 398
opteryx/custom_types/intervals.py                                                    38     10    74%   75-96
opteryx/debugging.py                                                                 40      5    88%   45, 72, 80-82
opteryx/exceptions.py                                                               118      9    92%   185, 206-208, 221, 225, 311, 319, 327
opteryx/functions/__init__.py                                                       128     10    92%   47, 70, 74-75, 131, 182, 206, 219, [23](https://github.com/mabel-dev/opteryx/actions/runs/10274964773/job/28432725873#step:9:24)3, 272
opteryx/functions/date_functions.py                                                  49      4    92%   71, 84, 129, 132
opteryx/functions/number_functions.py                                                25      1    96%   63
opteryx/functions/other_functions.py                                                113     17    85%   89, 101, 147, 165-174, 194, 201, 204, 219, 233
opteryx/functions/string_functions.py                                               192     17    91%   72, 82, 92, 102, 112, 122, 132, 142, 154, 166, 178, 190, 202, 227, 264, 355, 360
opteryx/managers/cache/memcached.py                                                  73     26    64%   38, 44, 48, 52-53, 65-67, 86, 98-99, 125-135, 138-147
opteryx/managers/cache/null_cache.py                                                  8      1    88%   [24](https://github.com/mabel-dev/opteryx/actions/runs/10274964773/job/28432725873#step:9:25)
opteryx/managers/cache/redis.py                                                      59     26    56%   37, 41-42, 61, 72-73, 80-92, 95-109, 112
opteryx/managers/catalog/__init__.py                                                  7      2    71%   22-24
opteryx/managers/catalog/catalog_provider.py                                          8      3    62%   18, 21, 24
opteryx/managers/catalog/tarchia_provider.py                                         93     [25](https://github.com/mabel-dev/opteryx/actions/runs/10274964773/job/28432725873#step:9:26)    73%   47-48, 58, 61, 83, 87, 107-112, 116, 124, 131, 147, 152-157, 169-173
opteryx/managers/expression/__init__.py                                             225      6    97%   191, 270, 296, 299-300, 380
opteryx/managers/expression/binary_operators.py                                      43      3    93%   92, 99-101
opteryx/managers/expression/formatter.py                                             91      1    99%   52
opteryx/managers/expression/ops.py                                                  120      7    94%   75-85, 201
opteryx/managers/expression/unary_operations.py                                      20      1    95%   40
opteryx/managers/kvstores/base_kv_store.py                                           13      4    69%   35, 41, 49, 52
opteryx/managers/permissions/__init__.py                                             24      6    75%   17-21, 31
opteryx/managers/schemes/base_partition_scheme.py                                    13      5    62%   29-32, 44
opteryx/managers/schemes/mabel_partitions.py                                         92      2    98%   58, 97
opteryx/models/execution_tree.py                                                     65      3    95%   112, 118, 127
opteryx/models/logical_column.py                                                     29      1    97%   85
opteryx/models/query_statistics.py                                                   43      5    88%   25, 30, 42, 63, 66
opteryx/operators/aggregate_node.py                                                 113      4    96%   98, 114, 149, 227
opteryx/operators/async_read_node.py                                                122      1    99%   202
opteryx/operators/base_plan_node.py                                                  39      1    97%   82
opteryx/operators/cross_join_node.py                                                132     12    91%   67, 86, 115-117, 128-140, 257, [26](https://github.com/mabel-dev/opteryx/actions/runs/10274964773/job/28432725873#step:9:27)2
opteryx/operators/exit_node.py                                                       43      1    98%   93
opteryx/operators/explain_node.py                                                    12      2    83%   48-49
opteryx/operators/filter_node.py                                                     44      2    95%   82-83
opteryx/operators/function_dataset_node.py                                           62      2    97%   43, 126
opteryx/operators/inner_join_node_single.py                                         104     20    81%   72-80, 88, 135-146
opteryx/operators/noop_node.py                                                       12      4    67%   30, 46-48
opteryx/operators/outer_join_node.py                                                140      2    99%   86, 259
opteryx/operators/read_node.py                                                       70      4    94%   63-64, 88, 98
opteryx/operators/show_columns_node.py                                               49      2    96%   63, 98
opteryx/operators/show_value_node.py                                                 22      1    95%   41
opteryx/operators/sort_node.py                                                       40      2    95%   86-87
opteryx/planner/ast_rewriter.py                                                     106      4    96%   91, 99, 135, 157
opteryx/planner/binder/__init__.py                                                   12      1    92%   88
opteryx/planner/binder/binder.py                                                    153      2    99%   55, 61
opteryx/planner/binder/binder_visitor.py                                            496     10    98%   408, 538, 872, 890-891, 976-986
opteryx/planner/binder/operator_map.py                                               42      2    95%   225, 232
opteryx/planner/cost_based_optimizer/__init__.py                                     32      2    94%   150-151
opteryx/planner/cost_based_optimizer/strategies/constant_folding.py                  64      7    89%   57, 62, 67-70, 88, 97
opteryx/planner/cost_based_optimizer/strategies/optimization_strategy.py             16      2    88%   36, 41
opteryx/planner/cost_based_optimizer/strategies/predicate_pushdown.py               221     20    91%   68-73, 114-123, 233, 278, 421-422, 427-431, 442
opteryx/planner/cost_based_optimizer/strategies/split_conjunctive_predicates.py      43      1    98%   27
opteryx/planner/logical_planner/logical_planner.py                                  626     31    95%   206-208, 215, 235-237, 382, 455-456, 741-758, 786, 795-796, 815, 820-821
opteryx/planner/logical_planner/logical_planner_builders.py                         338     12    96%   66, 196, 292, 417, 420, 426, 617, 631, 648, 675-676, 693
opteryx/planner/temporary_physical_planner.py                                        64      1    98%   95
opteryx/planner/views/__init__.py                                                    22      4    82%   20-24
opteryx/shared/buffer_pool.py                                                        44     13    70%   52, 68-84, 91, 98
opteryx/shared/rolling_log.py                                                        30     19    37%   30-38, 42-52, 69, 73
opteryx/shared/variables.py                                                          56      4    93%   109, 132, 136, 142
opteryx/third_party/query_builder/builder.py                                         96      1    99%   79
opteryx/third_party/travers/graph.py                                                200     14    93%   118-119, 334, 396, 403, 478, 485, 519, 521, 523, 5[28](https://github.com/mabel-dev/opteryx/actions/runs/10274964773/job/28432725873#step:9:29)-531
opteryx/utils/__init__.py                                                            39      1    97%   74
opteryx/utils/arrow.py                                                               67      3    96%   39-40, 71
opteryx/utils/dates.py                                                              101      6    94%   71-72, 148, 163, 214-215
opteryx/utils/file_decoders.py                                                      195     13    93%   91, 98, 106, 215-226, [29](https://github.com/mabel-dev/opteryx/actions/runs/10274964773/job/28432725873#step:9:30)2, 413, 438, 448
opteryx/utils/lru_2.py                                                               73      4    95%   105, 108-110
opteryx/utils/memory_view_stream.py                                                  46      4    91%   80-83
---------------------------------------------------------------------------------------------------------------
TOTAL                                                                              8807    681    92%

joocer avatar Aug 06 '24 23:08 joocer