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

ThreeMammals / Ocelot / 25072882798
93%

Build:
DEFAULT BRANCH: develop
Ran 28 Apr 2026 07:47PM UTC
Jobs 1
Files 295
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

28 Apr 2026 07:19PM UTC coverage: 93.559% (+0.2%) from 93.37%
25072882798

push

github

web-flow
#2384 Built-in Circuit Breaker for Quality of Service (express edition, no Polly required) (#2385)

* Initial plan

* feat: implement built-in CircuitBreaker and CircuitBreakerDelegatingHandler
- Add CircuitBreaker state machine (Closed/Open/HalfOpen) in Infrastructure/DesignPatterns
- Add CircuitBreakerDelegatingHandler using DelegatingHandler for QoS
- Register CircuitBreakerDelegatingHandler as default QosDelegatingHandlerDelegate in OcelotBuilder
- Remove Skip from two DynamicRoutingTests that now pass
- Remove fake handler override from WithDiscoveryAndQualityOfService
- Add unit tests for CircuitBreaker in test/Ocelot.UnitTests/Infrastructure/DesignPatterns

Agent-Logs-Url: https://github.com/ocelotgateway/Ocelot/sessions/eea51213-e11a-43ff-8982-43681bea0db9
Co-authored-by: ocelotgateway <163584778+ocelotgateway@users.noreply.github.com>

* feat: Built-in Circuit Breaker for Quality of Service (no Polly required)
Agent-Logs-Url: https://github.com/ocelotgateway/Ocelot/sessions/eea51213-e11a-43ff-8982-43681bea0db9
Co-authored-by: ocelotgateway <163584778+ocelotgateway@users.noreply.github.com>

* Rename IQoSFactory interface to IQualityOfServiceFactory

* Rename QosFactory class to QualityOfServiceFactory

* Refactor QualityOfServiceFactory

* Organize QualityOfService feature in DI

* CircuitBreakerTests : Add WaitForState helper
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Code review by Copilot

* Add acceptance tests

* Skip FailureRatio feat tests

* fix: timeout/circuit-breaker bugs and add full QoS unit test coverage
- Fix GetBreakDuration: use strict > not >= for LowBreakDuration comparison
  so that BreakDuration=500 (exact LowBreakDuration) uses DefaultBreakDuration=5000ms
  (fixes Should_open_circuit_breaker_for_DefaultBreakDuration)
- Fix QualityOfServiceFactory.Get: return CircuitBreakerDelegatingHandler for
  any active QoS option (not only when MinimumThroughput/BreakDuration are set... (continued)

6493 of 6940 relevant lines covered (93.56%)

3786.87 hits per line

Subprojects
ID Flag name Job ID Ran Files Coverage
1 /jobs/180971672 25072882798.1 28 Apr 2026 07:47PM UTC 295
93.56
GitHub Action Run
Source Files on build 25072882798
  • Tree
  • List 295
  • Changed 5
  • Source Changed 0
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25072882798
  • fe672ec0 on github
  • Prev Build on develop (#24671805624)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc