diff --git a/internal/provider/vk/internal/vkauth/cache.go b/internal/provider/vk/internal/vkauth/cache.go index 1a2a1a0..5053b22 100644 --- a/internal/provider/vk/internal/vkauth/cache.go +++ b/internal/provider/vk/internal/vkauth/cache.go @@ -78,5 +78,6 @@ func IsAuthError(err error) bool { strings.Contains(s, "Unauthorized") || strings.Contains(s, "authentication") || strings.Contains(s, "invalid credential") || - strings.Contains(s, "stale nonce") + strings.Contains(s, "stale nonce") || + strings.Contains(s, "486") } diff --git a/internal/provider/vk/internal/vkauth/client_test.go b/internal/provider/vk/internal/vkauth/client_test.go index 59ff27c..8834a88 100644 --- a/internal/provider/vk/internal/vkauth/client_test.go +++ b/internal/provider/vk/internal/vkauth/client_test.go @@ -31,13 +31,14 @@ func TestIsAuthError(t *testing.T) { t.Parallel() cases := map[string]bool{ - "401 Unauthorized": true, - "alloc failed: 401": true, - "stale nonce": true, - "invalid credential": true, - "authentication required": true, - "connection refused": false, - "": false, + "401 Unauthorized": true, + "alloc failed: 401": true, + "stale nonce": true, + "invalid credential": true, + "authentication required": true, + "486: Allocation Quota Reached": true, + "connection refused": false, + "": false, } for msg, want := range cases { got := IsAuthError(errors.New(msg))