Skip to content

Commit 1b6d8b5

Browse files
committed
✅ Add test cases
1 parent f1e50aa commit 1b6d8b5

File tree

1 file changed

+65
-0
lines changed

1 file changed

+65
-0
lines changed

internal/auth_test.go

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -252,6 +252,71 @@ func TestRedirectUri(t *testing.T) {
252252
assert.Equal("https", uri.Scheme)
253253
assert.Equal("another.com", uri.Host)
254254
assert.Equal("/_oauth", uri.Path)
255+
256+
//
257+
// With correct Auth URL + cookie domain, multiple AuthHosts and cookie domains
258+
// - will use matching authHost
259+
//
260+
config.AuthHosts = CommaSeparatedList{"auth.example.com", "auth.another.com"}
261+
config.CookieDomains = []CookieDomain{*NewCookieDomain("example.com"), *NewCookieDomain("another.com")}
262+
263+
uri, err = url.Parse(redirectUri(r))
264+
assert.Nil(err)
265+
assert.Equal("https", uri.Scheme)
266+
assert.Equal("auth.another.com", uri.Host)
267+
assert.Equal("/_oauth", uri.Path)
268+
269+
//
270+
// With correct Auth URL + no cookie domains
271+
// - will not use authHost
272+
//
273+
config.AuthHosts = CommaSeparatedList{"auth.example.com", "auth.another.com"}
274+
config.CookieDomains = []CookieDomain{}
275+
276+
uri, err = url.Parse(redirectUri(r))
277+
assert.Nil(err)
278+
assert.Equal("https", uri.Scheme)
279+
assert.Equal("another.com", uri.Host)
280+
assert.Equal("/_oauth", uri.Path)
281+
282+
//
283+
// With correct Auth URL + no matching cookie domains
284+
// - will not use authHost
285+
//
286+
config.AuthHosts = CommaSeparatedList{"auth.example.com", "auth.another.com"}
287+
config.CookieDomains = []CookieDomain{*NewCookieDomain("example.com"), *NewCookieDomain("another.example")}
288+
289+
uri, err = url.Parse(redirectUri(r))
290+
assert.Nil(err)
291+
assert.Equal("https", uri.Scheme)
292+
assert.Equal("another.com", uri.Host)
293+
assert.Equal("/_oauth", uri.Path)
294+
295+
//
296+
// With no matching Auth Host + matching cookie domains
297+
// - will not use authHost
298+
//
299+
config.AuthHosts = CommaSeparatedList{"auth.example.com", "auth.another.example"}
300+
config.CookieDomains = []CookieDomain{*NewCookieDomain("example.com"), *NewCookieDomain("another.com")}
301+
302+
uri, err = url.Parse(redirectUri(r))
303+
assert.Nil(err)
304+
assert.Equal("https", uri.Scheme)
305+
assert.Equal("another.com", uri.Host)
306+
assert.Equal("/_oauth", uri.Path)
307+
308+
//
309+
// With no matching Auth Host + no matching cookie domains
310+
// - will not use authHost
311+
//
312+
config.AuthHosts = CommaSeparatedList{"auth.example.com", "auth.another.example"}
313+
config.CookieDomains = []CookieDomain{*NewCookieDomain("example.com"), *NewCookieDomain("another.example")}
314+
315+
uri, err = url.Parse(redirectUri(r))
316+
assert.Nil(err)
317+
assert.Equal("https", uri.Scheme)
318+
assert.Equal("another.com", uri.Host)
319+
assert.Equal("/_oauth", uri.Path)
255320
}
256321

257322
func TestAuthMakeCookie(t *testing.T) {

0 commit comments

Comments
 (0)