mirror of
https://github.com/steveiliop56/tinyauth.git
synced 2025-10-28 04:35:40 +00:00
fix: filter oauth whitelist to remove empty strings
This commit is contained in:
@@ -62,7 +62,9 @@ var rootCmd = &cobra.Command{
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Create oauth whitelist
|
// Create oauth whitelist
|
||||||
oauthWhitelist := strings.Split(config.OAuthWhitelist, ",")
|
oauthWhitelist := utils.Filter(strings.Split(config.OAuthWhitelist, ","), func(val string) bool {
|
||||||
|
return val != ""
|
||||||
|
})
|
||||||
log.Debug().Msg("Parsed OAuth whitelist")
|
log.Debug().Msg("Parsed OAuth whitelist")
|
||||||
|
|
||||||
// Create OAuth config
|
// Create OAuth config
|
||||||
|
|||||||
@@ -207,3 +207,13 @@ func GetTinyauthLabels(labels map[string]string) types.TinyauthLabels {
|
|||||||
func OAuthConfigured(config types.Config) bool {
|
func OAuthConfigured(config types.Config) bool {
|
||||||
return (config.GithubClientId != "" && config.GithubClientSecret != "") || (config.GoogleClientId != "" && config.GoogleClientSecret != "") || (config.GenericClientId != "" && config.GenericClientSecret != "") || (config.TailscaleClientId != "" && config.TailscaleClientSecret != "")
|
return (config.GithubClientId != "" && config.GithubClientSecret != "") || (config.GoogleClientId != "" && config.GoogleClientSecret != "") || (config.GenericClientId != "" && config.GenericClientSecret != "") || (config.TailscaleClientId != "" && config.TailscaleClientSecret != "")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Filter helper function
|
||||||
|
func Filter[T any](slice []T, test func(T) bool) (res []T) {
|
||||||
|
for _, value := range slice {
|
||||||
|
if test(value) {
|
||||||
|
res = append(res, value)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return res
|
||||||
|
}
|
||||||
|
|||||||
@@ -313,3 +313,22 @@ func TestGetTinyauthLabels(t *testing.T) {
|
|||||||
t.Fatalf("Expected %v, got %v", expected, result)
|
t.Fatalf("Expected %v, got %v", expected, result)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Test the filter function
|
||||||
|
func TestFilter(t *testing.T) {
|
||||||
|
t.Log("Testing filter helper")
|
||||||
|
|
||||||
|
// Create variables
|
||||||
|
data := []string{"", "val1", "", "val2", "", "val3", ""}
|
||||||
|
expected := []string{"val1", "val2", "val3"}
|
||||||
|
|
||||||
|
// Test the filter function
|
||||||
|
result := utils.Filter(data, func(val string) bool {
|
||||||
|
return val != ""
|
||||||
|
})
|
||||||
|
|
||||||
|
// Check if the result is equal to the expected
|
||||||
|
if !reflect.DeepEqual(expected, result) {
|
||||||
|
t.Fatalf("Expected %v, got %v", expected, result)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user