From af57a6bafc761f015f08fecbdeb27f7439852f24 Mon Sep 17 00:00:00 2001 From: Rod Hynes Date: Tue, 7 Nov 2023 14:40:15 -0500 Subject: [PATCH] Fix: reference DisabledTunnelProtocols in TestTunnelProtocolValidation --- psiphon/common/protocol/protocol_test.go | 38 ++++++++++++++++++++---- 1 file changed, 32 insertions(+), 6 deletions(-) diff --git a/psiphon/common/protocol/protocol_test.go b/psiphon/common/protocol/protocol_test.go index f1d29b911..8b1ca4230 100644 --- a/psiphon/common/protocol/protocol_test.go +++ b/psiphon/common/protocol/protocol_test.go @@ -23,17 +23,43 @@ import ( "fmt" "reflect" "testing" + + "github.com/Psiphon-Labs/psiphon-tunnel-core/psiphon/common" ) func TestTunnelProtocolValidation(t *testing.T) { - err := SupportedTunnelProtocols.Validate() - if err != nil { - t.Errorf("unexpected Validate error: %s", err) + validSupportedProtocols := make(TunnelProtocols, 0) + for _, p := range SupportedTunnelProtocols { + if common.Contains(DisabledTunnelProtocols, p) { + continue + } + validSupportedProtocols = append(validSupportedProtocols, p) + } + + if len(validSupportedProtocols) == len(SupportedTunnelProtocols) { + + err := SupportedTunnelProtocols.Validate() + if err != nil { + t.Errorf("unexpected Validate error: %s", err) + } + + } else { + + err := SupportedTunnelProtocols.Validate() + if err == nil { + t.Errorf("unexpected Validate success") + } + + err = validSupportedProtocols.Validate() + if err != nil { + t.Errorf("unexpected Validate error: %s", err) + } + } invalidProtocols := TunnelProtocols{"OSSH", "INVALID-PROTOCOL"} - err = invalidProtocols.Validate() + err := invalidProtocols.Validate() if err == nil { t.Errorf("unexpected Validate success") } @@ -47,8 +73,8 @@ func TestTunnelProtocolValidation(t *testing.T) { prunedProtocols := pruneProtocols.PruneInvalid() - if !reflect.DeepEqual(prunedProtocols, SupportedTunnelProtocols) { - t.Errorf("unexpected %+v != %+v", prunedProtocols, SupportedTunnelProtocols) + if !reflect.DeepEqual(prunedProtocols, validSupportedProtocols) { + t.Errorf("unexpected %+v != %+v", prunedProtocols, validSupportedProtocols) } }