package notif import ( "testing" "github.com/yusing/go-proxy/internal/utils" . "github.com/yusing/go-proxy/internal/utils/testing" ) func TestGotifyValidation(t *testing.T) { t.Parallel() newGotify := Providers[ProviderGotify] t.Run("valid", func(t *testing.T) { t.Parallel() _, err := newGotify(map[string]any{ "name": "test", "url": "https://example.com", "token": "token", }) ExpectNoError(t, err) }) t.Run("missing url", func(t *testing.T) { t.Parallel() _, err := newGotify(map[string]any{ "name": "test", "token": "token", }) ExpectError(t, utils.ErrValidationError, err) }) t.Run("missing token", func(t *testing.T) { t.Parallel() _, err := newGotify(map[string]any{ "name": "test", "url": "https://example.com", }) ExpectError(t, utils.ErrValidationError, err) }) t.Run("invalid url", func(t *testing.T) { t.Parallel() _, err := newGotify(map[string]any{ "name": "test", "url": "example.com", "token": "token", }) ExpectError(t, utils.ErrValidationError, err) }) }