Skip to content

test: rebased tests following downloadlink move to assets - #2327

Merged
sbrunato merged 1 commit into
v5.x.xfrom
v5-rebased-test
Aug 26, 2026
Merged

sbrunato merged 1 commit into
v5.x.xfrom
v5-rebased-test

Conversation

@sbrunato

Copy link
Copy Markdown
Collaborator

Rebases tests added in #2326 , to adapt to changes introduced by download-link move to assets in #2091

@github-actions

Copy link
Copy Markdown
Contributor

Benchmark comparison

Compared baseline: origin/v5.x.x
Compared candidate: ea741d9


------------------------------- benchmark: 9 tests, 2 sources -------------------------------
Name (time in us)                                 baseline Median  candidate Median   ΔMedian
---------------------------------------------------------------------------------------------
test_benchmark_eoproduct_instantiation                    29.2750           28.9640     -1.1%
test_benchmark_eoproduct_assets_population               203.5320          202.4490     -0.5%
test_benchmark_stac_reader_fetch_recursive             4,095.1735        4,042.7930     -1.3%
test_benchmark_cli_version                            15,769.9980       15,611.4915     -1.0%
test_benchmark_cli_without_args_subprocess           134,997.4055      132,587.7305     -1.8%
test_benchmark_cli_list_collections                  210,229.2330      203,046.5570     -3.4%
test_benchmark_core_search_with_provider             254,145.8360      252,880.3780     -0.5%
test_benchmark_core_search_with_count                299,281.0900      302,282.4290     +1.0%
test_benchmark_eodag_instantiation_subprocess      1,118,673.4100    1,080,435.6010     -3.4%
---------------------------------------------------------------------------------------------

Legend:
  Cyan: reference source for comparison. Green: improvement, Red: regression.
  Δ: percentage change from reference source.

@github-actions

Copy link
Copy Markdown
Contributor

Test Results

    4 files  +    3      4 suites  +3   5m 31s ⏱️ + 4m 50s
  949 tests  -     1    949 ✅ +    3  0 💤 ±0  0 ❌  - 4 
3 874 runs  +2 885  3 872 ✅ +2 887  2 💤 +2  0 ❌  - 4 

Results for commit 9282a86. ± Comparison against base commit 3202d20.

@github-actions

Copy link
Copy Markdown
Contributor

badge

Code Coverage (Ubuntu)

Details
Filename                                     Stmts    Miss  Cover    Missing
-----------------------------------------  -------  ------  -------  --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
__init__.py                                     19       2  89.47%   60, 69
cli.py                                         263      11  95.82%   107-118, 384, 689
config.py                                      336      28  91.67%   71-73, 76, 79, 82, 86, 90, 94-96, 590-592, 643, 746-748, 772-776, 795, 803, 833-838, 840
crunch.py                                        2       0  100.00%
api/__init__.py                                  0       0  100.00%
api/collection.py                              278      10  96.40%   195, 200, 312, 409, 427, 562, 657, 660, 678, 681
api/core.py                                    783      22  97.19%   262, 548, 596, 639, 679, 699, 770, 904-908, 930, 1083, 1088, 1350, 1421, 1721, 1946, 2103, 2107, 2220
api/provider.py                                389      42  89.20%   128-132, 199, 203-204, 341-362, 430, 546, 550-551, 556-559, 570, 646-656, 841-842, 890, 897, 911, 934-937, 971-978, 982-983
api/search_result.py                           138      12  91.30%   111, 123, 133, 154, 208, 266, 278, 406, 461-464
api/product/__init__.py                         26       4  84.62%   51-54
api/product/_assets.py                         155       6  96.13%   127, 242, 376-377, 389-393
api/product/_product.py                        354      26  92.66%   226, 382, 408-411, 448, 467-468, 577, 606, 613, 653, 703, 709, 849, 893-896, 904-907, 965, 1031, 1043, 1110
api/product/metadata_mapping.py                911      73  91.99%   137-139, 262-267, 291, 350-351, 431, 451-452, 457, 520-521, 558, 579-582, 605, 617-618, 659, 682, 707-710, 712-717, 796, 802, 818, 826, 857, 862-875, 1079, 1232, 1254, 1263-1267, 1285-1290, 1423, 1446, 1455, 1477, 1482, 1549, 1646, 1663, 1675, 1701, 1715, 1813, 1908, 2004, 2070, 2115
api/product/drivers/__init__.py                 11       0  100.00%
api/product/drivers/base.py                     32       0  100.00%
api/product/drivers/generic.py                  11       0  100.00%
api/product/drivers/sentinel1.py                33       0  100.00%
api/product/drivers/sentinel2.py                33       0  100.00%
plugins/__init__.py                              0       0  100.00%
plugins/base.py                                 38       3  92.11%   50, 84-85
plugins/manager.py                             192      17  91.15%   103-108, 138, 220, 242, 260-261, 273, 312-313, 413-416, 428-429
plugins/apis/__init__.py                         0       0  100.00%
plugins/apis/base.py                             8       0  100.00%
plugins/apis/ecmwf.py                           95      10  89.47%   163-165, 213-214, 240-242, 273-274
plugins/apis/usgs.py                           179      27  84.92%   138-139, 160, 248, 281, 324-326, 331, 359-360, 365, 395-402, 413-418, 440-446
plugins/authentication/__init__.py               6       1  83.33%   32
plugins/authentication/aws_auth.py             124      32  74.19%   69-70, 142-149, 177-203, 226, 258-262, 279, 303, 319-320
plugins/authentication/base.py                  26       4  84.62%   58, 71, 94, 108
plugins/authentication/eoiam.py                 98       1  98.98%   170
plugins/authentication/generic.py               16       3  81.25%   50, 55, 65
plugins/authentication/header.py                19       0  100.00%
plugins/authentication/keycloak.py              46       4  91.30%   154, 177-182
plugins/authentication/openid_connect.py       243      21  91.36%   101-102, 110-128, 175, 183, 197, 217, 363-366, 392, 433, 623-626
plugins/authentication/qsauth.py                34       1  97.06%   91
plugins/authentication/sas_auth.py              58       3  94.83%   68, 89, 135
plugins/authentication/token.py                141       9  93.62%   192, 229, 309-310, 358-362
plugins/authentication/token_exchange.py        36       3  91.67%   75, 114-115
plugins/crunch/__init__.py                       6       0  100.00%
plugins/crunch/base.py                          12       0  100.00%
plugins/crunch/filter_date.py                   47       0  100.00%
plugins/crunch/filter_latest_intersect.py       52       6  88.46%   87-88, 95-96, 98-102
plugins/crunch/filter_latest_tpl_name.py        35       0  100.00%
plugins/crunch/filter_overlap.py                66      10  84.85%   118-121, 137-163
plugins/crunch/filter_property.py               30       2  93.33%   81-84
plugins/download/__init__.py                     4       0  100.00%
plugins/download/aws.py                        404      42  89.60%   271, 305, 354-357, 387-388, 396-400, 480-483, 523-525, 529, 560-561, 567-571, 602, 667-675, 763, 780, 795, 827-828, 891, 917, 962-964, 1016
plugins/download/base.py                       297      24  91.92%   148, 178, 394-395, 439, 473, 550-554, 584, 619-620, 645-654, 713, 734, 756, 764
plugins/download/http.py                       581      74  87.26%   242, 284-287, 349-352, 355, 362-367, 399-400, 417, 432, 493, 528, 542, 556, 569-573, 589-594, 605, 624, 660-663, 684, 694, 701, 757, 865, 897, 929-938, 974, 1019-1024, 1033, 1048-1050, 1054, 1057, 1072-1073, 1083, 1158, 1210, 1253-1254, 1266, 1276, 1332-1333, 1363, 1390, 1410, 1490-1491
plugins/search/__init__.py                      25       0  100.00%
plugins/search/base.py                         273      18  93.41%   120, 124, 148-154, 163, 225-228, 265, 283, 378, 410, 431, 564
plugins/search/build_search_result.py          558      41  92.65%   257, 427-435, 517-518, 567, 579-581, 605, 607, 673, 681-685, 705, 715, 741, 790, 815, 877-882, 943, 970, 973, 1090, 1230, 1245, 1248, 1273, 1447-1448, 1492, 1501-1503, 1563
plugins/search/cop_ghsl.py                     422      32  92.42%   73-74, 109-110, 174, 176, 218, 299, 301-302, 319, 365, 385-389, 406, 430-433, 451, 492, 508, 547, 577-578, 592-594, 605-607, 653, 689, 693
plugins/search/cop_marine.py                   294      34  88.44%   55, 63-65, 81, 103, 105, 108, 174-175, 193, 226, 232, 236, 258-259, 272, 313, 323, 336, 344, 350-354, 371, 403-406, 421, 491, 503, 547-548
plugins/search/creodias_s3.py                   29       1  96.55%   59
plugins/search/csw.py                          118      12  89.83%   121, 165, 203, 214-225, 230
plugins/search/eumetsat_ds.py                   21       0  100.00%
plugins/search/geodes.py                        77       0  100.00%
plugins/search/oar.py                           82      13  84.15%   50, 57-60, 172-180, 186-188, 195
plugins/search/qssearch.py                     875      86  90.17%   381, 540-541, 564-565, 577-581, 874, 940, 974, 1052, 1073, 1076-1077, 1095, 1104-1105, 1123, 1194, 1203, 1215-1225, 1234, 1249, 1258, 1271, 1293, 1316, 1389, 1427, 1500-1501, 1503-1505, 1507-1508, 1780, 1783, 1787-1788, 1807-1810, 1822, 1842-1861, 1869-1875, 1933-1939, 1946, 1984, 2023, 2028-2029, 2050, 2170, 2174, 2185, 2209, 2222, 2230-2240, 2266
plugins/search/stac_list_assets.py              25       0  100.00%
plugins/search/static_stac_search.py            84      17  79.76%   99-127, 166-169, 182
resources/__init__.py                            0       0  100.00%
resources/shp/__init__.py                        0       0  100.00%
types/__init__.py                              180      43  76.11%   58, 71-75, 86-98, 126-128, 135-140, 155, 165, 247, 280, 290-306, 311, 313, 335, 340, 348, 358
types/bbox.py                                   39       0  100.00%
types/download_args.py                          10       0  100.00%
types/queryables.py                            113       0  100.00%
types/search_args.py                            71      18  74.65%   67-71, 78-95, 110
types/stac_extensions.py                       162       4  97.53%   455-461, 640
types/stac_metadata.py                         159      22  86.16%   98, 120, 153, 186-188, 202-216, 225-232, 259-262
utils/__init__.py                              658      19  97.11%   57, 216, 223, 239, 274, 351, 606, 646-647, 676, 1060-1063, 1133-1134, 1166, 1373, 1481, 1613
utils/cache.py                                  22       0  100.00%
utils/dates.py                                 191       1  99.48%   182
utils/deserialize.py                            74      10  86.49%   53, 55, 103, 108-109, 148, 162, 184-185, 191
utils/env.py                                     3       0  100.00%
utils/exceptions.py                             58       0  100.00%
utils/free_text_search.py                       65       2  96.92%   83, 91
utils/import_system.py                          28       6  78.57%   65-73
utils/logging.py                                42       3  92.86%   42-43, 61
utils/notebook.py                               44      13  70.45%   27, 41, 58-62, 72-78, 86-87
utils/repr.py                                   38       0  100.00%
utils/requests.py                               55       6  89.09%   94, 110, 118-120, 128
utils/s3.py                                    269      11  95.91%   204-205, 246, 262, 284, 506, 557-558, 626, 701, 727
utils/stac_reader.py                           113      42  62.83%   63-85, 101, 138, 154-159, 206-216, 226-256
utils/streamresponse.py                         91       4  95.60%   106, 166, 175, 187
utils/yaml.py                                   42       7  83.33%   49, 65, 70-74
TOTAL                                        12077     998  91.74%

Diff against develop

Filename                                 Stmts    Miss  Cover
-------------------------------------  -------  ------  --------
cli.py                                      +4       0  +0.07%
api/collection.py                         +127      +3  +1.04%
api/core.py                                 +6       0  +0.02%
api/product/_assets.py                     +77      +1  +2.54%
api/product/_product.py                     +3       0  +0.07%
api/product/metadata_mapping.py            +24     +16  -1.58%
plugins/apis/usgs.py                        +4      +2  -0.79%
plugins/search/base.py                     +53      -2  +2.50%
plugins/search/build_search_result.py       +3       0  +0.04%
plugins/search/cop_ghsl.py                 +12      +5  -0.99%
plugins/search/cop_marine.py                -3       0  -0.11%
plugins/search/eumetsat_ds.py               -3       0  +100.00%
plugins/search/geodes.py                   +11       0  +100.00%
plugins/search/qssearch.py                 -14      +2  -0.38%
utils/s3.py                                 +3       0  +0.05%
TOTAL                                     +307     +27  -0.01%

Results for commit: 9282a86

Minimum allowed coverage is 70%

♻️ This comment has been updated with latest results

@github-actions

Copy link
Copy Markdown
Contributor

badge

Code Coverage (Windows)

Details
Filename                                     Stmts    Miss  Cover    Missing
-----------------------------------------  -------  ------  -------  --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
__init__.py                                     19       2  89.47%   60, 69
cli.py                                         263      11  95.82%   107-118, 384, 689
config.py                                      336      28  91.67%   71-73, 76, 79, 82, 86, 90, 94-96, 590-592, 643, 746-748, 772-776, 795, 803, 833-838, 840
crunch.py                                        2       0  100.00%
api/__init__.py                                  0       0  100.00%
api/collection.py                              278      10  96.40%   195, 200, 312, 409, 427, 562, 657, 660, 678, 681
api/core.py                                    783      22  97.19%   262, 548, 596, 639, 679, 699, 770, 904-908, 930, 1083, 1088, 1350, 1421, 1721, 1946, 2103, 2107, 2220
api/provider.py                                389      42  89.20%   128-132, 199, 203-204, 341-362, 430, 546, 550-551, 556-559, 570, 646-656, 841-842, 890, 897, 911, 934-937, 971-978, 982-983
api/search_result.py                           138      12  91.30%   111, 123, 133, 154, 208, 266, 278, 406, 461-464
api/product/__init__.py                         26       4  84.62%   51-54
api/product/_assets.py                         155       6  96.13%   127, 242, 376-377, 389-393
api/product/_product.py                        354      26  92.66%   226, 382, 408-411, 448, 467-468, 577, 606, 613, 653, 703, 709, 849, 893-896, 904-907, 965, 1031, 1043, 1110
api/product/metadata_mapping.py                911      73  91.99%   137-139, 262-267, 291, 350-351, 431, 451-452, 457, 520-521, 558, 579-582, 605, 617-618, 659, 682, 707-710, 712-717, 796, 802, 818, 826, 857, 862-875, 1079, 1232, 1254, 1263-1267, 1285-1290, 1423, 1446, 1455, 1477, 1482, 1549, 1646, 1663, 1675, 1701, 1715, 1813, 1908, 2004, 2070, 2115
api/product/drivers/__init__.py                 11       0  100.00%
api/product/drivers/base.py                     32       0  100.00%
api/product/drivers/generic.py                  11       0  100.00%
api/product/drivers/sentinel1.py                33       0  100.00%
api/product/drivers/sentinel2.py                33       0  100.00%
plugins/__init__.py                              0       0  100.00%
plugins/base.py                                 38       3  92.11%   50, 84-85
plugins/manager.py                             192      17  91.15%   103-108, 138, 220, 242, 260-261, 273, 312-313, 413-416, 428-429
plugins/apis/__init__.py                         0       0  100.00%
plugins/apis/base.py                             8       0  100.00%
plugins/apis/ecmwf.py                           95      10  89.47%   163-165, 213-214, 240-242, 273-274
plugins/apis/usgs.py                           179      27  84.92%   138-139, 160, 248, 281, 324-326, 331, 359-360, 365, 395-402, 413-418, 440-446
plugins/authentication/__init__.py               6       1  83.33%   32
plugins/authentication/aws_auth.py             124      32  74.19%   69-70, 142-149, 177-203, 226, 258-262, 279, 303, 319-320
plugins/authentication/base.py                  26       4  84.62%   58, 71, 94, 108
plugins/authentication/eoiam.py                 98       1  98.98%   170
plugins/authentication/generic.py               16       3  81.25%   50, 55, 65
plugins/authentication/header.py                19       0  100.00%
plugins/authentication/keycloak.py              46       4  91.30%   154, 177-182
plugins/authentication/openid_connect.py       243      21  91.36%   101-102, 110-128, 175, 183, 197, 217, 363-366, 392, 433, 623-626
plugins/authentication/qsauth.py                34       1  97.06%   91
plugins/authentication/sas_auth.py              58       3  94.83%   68, 89, 135
plugins/authentication/token.py                141       9  93.62%   192, 229, 309-310, 358-362
plugins/authentication/token_exchange.py        36       3  91.67%   75, 114-115
plugins/crunch/__init__.py                       6       0  100.00%
plugins/crunch/base.py                          12       0  100.00%
plugins/crunch/filter_date.py                   47       0  100.00%
plugins/crunch/filter_latest_intersect.py       52       6  88.46%   87-88, 95-96, 98-102
plugins/crunch/filter_latest_tpl_name.py        35       0  100.00%
plugins/crunch/filter_overlap.py                66      10  84.85%   118-121, 137-163
plugins/crunch/filter_property.py               30       2  93.33%   81-84
plugins/download/__init__.py                     4       0  100.00%
plugins/download/aws.py                        404      42  89.60%   271, 305, 354-357, 387-388, 396-400, 480-483, 523-525, 529, 560-561, 567-571, 602, 667-675, 763, 780, 795, 827-828, 891, 917, 962-964, 1016
plugins/download/base.py                       297      26  91.25%   148, 178, 253-255, 394-395, 439, 473, 550-554, 584, 619-620, 645-654, 713, 734, 756, 764
plugins/download/http.py                       581      74  87.26%   242, 284-287, 349-352, 355, 362-367, 399-400, 417, 432, 493, 528, 542, 556, 569-573, 589-594, 605, 624, 660-663, 684, 694, 701, 757, 865, 897, 929-938, 974, 1019-1024, 1033, 1048-1050, 1054, 1057, 1072-1073, 1083, 1158, 1210, 1253-1254, 1266, 1276, 1332-1333, 1363, 1390, 1410, 1490-1491
plugins/search/__init__.py                      25       0  100.00%
plugins/search/base.py                         273      18  93.41%   120, 124, 148-154, 163, 225-228, 265, 283, 378, 410, 431, 564
plugins/search/build_search_result.py          558      41  92.65%   257, 427-435, 517-518, 567, 579-581, 605, 607, 673, 681-685, 705, 715, 741, 790, 815, 877-882, 943, 970, 973, 1090, 1230, 1245, 1248, 1273, 1447-1448, 1492, 1501-1503, 1563
plugins/search/cop_ghsl.py                     422      32  92.42%   73-74, 109-110, 174, 176, 218, 299, 301-302, 319, 365, 385-389, 406, 430-433, 451, 492, 508, 547, 577-578, 592-594, 605-607, 653, 689, 693
plugins/search/cop_marine.py                   294      34  88.44%   55, 63-65, 81, 103, 105, 108, 174-175, 193, 226, 232, 236, 258-259, 272, 313, 323, 336, 344, 350-354, 371, 403-406, 421, 491, 503, 547-548
plugins/search/creodias_s3.py                   29       1  96.55%   59
plugins/search/csw.py                          118      12  89.83%   121, 165, 203, 214-225, 230
plugins/search/eumetsat_ds.py                   21       0  100.00%
plugins/search/geodes.py                        77       0  100.00%
plugins/search/oar.py                           82      13  84.15%   50, 57-60, 172-180, 186-188, 195
plugins/search/qssearch.py                     875      86  90.17%   381, 540-541, 564-565, 577-581, 874, 940, 974, 1052, 1073, 1076-1077, 1095, 1104-1105, 1123, 1194, 1203, 1215-1225, 1234, 1249, 1258, 1271, 1293, 1316, 1389, 1427, 1500-1501, 1503-1505, 1507-1508, 1780, 1783, 1787-1788, 1807-1810, 1822, 1842-1861, 1869-1875, 1933-1939, 1946, 1984, 2023, 2028-2029, 2050, 2170, 2174, 2185, 2209, 2222, 2230-2240, 2266
plugins/search/stac_list_assets.py              25       0  100.00%
plugins/search/static_stac_search.py            84      17  79.76%   99-127, 166-169, 182
resources/__init__.py                            0       0  100.00%
resources/shp/__init__.py                        0       0  100.00%
types/__init__.py                              180      43  76.11%   58, 71-75, 86-98, 126-128, 135-140, 155, 165, 247, 280, 290-306, 311, 313, 335, 340, 348, 358
types/bbox.py                                   39       0  100.00%
types/download_args.py                          10       0  100.00%
types/queryables.py                            113       0  100.00%
types/search_args.py                            71      18  74.65%   67-71, 78-95, 110
types/stac_extensions.py                       162       4  97.53%   455-461, 640
types/stac_metadata.py                         159      22  86.16%   98, 120, 153, 186-188, 202-216, 225-232, 259-262
utils/__init__.py                              658      19  97.11%   57, 216, 223, 239, 274, 351, 606, 646-647, 676, 1060-1063, 1133-1134, 1166, 1373, 1481, 1613
utils/cache.py                                  22       0  100.00%
utils/dates.py                                 191       1  99.48%   182
utils/deserialize.py                            74      10  86.49%   53, 55, 103, 108-109, 148, 162, 184-185, 191
utils/env.py                                     3       0  100.00%
utils/exceptions.py                             58       0  100.00%
utils/free_text_search.py                       65       2  96.92%   83, 91
utils/import_system.py                          28       6  78.57%   65-73
utils/logging.py                                42       3  92.86%   42-43, 61
utils/notebook.py                               44      13  70.45%   27, 41, 58-62, 72-78, 86-87
utils/repr.py                                   38       0  100.00%
utils/requests.py                               55       6  89.09%   94, 110, 118-120, 128
utils/s3.py                                    269      11  95.91%   204-205, 246, 262, 284, 506, 557-558, 626, 701, 727
utils/stac_reader.py                           113      42  62.83%   63-85, 101, 138, 154-159, 206-216, 226-256
utils/streamresponse.py                         91       4  95.60%   106, 166, 175, 187
utils/yaml.py                                   42       7  83.33%   49, 65, 70-74
TOTAL                                        12077    1000  91.72%

Diff against develop

Filename                                 Stmts    Miss  Cover
-------------------------------------  -------  ------  --------
cli.py                                      +4       0  +0.07%
api/collection.py                         +127      +3  +1.04%
api/core.py                                 +6       0  +0.02%
api/product/_assets.py                     +77      +1  +2.54%
api/product/_product.py                     +3       0  +0.07%
api/product/metadata_mapping.py            +24     +16  -1.58%
plugins/apis/usgs.py                        +4      +2  -0.79%
plugins/search/base.py                     +53      -2  +2.50%
plugins/search/build_search_result.py       +3       0  +0.04%
plugins/search/cop_ghsl.py                 +12      +5  -0.99%
plugins/search/cop_marine.py                -3       0  -0.11%
plugins/search/eumetsat_ds.py               -3       0  +100.00%
plugins/search/geodes.py                   +11       0  +100.00%
plugins/search/qssearch.py                 -14      +2  -0.38%
utils/s3.py                                 +3       0  +0.05%
TOTAL                                     +307     +27  -0.01%

Results for commit: 9282a86

Minimum allowed coverage is 70%

♻️ This comment has been updated with latest results

@sbrunato
sbrunato merged commit 1c5d723 into v5.x.x Aug 26, 2026
13 checks passed
@sbrunato
sbrunato deleted the v5-rebased-test branch August 26, 2026 08:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant