Atlas › Test

TestRateLimiterDelegator_SetRateLimiter

Exact test identity: go.temporal.io/server/common/quotas/TestRateLimiterDelegator_SetRateLimiter

Package
go.temporal.io/server/common/quotas
Suite / test hierarchy
TestRateLimiterDelegator_SetRateLimiter
Test
TestRateLimiterDelegator_SetRateLimiter
Introduced at
request_rate_limiter_delegator.go ×1 Frontier kind: Joint frontier
Covered ranges
8
Covered lines
24
Covered files
2

Covered source

Expand a file to inspect source; the > gutter marks covered lines.

go.temporal.io/server/common/quotas/request_rate_limiter_delegator.go 15 covered LOC · 5 ranges

Open complete file

24
25 // SetRateLimiter sets the rate limiter to delegate to.
26 > func (d *RequestRateLimiterDelegator) SetRateLimiter(rl RequestRateLimiter) { request_rate_limiter_delegator.go
27 > d.delegate.Store(monomorphicRequestRateLimiter{rl})
28 > }
29
30 // loadDelegate returns the rate limiter that this rate limiter delegates to.
31 > func (d *RequestRateLimiterDelegator) loadDelegate() RequestRateLimiter { request_rate_limiter_delegator.go
32 > return d.delegate.Load().(RequestRateLimiter)
33 > }
34
35 // The following methods just delegate to the underlying rate limiter.
36
37 > func (d *RequestRateLimiterDelegator) Allow(now time.Time, request Request) bool { request_rate_limiter_delegator.go
38 > return d.loadDelegate().Allow(now, request)
39 > }
40
41 > func (d *RequestRateLimiterDelegator) Reserve(now time.Time, request Request) Reservation { request_rate_limiter_delegator.go
42 > return d.loadDelegate().Reserve(now, request)
43 > }
44
45 > func (d *RequestRateLimiterDelegator) Wait(ctx context.Context, request Request) error { request_rate_limiter_delegator.go
46 > return d.loadDelegate().Wait(ctx, request)
47 > }
go.temporal.io/server/common/quotas/noop_request_rate_limiter_impl.go 9 covered LOC · 3 ranges

Open complete file