• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

kdeyev / pyonwater / 27175883119
98%

Build:
DEFAULT BRANCH: main
Ran 09 Jun 2026 12:29AM UTC
Jobs 1
Files 21
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

12 Apr 2026 07:40PM UTC coverage: 98.485% (+1.7%) from 96.765%
27175883119

push

github

web-flow
test: expand coverage for export-range, client, models, and units (#58)

* fix: type annotations and public helpers in export-range code

Resolves type/lint issues in the export-range implementation added in PR #52:

- Add explicit dict[str, str | int] annotation to the params dict in
  read_historical_data_range_export() to resolve partially-unknown type
- cast(str, result['url']) to resolve unknown argument type for
  normalize_export_path()
- Rewrite flow_value narrowing to eliminate type: ignore[arg-type]
  suppression while keeping identical runtime behavior
- Rename _normalize_export_path, _parse_export_csv, _parse_export_datetime
  to drop the leading underscore — these are utility methods that tests
  legitimately call, and pylint/pyright both flag accessing _ members
  from outside the class

* test: expand coverage for export-range, csv parsing, and meter cache

Phase 1 (9 tests in test_meter_reader.py):
- Export range validation: invalid days_to_load, max_retries, poll_interval
- Export range error paths: bad JSON, missing task_id, missing URL
- Poll task: error state and timeout exhausted
- normalize_export_path: invalid URL scheme

Phase 2 (6 tests in test_meter_reader.py):
- parse_export_csv: empty string, space-separated column names, no Flow column
- read_historical_data_one_day: quoted-empty response, null response, missing timeseries key

Phase 3 (2 functions / 7 cases in test_meter_reader.py):
- AggregationLevel: parametrize over all 6 enum values, verify POST body aggregate param
- RequestUnits: verify units value forwarded to POST body

Phase 4 (3 tests in test_meter.py):
- Meter cache keeps newer data when older data arrives on second read
- Meter cache not updated when timestamp and count are identical
- include_today=False passes correct end-date to export endpoint

* test: broaden client, model, and units coverage

* test: fix remaining lint issues in tests

* test: align coverage branch with v0.3.32 auth behavior

* chore: bu... (continued)

433 of 433 new or added lines in 6 files covered. (100.0%)

2145 of 2178 relevant lines covered (98.48%)

0.98 hits per line

Jobs
ID Job ID Ran Files Coverage
1 27175883119.1 09 Jun 2026 12:29AM UTC 21
98.48
GitHub Action Run
Source Files on build 27175883119
  • Tree
  • List 21
  • Changed 7
  • Source Changed 0
  • Coverage Changed 7
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 9a42dbaa on github
  • Prev Build on main (#24110738845)
  • Next Build on main (#27244903383)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc