| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- //go:build unit
- package handler
- import (
- "math"
- "testing"
- "github.com/stretchr/testify/require"
- )
- func TestValidateAPIKeyCreateRequest(t *testing.T) {
- zero, large, negative, nan, inf := 0.0, 1e100, -1.0, math.NaN(), math.Inf(1)
- positiveDays, zeroDays, negativeDays := 1, 0, -1
- require.NoError(t, validateAPIKeyCreateRequest(CreateAPIKeyRequest{}))
- require.NoError(t, validateAPIKeyCreateRequest(CreateAPIKeyRequest{Quota: &zero, RateLimit5h: &large, ExpiresInDays: &positiveDays}))
- for _, req := range []CreateAPIKeyRequest{
- {Quota: &negative},
- {Quota: &nan},
- {RateLimit5h: &inf},
- {RateLimit1d: &negative},
- {RateLimit7d: &negative},
- {ExpiresInDays: &zeroDays},
- {ExpiresInDays: &negativeDays},
- } {
- require.Error(t, validateAPIKeyCreateRequest(req))
- }
- }
- func TestValidateAPIKeyUpdateRequest(t *testing.T) {
- zero, large, negative, nan, inf := 0.0, 1e100, -1.0, math.NaN(), math.Inf(-1)
- require.NoError(t, validateAPIKeyUpdateRequest(UpdateAPIKeyRequest{Quota: &zero, RateLimit7d: &large}))
- for _, req := range []UpdateAPIKeyRequest{
- {Quota: &negative},
- {RateLimit5h: &nan},
- {RateLimit1d: &inf},
- {RateLimit7d: &negative},
- } {
- require.Error(t, validateAPIKeyUpdateRequest(req))
- }
- }
|