ECMWFCode4Earth / vAirify

code repository for 2024 Code for Earth project #16
0 stars 0 forks source link

Add measurements API #70

Closed amehta-scottlogic closed 3 weeks ago

amehta-scottlogic commented 4 weeks ago

Description

This PR adds a rest API to query in situ measurements. Apologies for the amount of change - there are a few code improvements, repo restructuring, addition of types that caused a lot of changes

Changes

Swagger

image

image

Logs

2024-06-04 16:46:36,040 - INFO - Fetching measurements between 2024-05-30 00:00:00+00:00 - 2024-06-03 00:00:00+00:00 for AirQualityLocationType.CITY
2024-06-04 16:46:36,040 - INFO - Querying collection with criteria: {'measurement_date': {'$gte': datetime.datetime(2024, 5, 30, 0, 0, tzinfo=TzInfo(UTC)), '$lte': datetime.datetime(2024, 6, 3, 0, 0, tzinfo=TzInfo(UTC))}, 'location_type': 'city', 'name': {'$in': ['London']}}
2024-06-04 16:46:41,147 - INFO - Responding with 1419 results

Mongo query

image

github-actions[bot] commented 4 weeks ago

☂️ Python Coverage

current status: ✅

Overall Coverage

Lines Covered Coverage Threshold Status
502 443 88% 80% 🟢

New Files

File Coverage Status
air-quality-backend/src/air_quality/api/forecast_controller.py 100% 🟢
air-quality-backend/src/air_quality/api/mappers/measurements_mapper.py 100% 🟢
air-quality-backend/src/air_quality/api/measurements_controller.py 100% 🟢
air-quality-backend/src/air_quality/api/types.py 100% 🟢
TOTAL 100% 🟢

Modified Files

File Coverage Status
air-quality-backend/scripts/run_forecast_etl.py 95% 🟢
air-quality-backend/scripts/run_in_situ_etl.py 95% 🟢
air-quality-backend/src/air_quality/api/main.py 100% 🟢
air-quality-backend/src/air_quality/api/mappers/forecast_mapper.py 100% 🟢
air-quality-backend/src/air_quality/database/forecasts.py 100% 🟢
air-quality-backend/src/air_quality/database/in_situ.py 100% 🟢
air-quality-backend/src/air_quality/database/locations.py 100% 🟢
air-quality-backend/src/air_quality/database/mongo_db_operations.py 96% 🟢
air-quality-backend/src/air_quality/etl/forecast/forecast_adapter.py 100% 🟢
air-quality-backend/src/air_quality/etl/forecast/forecast_data.py 95% 🟢
air-quality-backend/src/air_quality/etl/in_situ/openaq_adapter.py 97% 🟢
TOTAL 98% 🟢

updated for commit: e2dba7c by action🐍