From 8643d8e6c67acf33233da7a69ff3ec2a1f7d91b0 Mon Sep 17 00:00:00 2001 From: Timothy Messier Date: Wed, 1 Nov 2023 14:19:09 +0000 Subject: [PATCH] feat(errors): Add code for invalid configuration --- internal/errors/code.go | 3 +++ internal/errors/code_test.go | 5 +++++ internal/errors/info.go | 4 ++++ internal/errors/kind.go | 24 +++++++++++++----------- internal/errors/kind_test.go | 5 +++++ 5 files changed, 30 insertions(+), 11 deletions(-) diff --git a/internal/errors/code.go b/internal/errors/code.go index c474638c0e..62950b4f38 100644 --- a/internal/errors/code.go +++ b/internal/errors/code.go @@ -146,4 +146,7 @@ const ( // OIDC authentication provided errors OidcProviderCallbackError Code = 4000 // OidcProviderCallbackError represents an error that is passed by the OIDC provider to the callback endpoint + + // Configuration error codes + InvalidConfiguration Code = 5000 // InvalidConfiguration represents an error with the configuration file. ) diff --git a/internal/errors/code_test.go b/internal/errors/code_test.go index e98d6fed39..4ad8be5b85 100644 --- a/internal/errors/code_test.go +++ b/internal/errors/code_test.go @@ -410,6 +410,11 @@ func TestCode_Both_String_Info(t *testing.T) { c: ChecksumMismatch, want: ChecksumMismatch, }, + { + name: "InvalidConfiguration", + c: InvalidConfiguration, + want: InvalidConfiguration, + }, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { diff --git a/internal/errors/info.go b/internal/errors/info.go index 6dea00cdf4..d1951be66b 100644 --- a/internal/errors/info.go +++ b/internal/errors/info.go @@ -343,4 +343,8 @@ var errorCodeInfo = map[Code]Info{ Message: "checksum mismatch", Kind: Integrity, }, + InvalidConfiguration: { + Message: "invalid configuration", + Kind: Configuration, + }, } diff --git a/internal/errors/kind.go b/internal/errors/kind.go index 1f7a6a8321..79118d2455 100644 --- a/internal/errors/kind.go +++ b/internal/errors/kind.go @@ -18,20 +18,22 @@ const ( State External VaultToken + Configuration ) func (e Kind) String() string { return map[Kind]string{ - Other: "unknown", - Parameter: "parameter violation", - Integrity: "integrity violation", - Search: "search issue", - Password: "password violation", - Transaction: "db transaction issue", - Encryption: "encryption issue", - Encoding: "encoding issue", - State: "state violation", - External: "external system issue", - VaultToken: "vault token issue", + Other: "unknown", + Parameter: "parameter violation", + Integrity: "integrity violation", + Search: "search issue", + Password: "password violation", + Transaction: "db transaction issue", + Encryption: "encryption issue", + Encoding: "encoding issue", + State: "state violation", + External: "external system issue", + VaultToken: "vault token issue", + Configuration: "configuration issue", }[e] } diff --git a/internal/errors/kind_test.go b/internal/errors/kind_test.go index 842fea0b66..726809e5a0 100644 --- a/internal/errors/kind_test.go +++ b/internal/errors/kind_test.go @@ -46,6 +46,11 @@ func TestKind_String(t *testing.T) { e: VaultToken, want: "vault token issue", }, + { + name: "Configuration", + e: Configuration, + want: "configuration issue", + }, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) {