(t *testing.T)
| 519 | } |
| 520 | |
| 521 | func TestSetURLQueryParam(t *testing.T) { |
| 522 | var oidcAuthProviderGoogle = "google" |
| 523 | tests := []struct { |
| 524 | name string |
| 525 | inputCallbackURL string |
| 526 | inputParamName string |
| 527 | inputParamValue string |
| 528 | wantCallbackURL string |
| 529 | wantError error |
| 530 | }{{ |
| 531 | name: "Add provider to callback URL", |
| 532 | inputCallbackURL: "http://localhost:4984/default/_oidc_callback", |
| 533 | inputParamName: OIDCAuthProvider, |
| 534 | inputParamValue: oidcAuthProviderGoogle, |
| 535 | wantCallbackURL: "http://localhost:4984/default/_oidc_callback?provider=google", |
| 536 | }, { |
| 537 | name: "Add provider to callback URL with ? character", |
| 538 | inputCallbackURL: "http://localhost:4984/default/_oidc_callback?", |
| 539 | inputParamName: OIDCAuthProvider, |
| 540 | inputParamValue: oidcAuthProviderGoogle, |
| 541 | wantCallbackURL: "http://localhost:4984/default/_oidc_callback?provider=google", |
| 542 | }, { |
| 543 | name: "Add provider to empty callback URL", |
| 544 | inputCallbackURL: "", |
| 545 | inputParamName: OIDCAuthProvider, |
| 546 | inputParamValue: oidcAuthProviderGoogle, |
| 547 | wantCallbackURL: "", |
| 548 | wantError: ErrSetURLQueryParam, |
| 549 | }, { |
| 550 | name: "Add empty provider value to callback URL", |
| 551 | inputCallbackURL: "http://localhost:4984/default/_oidc_callback", |
| 552 | inputParamName: OIDCAuthProvider, |
| 553 | inputParamValue: "", |
| 554 | wantCallbackURL: "", |
| 555 | wantError: ErrSetURLQueryParam, |
| 556 | }, { |
| 557 | name: "Add empty provider name to callback URL", |
| 558 | inputCallbackURL: "http://localhost:4984/default/_oidc_callback", |
| 559 | inputParamName: "", |
| 560 | inputParamValue: oidcAuthProviderGoogle, |
| 561 | wantCallbackURL: "", |
| 562 | wantError: ErrSetURLQueryParam, |
| 563 | }, { |
| 564 | name: "Update provider in callback URL", |
| 565 | inputCallbackURL: "http://localhost:4984/default/_oidc_callback?provider=facebook", |
| 566 | inputParamName: OIDCAuthProvider, |
| 567 | inputParamValue: oidcAuthProviderGoogle, |
| 568 | wantCallbackURL: "http://localhost:4984/default/_oidc_callback?provider=google", |
| 569 | }, { |
| 570 | name: "Add provider to callback URL with illegal value in query param", |
| 571 | inputCallbackURL: "http://localhost:4984/default/_oidc_callback?provider=%%3", |
| 572 | inputParamName: OIDCAuthProvider, |
| 573 | inputParamValue: oidcAuthProviderGoogle, |
| 574 | wantCallbackURL: "", |
| 575 | wantError: url.EscapeError("%%3"), |
| 576 | }, { |
| 577 | name: "Add provider to callback URL with missing protocol scheme", |
| 578 | inputCallbackURL: "://localhost:4984/default/_oidc_callback", |
nothing calls this directly
no test coverage detected