summaryrefslogtreecommitdiff
path: root/client
diff options
context:
space:
mode:
authorjwijenbergh <jeroenwijenbergh@protonmail.com>2023-05-26 17:15:34 +0200
committerJeroen Wijenbergh <46386452+jwijenbergh@users.noreply.github.com>2023-09-25 09:43:37 +0200
commitaa81b9e3e3c28bdc2db448b343be4c739c1d26cf (patch)
tree6dcd37db5a64000a36a215a882af3ecbe73e19e8 /client
parente19be86197300f7d52c4f87901cc13835e24c964 (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
Diffstat (limited to 'client')
-rw-r--r--client/client_test.go130
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")