photoprism/internal/form/client_test.go

43 lines
1.1 KiB
Go
Raw Normal View History

package form
import (
2024-01-16 18:10:42 +01:00
"flag"
"testing"
"github.com/stretchr/testify/assert"
2024-01-16 18:10:42 +01:00
"github.com/urfave/cli"
"github.com/photoprism/photoprism/pkg/authn"
)
func TestNewClient(t *testing.T) {
t.Run("Defaults", func(t *testing.T) {
client := NewClient()
assert.Equal(t, authn.ProviderClientCredentials, client.Provider())
assert.Equal(t, authn.MethodOAuth2, client.Method())
assert.Equal(t, "", client.Scope())
2024-01-16 16:51:49 +01:00
assert.Equal(t, "", client.Name())
})
}
2024-01-16 18:10:42 +01:00
func TestNewClientFromCli(t *testing.T) {
t.Run("Success", func(t *testing.T) {
globalSet := flag.NewFlagSet("test", 0)
globalSet.String("name", "Test", "")
globalSet.String("scope", "*", "")
globalSet.String("provider", "client_credentials", "")
2024-01-16 18:10:42 +01:00
globalSet.String("method", "totp", "")
app := cli.NewApp()
app.Version = "0.0.0"
c := cli.NewContext(app, globalSet, nil)
client := NewClientFromCli(c)
assert.Equal(t, authn.ProviderClientCredentials, client.Provider())
assert.Equal(t, authn.MethodTOTP, client.Method())
2024-01-16 18:10:42 +01:00
assert.Equal(t, "webdav", client.Scope())
assert.Equal(t, "Test", client.Name())
})
}