@@ -919,20 +919,32 @@ func TestOAuth_GrantScopesClaimAllGroups(t *testing.T) {
919919}
920920
921921func testOAuth2WellKnown (t * testing.T ) {
922+ defer test .MockVariableValue (& setting .AppURL , "https://try.gitea.io/" )()
922923 urlOpenidConfiguration := "/.well-known/openid-configuration"
923924
924- defer test .MockVariableValue (& setting .AppURL , "https://try.gitea.io/" )()
925- req := NewRequest (t , "GET" , urlOpenidConfiguration )
926- resp := MakeRequest (t , req , http .StatusOK )
927- var respMap map [string ]any
928- DecodeJSON (t , resp , & respMap )
929- assert .Equal (t , "https://try.gitea.io" , respMap ["issuer" ])
930- assert .Equal (t , "https://try.gitea.io/login/oauth/authorize" , respMap ["authorization_endpoint" ])
931- assert .Equal (t , "https://try.gitea.io/login/oauth/access_token" , respMap ["token_endpoint" ])
932- assert .Equal (t , "https://try.gitea.io/login/oauth/keys" , respMap ["jwks_uri" ])
933- assert .Equal (t , "https://try.gitea.io/login/oauth/userinfo" , respMap ["userinfo_endpoint" ])
934- assert .Equal (t , "https://try.gitea.io/login/oauth/introspect" , respMap ["introspection_endpoint" ])
935- assert .Equal (t , []any {"RS256" }, respMap ["id_token_signing_alg_values_supported" ])
925+ t .Run ("WellKnown" , func (t * testing.T ) {
926+ req := NewRequest (t , "GET" , urlOpenidConfiguration )
927+ resp := MakeRequest (t , req , http .StatusOK )
928+ var respMap map [string ]any
929+ DecodeJSON (t , resp , & respMap )
930+ assert .Equal (t , "https://try.gitea.io" , respMap ["issuer" ])
931+ assert .Equal (t , "https://try.gitea.io/login/oauth/authorize" , respMap ["authorization_endpoint" ])
932+ assert .Equal (t , "https://try.gitea.io/login/oauth/access_token" , respMap ["token_endpoint" ])
933+ assert .Equal (t , "https://try.gitea.io/login/oauth/keys" , respMap ["jwks_uri" ])
934+ assert .Equal (t , "https://try.gitea.io/login/oauth/userinfo" , respMap ["userinfo_endpoint" ])
935+ assert .Equal (t , "https://try.gitea.io/login/oauth/introspect" , respMap ["introspection_endpoint" ])
936+ assert .Equal (t , []any {"RS256" }, respMap ["id_token_signing_alg_values_supported" ])
937+ })
938+
939+ t .Run ("WellKnownWithIssuer" , func (t * testing.T ) {
940+ defer test .MockVariableValue (& setting .OAuth2 .JWTClaimIssuer , "https://try.gitea.io/" )()
941+ req := NewRequest (t , "GET" , urlOpenidConfiguration )
942+ resp := MakeRequest (t , req , http .StatusOK )
943+ var respMap map [string ]any
944+ DecodeJSON (t , resp , & respMap )
945+ assert .Equal (t , "https://try.gitea.io/" , respMap ["issuer" ]) // has trailing by JWTClaimIssuer
946+ assert .Equal (t , "https://try.gitea.io/login/oauth/authorize" , respMap ["authorization_endpoint" ])
947+ })
936948
937949 defer test .MockVariableValue (& setting .OAuth2 .Enabled , false )()
938950 MakeRequest (t , NewRequest (t , "GET" , urlOpenidConfiguration ), http .StatusNotFound )
0 commit comments