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

thorstenalpers / Finance.NET / 31162254930
91%

Build:
DEFAULT BRANCH: main
Ran 07 Aug 2026 08:36AM UTC
Jobs 1
Files 42
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

07 Aug 2026 08:34AM UTC coverage: 91.84% (+0.1%) from 91.725%
31162254930

push

github

web-flow
Do not retry a provider response that carries no data (#56)

An empty result set was signalled by throwing from inside the retried
delegate, and the policy handled every exception. A permanently unknown
symbol was therefore retried the full retry count before failing, even
though no number of retries could change the outcome. The same unknown
symbol costs one request when another symbol in the batch resolves, and
retryCount+1 requests plus the whole back-off budget when it is alone.

- Add public FinanceNetNoDataException, derived from FinanceNetException so
  existing catch blocks keep working, for "the provider answered, there is
  no such data".
- Exclude it from the Polly handle predicate, so it fails fast.
- Raise it wherever an empty result set was previously reported as a generic
  failure: the four services and the Yahoo HTML parser. Malformed responses
  ("table is null", "data is invalid", rate limits) stay retryable - only a
  well-formed but empty answer is treated as permanent.
- Let it propagate untouched through the error wrappers, via a filter on the
  existing catch clause, so callers can tell an invalid symbol from a
  transient failure rather than diffing request against response.
- Give the no-data throws the context the wrappers used to supply. They
  mostly carried the bare "All fields empty" constant; they now name the
  provider and the request, e.g. "Alpha Vantage returned no records for IBM".

Adds NoDataFailFastTests, which asserts both the exception type and that
exactly one HTTP request was made. Existing tests that asserted the exact
type FinanceNetException, or the old wrapper message, assert the new type
and the specific message instead.

Co-authored-by: thorsten <thorsten@PC>

488 of 617 branches covered (79.09%)

Branch coverage included in aggregate %.

36 of 40 new or added lines in 7 files covered. (90.0%)

1763 of 1834 relevant lines covered (96.13%)

92.28 hits per line

Uncovered Changes

Lines Coverage ∆ File
4
33.33
src/Exceptions/FinanceNetNoDataException.cs
Jobs
ID Job ID Ran Files Coverage
1 31162254930.1 07 Aug 2026 08:36AM UTC 42
91.84
GitHub Action Run
Source Files on build 31162254930
  • Tree
  • List 42
  • Changed 8
  • Source Changed 6
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #31162254930
  • 1196ddf7 on github
  • Prev Build on main (#31162054150)
  • Next Build on main (#31165088597)
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