From f17d88fb32686c167a1d627aab5f32988d93ef52 Mon Sep 17 00:00:00 2001 From: jespersoderlund Date: Fri, 7 Jun 2024 06:53:17 +0200 Subject: [PATCH] =?UTF-8?q?Including=20the=20name=20in=20the=20ratelimit?= =?UTF-8?q?=20descriptor=20so=20that=20it=20is=20returned=E2=80=A6=20(#596?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: jespersoderlund --- src/config/config_impl.go | 1 + test/config/basic_config.yaml | 1 + test/config/config_test.go | 2 ++ test/service/ratelimit_test.go | 2 +- 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/config/config_impl.go b/src/config/config_impl.go index 0c4152a6..df0e473d 100644 --- a/src/config/config_impl.go +++ b/src/config/config_impl.go @@ -85,6 +85,7 @@ func NewRateLimit(requestsPerUnit uint32, unit pb.RateLimitResponse_RateLimit_Un Limit: &pb.RateLimitResponse_RateLimit{ RequestsPerUnit: requestsPerUnit, Unit: unit, + Name: name, }, Unlimited: unlimited, ShadowMode: shadowMode, diff --git a/test/config/basic_config.yaml b/test/config/basic_config.yaml index 1ce7c9af..8992966f 100644 --- a/test/config/basic_config.yaml +++ b/test/config/basic_config.yaml @@ -42,6 +42,7 @@ descriptors: - key: key4 rate_limit: + name: key4_rate_limit unit: day requests_per_unit: 1 diff --git a/test/config/config_test.go b/test/config/config_test.go index bceaa2e6..eb52974f 100644 --- a/test/config/config_test.go +++ b/test/config/config_test.go @@ -149,6 +149,7 @@ func TestBasicConfig(t *testing.T) { rl.Stats.NearLimit.Inc() rl.Stats.WithinLimit.Inc() assert.EqualValues(1, rl.Limit.RequestsPerUnit) + assert.Empty(rl.Limit.Name, "No name provided in config") assert.Equal(pb.RateLimitResponse_RateLimit_HOUR, rl.Limit.Unit) assert.EqualValues(1, stats.NewCounter("test-domain.key3.total_hits").Value()) assert.EqualValues(1, stats.NewCounter("test-domain.key3.over_limit").Value()) @@ -165,6 +166,7 @@ func TestBasicConfig(t *testing.T) { rl.Stats.NearLimit.Inc() rl.Stats.WithinLimit.Inc() assert.EqualValues(1, rl.Limit.RequestsPerUnit) + assert.EqualValues("key4_rate_limit", rl.Limit.Name, "Name provided in config") assert.Equal(pb.RateLimitResponse_RateLimit_DAY, rl.Limit.Unit) assert.EqualValues(1, stats.NewCounter("test-domain.key4.total_hits").Value()) assert.EqualValues(1, stats.NewCounter("test-domain.key4.over_limit").Value()) diff --git a/test/service/ratelimit_test.go b/test/service/ratelimit_test.go index 4d2cde53..18c3cafc 100644 --- a/test/service/ratelimit_test.go +++ b/test/service/ratelimit_test.go @@ -153,7 +153,7 @@ func TestService(test *testing.T) { request = common.NewRateLimitRequest( "different-domain", [][][2]string{{{"foo", "bar"}}, {{"hello", "world"}}}, 1) limits := []*config.RateLimit{ - config.NewRateLimit(10, pb.RateLimitResponse_RateLimit_MINUTE, t.statsManager.NewStats("key"), false, false, "", nil, false), + config.NewRateLimit(10, pb.RateLimitResponse_RateLimit_MINUTE, t.statsManager.NewStats("key"), false, false, "key_name", nil, false), nil, } t.config.EXPECT().GetLimit(context.Background(), "different-domain", request.Descriptors[0]).Return(limits[0])