diff options
| author | jwijenbergh <jeroenwijenbergh@protonmail.com> | 2023-05-26 17:15:34 +0200 |
|---|---|---|
| committer | Jeroen Wijenbergh <46386452+jwijenbergh@users.noreply.github.com> | 2023-09-25 09:43:37 +0200 |
| commit | aa81b9e3e3c28bdc2db448b343be4c739c1d26cf (patch) | |
| tree | 6dcd37db5a64000a36a215a882af3ecbe73e19e8 | |
| parent | e19be86197300f7d52c4f87901cc13835e24c964 (diff) | |
Client Test: Remove OAuth parameter tests
These are in the wrong place. Also they're now broken with the i18n
custom error types. They should be implemented in the OAuth part of
the code. This will be done in the separate OAuth repository that I am
now building
| -rw-r--r-- | client/client_test.go | 130 |
1 files changed, 0 insertions, 130 deletions
diff --git a/client/client_test.go b/client/client_test.go index e60fd46..0d26bd9 100644 --- a/client/client_test.go +++ b/client/client_test.go @@ -3,8 +3,6 @@ package client import ( "context" "fmt" - "net/http" - "net/url" "os" "os/exec" "strconv" @@ -16,7 +14,6 @@ import ( "github.com/eduvpn/eduvpn-common/types/cookie" "github.com/eduvpn/eduvpn-common/types/protocol" srvtypes "github.com/eduvpn/eduvpn-common/types/server" - "github.com/go-errors/errors" ) func getServerURI(t *testing.T) string { @@ -107,133 +104,6 @@ func TestServer(t *testing.T) { } } -func testConnectOAuthParameter( - t *testing.T, - parameters httpw.URLParameters, - errPrefix string, -) { - serverURI := getServerURI(t) - configDirectory := "test_oauth_parameters" - - state := &Client{} - - ck := cookie.NewWithContext(context.Background()) - defer ck.Cancel() //nolint:errcheck - state, err := New( - "org.letsconnect-vpn.app.linux", - "0.1.0-test", - configDirectory, - func(oldState FSMStateID, newState FSMStateID, data interface{}) bool { - if newState == StateOAuthStarted { - server, serverErr := state.Servers.CustomServer(serverURI) - if serverErr != nil { - t.Fatalf("No server with error: %v", serverErr) - } - port, portErr := server.OAuth().ListenerPort() - if portErr != nil { - _ = ck.Cancel() - t.Fatalf("No port with error: %v", portErr) - } - baseURL := fmt.Sprintf("http://127.0.0.1:%d/callback", port) - p, err := url.Parse(baseURL) - if err != nil { - _ = ck.Cancel() - t.Fatalf("Failed to parse URL with error: %v", err) - } - url, err := httpw.ConstructURL(p, parameters) - if err != nil { - _ = ck.Cancel() - t.Fatalf( - "Error: Constructing url %s with parameters %s", - baseURL, - fmt.Sprint(parameters), - ) - } - go func() { - _, getErr := http.Get(url) - if getErr != nil { - _ = ck.Cancel() - t.Logf("HTTP GET error: %v", getErr) - } - }() - } - return true - }, - false, - ) - if err != nil { - t.Fatalf("Creating client error: %v", err) - } - err = state.Register() - if err != nil { - t.Fatalf("Registering error: %v", err) - } - - err = state.AddServer(&ck, serverURI, srvtypes.TypeCustom, false) - - if errPrefix == "" { - if err != nil { - t.Fatalf("unexpected error %v", err) - } - return - } - - if err == nil { - t.Fatalf("expected error with prefix '%s' but got nil", errPrefix) - } - - err1, ok := err.(*errors.Error) - // We ensure the error is of a wrappedErrorMessage - if !ok { - t.Fatalf("error %T = %v, wantErr %T", err, err, &errors.Error{}) - } - - msg := err1.Error() - if err1.Err != nil { - msg = err1.Err.Error() - } - - // Then we check if the cause is correct - if !strings.HasPrefix(msg, errPrefix) { - t.Fatalf("expected error with prefix '%s' but got '%s'", errPrefix, msg) - } -} - -func TestConnectOAuthParameters(t *testing.T) { - const ( - callbackParameterErrorPrefix = "failed retrieving parameter '" - callbackStateMatchErrorPrefix = "failed matching state" - callbackISSMatchErrorPrefix = "failed matching ISS" - ) - - serverURI := getServerURI(t) - // serverURI already ends with a / due to using the util EnsureValidURL function - iss := serverURI - tests := []struct { - errPrefix string - parameters httpw.URLParameters - }{ - // missing state and code - {callbackParameterErrorPrefix, httpw.URLParameters{"iss": iss}}, - // missing state - {callbackParameterErrorPrefix, httpw.URLParameters{"iss": iss, "code": "42"}}, - // invalid state - { - callbackStateMatchErrorPrefix, - httpw.URLParameters{"iss": iss, "code": "42", "state": "21"}, - }, - // invalid iss - { - callbackISSMatchErrorPrefix, - httpw.URLParameters{"iss": "37", "code": "42", "state": "21"}, - }, - } - - for _, test := range tests { - testConnectOAuthParameter(t, test.parameters, test.errPrefix) - } -} - func TestTokenExpired(t *testing.T) { serverURI := getServerURI(t) expiredTTL := os.Getenv("OAUTH_EXPIRED_TTL") |
