diff options
| author | jwijenbergh <jeroenwijenbergh@protonmail.com> | 2023-01-31 12:00:44 +0100 |
|---|---|---|
| committer | jwijenbergh <jeroenwijenbergh@protonmail.com> | 2023-01-31 12:05:39 +0100 |
| commit | f25dcda007547f7dfb75c4aded7fd94ed2236e21 (patch) | |
| tree | 24873417df82525c49ea32212f5c9ed7998f1e0e /client/client_test.go | |
| parent | 31ef27e6faaa82a12d2d841d18f1df6732a3ecf0 (diff) | |
Client: Check if client ID is valid
Diffstat (limited to 'client/client_test.go')
| -rw-r--r-- | client/client_test.go | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/client/client_test.go b/client/client_test.go index ec5086f..b4b944b 100644 --- a/client/client_test.go +++ b/client/client_test.go @@ -406,3 +406,41 @@ func TestPreferTCP(t *testing.T) { t.Fatalf("Suffix for disable prefer TCP is not in the right order for config: %s", config.Config) } } + +func TestInvalidClientID(t *testing.T) { + tests := map[string]bool { + "test": false, + "org.letsconnect-vpn.app.linux": true, + "org.letsconnect-vpn": false, + "org.letsconnect-vpn.app": false, + "org.letsconnect-vpn.linuxsd": false, + "org.letsconnect-vpn.app.macos": true, + } + + for k, v := range tests { + state := &Client{} + registerErr := state.Register( + k, + "configsclientid", + "en", + func(old FSMStateID, new FSMStateID, data interface{}) bool { + stateCallback(t, old, new, data, state) + return true + }, + false, + ) + if v { + if registerErr != nil { + t.Fatalf("expected valid register with clientID: %v, got error: %v", k, registerErr) + } + continue + } + if registerErr == nil { + t.Fatalf("expected invalid register with clientID: %v, but got no error", k) + } + if !strings.HasPrefix(registerErr.Error(), "client ID is not allowed") { + t.Fatalf("register error has invalid prefix: %v", registerErr.Error()) + } + } + +} |
