eodag
eodag copied to clipboard
942 query parameters validation
trafficstars
- the queryables are fetched during the search preparation and compared to the query parameters entered by the user
- a discover_queryables method for the ecmwf plugin was added
- a bug in the constraint queryables concerning constraints with dates was fixed
Test Results
4 files ±0 4 suites ±0 6m 25s :stopwatch: +24s 509 tests +2 506 :white_check_mark: +2 3 :zzz: ±0 0 :x: ±0 2 036 runs +8 1 950 :white_check_mark: +8 86 :zzz: ±0 0 :x: ±0
Results for commit caa41cd2. ± Comparison against base commit 80b4fd00.
Code Coverage (Ubuntu)
Filename Stmts Miss Cover Missing
----------------------------------------- ------- ------ ------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
__init__.py 11 0 100.00%
cli.py 300 47 84.33% 61, 647-686, 788-839, 843
config.py 313 27 91.37% 80-82, 91, 99, 103-105, 178, 190, 386-388, 452-455, 502-503, 512-513, 592, 661-666, 668
crunch.py 6 6 0.00% 18-24
api/__init__.py 1 0 100.00%
api/core.py 736 75 89.81% 87-96, 369, 580, 624-627, 665, 770, 774-779, 805, 875, 945, 1062-1067, 1153-1165, 1205, 1207, 1211, 1232-1234, 1238-1249, 1262-1268, 1358-1361, 1390-1410, 1458, 1464-1467, 1476, 1837, 1870-1876, 2141, 2145-2148, 2162-2164
api/search_result.py 44 6 86.36% 33-35, 70, 79, 86, 100
api/product/__init__.py 5 0 100.00%
api/product/_assets.py 44 5 88.64% 27-29, 79, 129
api/product/_product.py 208 32 84.62% 48-55, 59-61, 165-172, 256-257, 347, 383, 444, 458-461, 474, 498-501, 544-550
api/product/metadata_mapping.py 648 87 86.57% 66-68, 129-131, 232, 264-265, 317-329, 331, 342, 346-362, 401-404, 441, 462-465, 479, 487-488, 561-562, 586-587, 593-596, 611-612, 776, 822, 879-880, 923-928, 1059, 1073-1093, 1113, 1118, 1228, 1250, 1264, 1277-1296, 1335, 1387, 1425-1429, 1448
api/product/drivers/__init__.py 6 0 100.00%
api/product/drivers/base.py 8 2 75.00% 23, 41
plugins/__init__.py 1 0 100.00%
plugins/base.py 23 3 86.96% 25, 48, 55
plugins/manager.py 127 14 88.98% 49-51, 95-100, 146, 185, 205, 231, 270-271
plugins/apis/__init__.py 1 0 100.00%
plugins/apis/base.py 4 0 100.00%
plugins/apis/cds.py 206 49 76.21% 72-80, 126-129, 176-188, 244, 309, 317-322, 335-342, 360-362, 383-385, 395-397, 411-412, 457, 460, 470, 487, 515, 518
plugins/apis/ecmwf.py 116 15 87.07% 52-60, 161-163, 210-211, 237-239
plugins/apis/usgs.py 168 42 75.00% 58-63, 124, 144, 157, 197, 217-222, 231, 266-268, 273, 299-300, 305, 335-342, 351-356, 378-384, 386-392, 415
plugins/authentication/__init__.py 7 1 85.71% 31
plugins/authentication/aws_auth.py 20 2 90.00% 25-27
plugins/authentication/base.py 19 2 89.47% 26, 47
plugins/authentication/generic.py 16 3 81.25% 28, 40, 50
plugins/authentication/header.py 17 1 94.12% 27
plugins/authentication/keycloak.py 88 17 80.68% 32-34, 159-160, 190-212, 238-243
plugins/authentication/oauth.py 15 8 46.67% 25, 32-34, 38-41
plugins/authentication/openid_connect.py 103 64 37.86% 39-41, 138-150, 154-172, 180-222, 228-237, 246-286, 291-299, 304-305
plugins/authentication/qsauth.py 36 2 94.44% 32, 83
plugins/authentication/sas_auth.py 49 2 95.92% 32, 76
plugins/authentication/token.py 75 8 89.33% 35-37, 102, 127, 154-157
plugins/crunch/__init__.py 1 0 100.00%
plugins/crunch/base.py 10 2 80.00% 25, 38
plugins/crunch/filter_date.py 62 15 75.81% 30, 53-58, 72, 81, 90, 93, 105-107, 116-118, 125
plugins/crunch/filter_latest_intersect.py 50 10 80.00% 32-34, 51-52, 71, 80-83, 85, 92-95
plugins/crunch/filter_latest_tpl_name.py 33 2 93.94% 28, 86
plugins/crunch/filter_overlap.py 68 17 75.00% 28-30, 33, 82-85, 91, 99, 110-126
plugins/crunch/filter_property.py 33 8 75.76% 29, 60-65, 68-69, 85-89
plugins/download/__init__.py 1 0 100.00%
plugins/download/aws.py 491 165 66.40% 77-83, 272, 285, 352-355, 369-373, 419-421, 425, 458-459, 465-469, 502, 537, 541, 548, 578-586, 590, 628-636, 643-645, 686-760, 778-839, 850-855, 871-884, 913, 928-930, 933, 943-951, 959-972, 982-1001, 1008-1020, 1061, 1087, 1132-1134, 1354
plugins/download/base.py 261 57 78.16% 58-64, 145, 180, 319-320, 340-346, 377-381, 387-388, 432, 435-449, 461, 465, 538-542, 572-573, 581-598, 605-613, 615-619, 666, 689, 711, 719
plugins/download/creodias_s3.py 17 9 47.06% 44-58
plugins/download/http.py 422 97 77.01% 81-88, 122, 171, 192-199, 209-222, 262-267, 318, 351, 378-380, 390-398, 420, 459-463, 520, 593-649, 663, 687-689, 719-720, 728, 731, 747, 771, 794-795, 802, 863-869, 924-925, 931, 941, 1007, 1025-1041
plugins/download/s3rest.py 117 27 76.92% 55-58, 124, 165, 199, 229-236, 239-241, 245, 258-264, 272-273, 276-280, 303, 324-327
plugins/search/__init__.py 1 0 100.00%
plugins/search/base.py 127 9 92.91% 49-54, 108, 112, 275, 295, 378
plugins/search/build_search_result.py 56 6 89.29% 67, 112-113, 121, 132, 176
plugins/search/creodias_s3.py 55 3 94.55% 56, 74, 108
plugins/search/csw.py 107 83 22.43% 43-45, 57-58, 62-63, 74-122, 128-141, 149-181, 199-240
plugins/search/data_request_search.py 198 60 69.70% 52, 89-92, 108, 120, 139, 144, 149, 156, 169-172, 226-227, 231, 241-247, 252, 281, 291-302, 319, 321, 328-329, 331-332, 350-354, 387, 394, 405, 418, 424-436, 441
plugins/search/qssearch.py 521 53 89.83% 87, 354-355, 449-455, 482-485, 558-559, 600, 618, 633, 686, 707, 710-711, 720, 731, 740, 763, 823-828, 832-833, 861, 932, 951-968, 1007, 1141-1142, 1163, 1205-1206, 1216-1222, 1263, 1277, 1297, 1385
plugins/search/static_stac_search.py 47 3 93.62% 39-40, 82
rest/__init__.py 1 0 100.00%
rest/core.py 169 10 94.08% 243, 514, 516, 519-521, 593, 600-604
rest/server.py 298 54 81.88% 80-81, 105, 128-129, 240-242, 258, 298-299, 311-327, 409-414, 444, 601-608, 639, 682-683, 771-773, 790-795, 825, 827, 831-832, 836-837
rest/stac.py 436 95 78.21% 59-61, 229-231, 273, 286-295, 314-320, 365, 402-404, 427, 462-463, 549-594, 639, 659-660, 840, 905-907, 1126, 1136-1148, 1161-1183, 1197-1242, 1401-1402
rest/types/__init__.py 1 0 100.00%
rest/types/eodag_search.py 185 9 95.14% 52-55, 231-235, 288, 291, 359
rest/types/stac_queryables.py 30 2 93.33% 28, 114
rest/types/stac_search.py 122 10 91.80% 48-51, 167, 182-184, 192, 196
rest/utils/__init__.py 116 14 87.93% 53, 108-109, 128-130, 180, 190-204, 236
rest/utils/cql_evaluate.py 48 5 89.58% 69, 76, 90, 97, 105
rest/utils/rfc3339.py 31 3 90.32% 78, 90, 92
types/__init__.py 76 6 92.11% 53, 87, 152, 172, 177, 185
types/bbox.py 43 19 55.81% 46-61, 72-74, 85-87, 99-101, 113-115, 123
types/download_args.py 9 0 100.00%
types/queryables.py 81 0 100.00%
types/search_args.py 70 18 74.29% 60-64, 71-88, 104
utils/__init__.py 495 43 91.31% 83, 88, 109-111, 189-190, 199-226, 229, 243, 325-329, 405-409, 430-432, 514, 519, 529, 567-568, 964-967, 975-976, 1017-1018, 1098, 1182, 1200, 1373
utils/constraints.py 144 48 66.67% 33, 90-99, 140, 149, 160, 170-174, 182, 184, 206-207, 218-226, 235, 249-265, 274-285
utils/exceptions.py 37 2 94.59% 23, 93
utils/import_system.py 30 20 33.33% 27, 67-81, 93-103
utils/logging.py 29 1 96.55% 123
utils/notebook.py 44 23 47.73% 25-29, 36-41, 58-62, 72-78, 83-87
utils/stac_reader.py 91 28 69.23% 55-56, 63-86, 93-95, 99, 141, 155-158
TOTAL 8685 1556 82.08%
Diff against develop
Filename Stmts Miss Cover
--------------------- ------- ------ -------
api/core.py +15 -1 +0.35%
plugins/apis/ecmwf.py +17 0 +2.22%
plugins/apis/usgs.py 0 +6 -3.57%
utils/constraints.py +21 +6 +0.82%
TOTAL +53 +11 -0.02%
Results for commit: caa41cd2347b59626a51331e1a2147897fa60db0
Minimum allowed coverage is 70%
:recycle: This comment has been updated with latest results
Code Coverage (Windows)
Filename Stmts Miss Cover Missing
----------------------------------------- ------- ------ ------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
__init__.py 11 0 100.00%
cli.py 300 47 84.33% 61, 647-686, 788-839, 843
config.py 313 28 91.05% 80-82, 91, 99, 103-105, 178, 190, 386-388, 452-455, 502-503, 512-513, 592, 626, 661-666, 668
crunch.py 6 6 0.00% 18-24
api/__init__.py 1 0 100.00%
api/core.py 736 75 89.81% 87-96, 369, 580, 624-627, 665, 770, 774-779, 805, 875, 945, 1062-1067, 1153-1165, 1205, 1207, 1211, 1232-1234, 1238-1249, 1262-1268, 1358-1361, 1390-1410, 1458, 1464-1467, 1476, 1837, 1870-1876, 2141, 2145-2148, 2162-2164
api/search_result.py 44 6 86.36% 33-35, 70, 79, 86, 100
api/product/__init__.py 5 0 100.00%
api/product/_assets.py 44 5 88.64% 27-29, 79, 129
api/product/_product.py 208 32 84.62% 48-55, 59-61, 165-172, 256-257, 347, 383, 444, 458-461, 474, 498-501, 544-550
api/product/metadata_mapping.py 648 88 86.42% 66-68, 129-131, 232, 264-265, 317-329, 331, 342, 346-362, 401-404, 441, 462-465, 479, 487-488, 561-562, 586-587, 593-596, 611-612, 776, 822, 879-880, 923-928, 1059, 1073-1093, 1113, 1118, 1228, 1250, 1264, 1277-1296, 1335, 1387, 1410, 1425-1429, 1448
api/product/drivers/__init__.py 6 0 100.00%
api/product/drivers/base.py 8 2 75.00% 23, 41
plugins/__init__.py 1 0 100.00%
plugins/base.py 23 4 82.61% 25, 48, 55, 68
plugins/manager.py 127 14 88.98% 49-51, 95-100, 146, 185, 205, 231, 270-271
plugins/apis/__init__.py 1 0 100.00%
plugins/apis/base.py 4 0 100.00%
plugins/apis/cds.py 206 49 76.21% 72-80, 126-129, 176-188, 244, 309, 317-322, 335-342, 360-362, 383-385, 395-397, 411-412, 457, 460, 470, 487, 515, 518
plugins/apis/ecmwf.py 116 15 87.07% 52-60, 161-163, 210-211, 237-239
plugins/apis/usgs.py 168 42 75.00% 58-63, 124, 144, 157, 197, 217-222, 231, 266-268, 273, 299-300, 305, 335-342, 351-356, 378-384, 386-392, 415
plugins/authentication/__init__.py 7 1 85.71% 31
plugins/authentication/aws_auth.py 20 2 90.00% 25-27
plugins/authentication/base.py 19 3 84.21% 26, 34, 47
plugins/authentication/generic.py 16 3 81.25% 28, 40, 50
plugins/authentication/header.py 17 1 94.12% 27
plugins/authentication/keycloak.py 88 17 80.68% 32-34, 159-160, 190-212, 238-243
plugins/authentication/oauth.py 15 8 46.67% 25, 32-34, 38-41
plugins/authentication/openid_connect.py 103 64 37.86% 39-41, 138-150, 154-172, 180-222, 228-237, 246-286, 291-299, 304-305
plugins/authentication/qsauth.py 36 2 94.44% 32, 83
plugins/authentication/sas_auth.py 49 2 95.92% 32, 76
plugins/authentication/token.py 75 8 89.33% 35-37, 102, 127, 154-157
plugins/crunch/__init__.py 1 0 100.00%
plugins/crunch/base.py 10 2 80.00% 25, 38
plugins/crunch/filter_date.py 62 15 75.81% 30, 53-58, 72, 81, 90, 93, 105-107, 116-118, 125
plugins/crunch/filter_latest_intersect.py 50 35 30.00% 32-34, 48-53, 69-114
plugins/crunch/filter_latest_tpl_name.py 33 2 93.94% 28, 86
plugins/crunch/filter_overlap.py 68 17 75.00% 28-30, 33, 82-85, 91, 99, 110-126
plugins/crunch/filter_property.py 33 8 75.76% 29, 60-65, 68-69, 85-89
plugins/download/__init__.py 1 0 100.00%
plugins/download/aws.py 491 165 66.40% 77-83, 272, 285, 352-355, 369-373, 419-421, 425, 458-459, 465-469, 502, 537, 541, 548, 578-586, 590, 628-636, 643-645, 686-760, 778-839, 850-855, 871-884, 913, 928-930, 933, 943-951, 959-972, 982-1001, 1008-1020, 1061, 1087, 1132-1134, 1354
plugins/download/base.py 261 59 77.39% 58-64, 145, 180, 250-252, 319-320, 340-346, 377-381, 387-388, 432, 435-449, 461, 465, 538-542, 572-573, 581-598, 605-613, 615-619, 666, 689, 711, 719
plugins/download/creodias_s3.py 17 9 47.06% 44-58
plugins/download/http.py 422 97 77.01% 81-88, 122, 171, 192-199, 209-222, 262-267, 318, 351, 378-380, 390-398, 420, 459-463, 520, 593-649, 663, 687-689, 719-720, 728, 731, 747, 771, 794-795, 802, 863-869, 924-925, 931, 941, 1007, 1025-1041
plugins/download/s3rest.py 117 27 76.92% 55-58, 124, 165, 199, 229-236, 239-241, 245, 258-264, 272-273, 276-280, 303, 324-327
plugins/search/__init__.py 1 0 100.00%
plugins/search/base.py 127 9 92.91% 49-54, 108, 112, 275, 295, 378
plugins/search/build_search_result.py 56 6 89.29% 67, 112-113, 121, 132, 176
plugins/search/creodias_s3.py 55 3 94.55% 56, 74, 108
plugins/search/csw.py 107 83 22.43% 43-45, 57-58, 62-63, 74-122, 128-141, 149-181, 199-240
plugins/search/data_request_search.py 198 60 69.70% 52, 89-92, 108, 120, 139, 144, 149, 156, 169-172, 226-227, 231, 241-247, 252, 281, 291-302, 319, 321, 328-329, 331-332, 350-354, 387, 394, 405, 418, 424-436, 441
plugins/search/qssearch.py 521 61 88.29% 87, 354-355, 449-455, 482-485, 558-559, 600, 618, 633, 686, 707, 710-711, 720, 731, 740, 763, 823-828, 832-833, 861, 932, 951-968, 1007, 1141-1142, 1163, 1205-1206, 1216-1222, 1263, 1277, 1297, 1385, 1397-1414
plugins/search/static_stac_search.py 47 3 93.62% 39-40, 82
rest/__init__.py 1 0 100.00%
rest/core.py 169 61 63.91% 140, 142, 144, 150-151, 168-176, 183-189, 235-264, 418-445, 463, 513-552, 593, 600-604
rest/server.py 298 298 0.00% 18-850
rest/stac.py 436 154 64.68% 59-61, 214, 229-231, 273, 286-295, 314-320, 365, 402-404, 427, 462-463, 549-594, 639, 647-648, 652-660, 782, 840, 905-907, 924-926, 934-936, 949-951, 965-982, 992-1013, 1023-1045, 1053-1070, 1093-1116, 1126, 1136-1148, 1161-1183, 1197-1242, 1395-1421
rest/types/__init__.py 1 0 100.00%
rest/types/eodag_search.py 185 18 90.27% 52-55, 231-235, 268-270, 288, 291, 297, 301, 359, 371-374
rest/types/stac_queryables.py 30 6 80.00% 28, 53-58, 114
rest/types/stac_search.py 122 12 90.16% 48-51, 167, 182-184, 192, 196, 240, 243
rest/utils/__init__.py 116 31 73.28% 53, 79-85, 105, 108-109, 128-130, 147, 173-181, 188-209, 236
rest/utils/cql_evaluate.py 48 5 89.58% 69, 76, 90, 97, 105
rest/utils/rfc3339.py 31 5 83.87% 73-74, 78, 90, 92
types/__init__.py 76 11 85.53% 53, 87, 125, 152, 162-164, 172, 177, 185, 195
types/bbox.py 43 19 55.81% 46-61, 72-74, 85-87, 99-101, 113-115, 123
types/download_args.py 9 0 100.00%
types/queryables.py 81 0 100.00%
types/search_args.py 70 18 74.29% 60-64, 71-88, 104
utils/__init__.py 495 43 91.31% 83, 88, 109-111, 189-190, 199-226, 229, 243, 325-329, 405-409, 430-432, 514, 519, 529, 567-568, 964-967, 975-976, 1017-1018, 1098, 1182, 1200, 1373
utils/constraints.py 144 48 66.67% 33, 90-99, 140, 149, 160, 170-174, 182, 184, 206-207, 218-226, 235, 249-265, 274-285
utils/exceptions.py 37 2 94.59% 23, 93
utils/import_system.py 30 20 33.33% 27, 67-81, 93-103
utils/logging.py 29 1 96.55% 123
utils/notebook.py 44 23 47.73% 25-29, 36-41, 58-62, 72-78, 83-87
utils/stac_reader.py 91 28 69.23% 55-56, 63-86, 93-95, 99, 141, 155-158
TOTAL 8685 1988 77.11%
Diff against develop
Filename Stmts Miss Cover
-------------------------- ------- ------ -------
api/core.py +15 -1 +0.35%
plugins/apis/cds.py 0 -7 +3.39%
plugins/apis/ecmwf.py +17 0 +2.22%
plugins/apis/usgs.py 0 +6 -3.57%
plugins/search/qssearch.py 0 -16 +3.07%
utils/constraints.py +21 +6 +0.82%
TOTAL +53 -12 +0.28%
Results for commit: caa41cd2347b59626a51331e1a2147897fa60db0
Minimum allowed coverage is 70%
:recycle: This comment has been updated with latest results