main
 1package dto
 2
 3import (
 4	"testing"
 5
 6	"github.com/stretchr/testify/assert"
 7)
 8
 9func TestClientInformationResponse(t *testing.T) {
10	t.Run("Valid", func(t *testing.T) {
11		t.Run("blank client_name", func(t *testing.T) {
12			response := NewClientInformationResponse(&ClientRegistrationRequest{
13				ClientMetadata: ClientMetadata{
14					ClientName: "",
15				},
16			})
17			assert.Equal(t, InvalidClientMetadata, response.Valid())
18		})
19
20		t.Run("empty redirect_uris", func(t *testing.T) {
21			response := NewClientInformationResponse(&ClientRegistrationRequest{
22				ClientMetadata: ClientMetadata{
23					ClientName:   "Example",
24					RedirectUris: []string{},
25				},
26			})
27			assert.Equal(t, InvalidRedirectUri, response.Valid())
28		})
29
30		t.Run("invalid redirect_uri", func(t *testing.T) {
31			assert.Equal(t, InvalidRedirectUri, NewClientInformationResponse(&ClientRegistrationRequest{
32				ClientMetadata: ClientMetadata{
33					ClientName:   "Example",
34					RedirectUris: []string{"invalid"},
35				},
36			}).Valid())
37		})
38	})
39}