@@ -1988,30 +1988,36 @@ func TestUserLogout(t *testing.T) {
1988
1988
func TestOIDCDomainErrorMessage (t * testing.T ) {
1989
1989
t .Parallel ()
1990
1990
1991
- fake := oidctest .NewFakeIDP (t , oidctest .WithServing ())
1992
-
1993
1991
allowedDomains := []string {"allowed1.com" , "allowed2.org" , "company.internal" }
1994
- cfg := fake .OIDCConfig (t , nil , func (cfg * coderd.OIDCConfig ) {
1995
- cfg .EmailDomain = allowedDomains
1996
- cfg .AllowSignups = true
1997
- })
1998
1992
1999
- server := coderdtest .New (t , & coderdtest.Options {
2000
- OIDCConfig : cfg ,
2001
- })
1993
+ setup := func () (* oidctest.FakeIDP , * codersdk.Client ) {
1994
+ fake := oidctest .NewFakeIDP (t , oidctest .WithServing ())
1995
+
1996
+ cfg := fake .OIDCConfig (t , nil , func (cfg * coderd.OIDCConfig ) {
1997
+ cfg .EmailDomain = allowedDomains
1998
+ cfg .AllowSignups = true
1999
+ })
2000
+
2001
+ client := coderdtest .New (t , & coderdtest.Options {
2002
+ OIDCConfig : cfg ,
2003
+ })
2004
+ return fake , client
2005
+ }
2002
2006
2003
2007
// Test case 1: Email domain not in allowed list
2004
2008
t .Run ("ErrorMessageOmitsDomains" , func (t * testing.T ) {
2005
2009
t .Parallel ()
2006
2010
2011
+ fake , client := setup ()
2012
+
2007
2013
// Prepare claims with email from unauthorized domain
2008
2014
claims := jwt.MapClaims {
2009
2015
2010
2016
"email_verified" : true ,
2011
2017
"sub" : uuid .NewString (),
2012
2018
}
2013
2019
2014
- _ , resp := fake .AttemptLogin (t , server , claims )
2020
+ _ , resp := fake .AttemptLogin (t , client , claims )
2015
2021
defer resp .Body .Close ()
2016
2022
2017
2023
require .Equal (t , http .StatusForbidden , resp .StatusCode )
@@ -2031,14 +2037,16 @@ func TestOIDCDomainErrorMessage(t *testing.T) {
2031
2037
t .Run ("MalformedEmailErrorOmitsDomains" , func (t * testing.T ) {
2032
2038
t .Parallel ()
2033
2039
2040
+ fake , client := setup ()
2041
+
2034
2042
// Prepare claims with an invalid email format (no @ symbol)
2035
2043
claims := jwt.MapClaims {
2036
2044
"email" : "invalid-email-without-domain" ,
2037
2045
"email_verified" : true ,
2038
2046
"sub" : uuid .NewString (),
2039
2047
}
2040
2048
2041
- _ , resp := fake .AttemptLogin (t , server , claims )
2049
+ _ , resp := fake .AttemptLogin (t , client , claims )
2042
2050
defer resp .Body .Close ()
2043
2051
2044
2052
require .Equal (t , http .StatusForbidden , resp .StatusCode )
0 commit comments