commit 5eeb899e3aaaca4cff2548aafaa0bf5314d3407b
Author: David Fifield <da...@bamsoftware.com>
Date:   Sun Dec 8 10:54:45 2013 -0800

    Add TOR_PT_SERVER_TRANSPORT_OPTIONS to TestGetServerBindaddrs.
---
 pt_test.go |   55 ++++++++++++++++++++++++++++++++++++-------------------
 1 file changed, 36 insertions(+), 19 deletions(-)

diff --git a/pt_test.go b/pt_test.go
index 1602fa8..f3d9bc1 100644
--- a/pt_test.go
+++ b/pt_test.go
@@ -254,64 +254,79 @@ func bindaddrSetsEqual(a, b []Bindaddr) bool {
 
 func TestGetServerBindaddrs(t *testing.T) {
        badTests := [...]struct {
-               ptServerBindaddr   string
-               ptServerTransports string
-               methodNames        []string
+               ptServerBindaddr         string
+               ptServerTransports       string
+               ptServerTransportOptions string
+               methodNames              []string
        }{
                {
                        "xxx",
                        "xxx",
+                       "",
                        []string{},
                },
                {
                        "alpha-1.2.3.4",
                        "alpha",
+                       "",
                        []string{"alpha", "beta", "gamma"},
                },
+               {
+                       "alpha-1.2.3.4:1111",
+                       "alpha",
+                       "key=value",
+                       []string{"alpha"},
+               },
        }
        goodTests := [...]struct {
-               ptServerBindaddr   string
-               ptServerTransports string
-               methodNames        []string
-               expected           []Bindaddr
+               ptServerBindaddr         string
+               ptServerTransports       string
+               ptServerTransportOptions string
+               methodNames              []string
+               expected                 []Bindaddr
        }{
                {
                        "alpha-1.2.3.4:1111,beta-[1:2::3:4]:2222",
                        "alpha,beta,gamma",
+                       "alpha:k1=v1,beta:k2=v2,gamma:k3=v3",
                        []string{"alpha", "beta"},
                        []Bindaddr{
-                               {MethodName: "alpha", Addr: &net.TCPAddr{IP: 
net.ParseIP("1.2.3.4"), Port: 1111}},
-                               {MethodName: "beta", Addr: &net.TCPAddr{IP: 
net.ParseIP("1:2::3:4"), Port: 2222}},
+                               {"alpha", &net.TCPAddr{IP: 
net.ParseIP("1.2.3.4"), Port: 1111}, Args{"k1": []string{"v1"}}},
+                               {"beta", &net.TCPAddr{IP: 
net.ParseIP("1:2::3:4"), Port: 2222}, Args{"k2": []string{"v2"}}},
                        },
                },
                {
                        "alpha-1.2.3.4:1111",
                        "xxx",
+                       "",
                        []string{"alpha", "beta", "gamma"},
                        []Bindaddr{},
                },
                {
                        "alpha-1.2.3.4:1111",
                        "alpha,beta,gamma",
+                       "",
                        []string{},
                        []Bindaddr{},
                },
                {
                        "alpha-1.2.3.4:1111,beta-[1:2::3:4]:2222",
                        "*",
+                       "",
                        []string{"alpha", "beta"},
                        []Bindaddr{
-                               {MethodName: "alpha", Addr: &net.TCPAddr{IP: 
net.ParseIP("1.2.3.4"), Port: 1111}},
-                               {MethodName: "beta", Addr: &net.TCPAddr{IP: 
net.ParseIP("1:2::3:4"), Port: 2222}},
+                               {"alpha", &net.TCPAddr{IP: 
net.ParseIP("1.2.3.4"), Port: 1111}, Args{}},
+                               {"beta", &net.TCPAddr{IP: 
net.ParseIP("1:2::3:4"), Port: 2222}, Args{}},
                        },
                },
                {
                        "trebuchet-127.0.0.1:1984,ballista-127.0.0.1:4891",
                        "trebuchet,ballista",
+                       
"trebuchet:secret=nou;trebuchet:cache=/tmp/cache;ballista:secret=yes",
                        []string{"trebuchet", "ballista"},
                        []Bindaddr{
-                               {MethodName: "trebuchet", Addr: 
&net.TCPAddr{IP: net.ParseIP("127.0.0.1"), Port: 1984}},
-                               {MethodName: "ballista", Addr: &net.TCPAddr{IP: 
net.ParseIP("127.0.0.1"), Port: 4891}},
+                               {"trebuchet", &net.TCPAddr{IP: 
net.ParseIP("127.0.0.1"), Port: 1984}, Args{"secret": []string{"nou"}, "cache": 
[]string{"/tmp/cache"}}},
+                               {"ballista", &net.TCPAddr{IP: 
net.ParseIP("127.0.0.1"), Port: 4891}, Args{"secret": []string{"yes"}}},
                        },
                },
        }
@@ -327,24 +342,26 @@ func TestGetServerBindaddrs(t *testing.T) {
        for _, test := range badTests {
                os.Setenv("TOR_PT_SERVER_BINDADDR", test.ptServerBindaddr)
                os.Setenv("TOR_PT_SERVER_TRANSPORTS", test.ptServerTransports)
+               os.Setenv("TOR_PT_SERVER_TRANSPORT_OPTIONS", 
test.ptServerTransportOptions)
                _, err := getServerBindaddrs(test.methodNames)
                if err == nil {
-                       t.Errorf("TOR_PT_SERVER_BINDADDR=%q 
TOR_PT_SERVER_TRANSPORTS=%q %q unexpectedly succeeded",
-                               test.ptServerBindaddr, test.ptServerTransports, 
test.methodNames)
+                       t.Errorf("TOR_PT_SERVER_BINDADDR=%q 
TOR_PT_SERVER_TRANSPORTS=%q TOR_PT_SERVER_TRANSPORT_OPTIONS=%q %q unexpectedly 
succeeded",
+                               test.ptServerBindaddr, test.ptServerTransports, 
test.ptServerTransportOptions, test.methodNames)
                }
        }
 
        for _, test := range goodTests {
                os.Setenv("TOR_PT_SERVER_BINDADDR", test.ptServerBindaddr)
                os.Setenv("TOR_PT_SERVER_TRANSPORTS", test.ptServerTransports)
+               os.Setenv("TOR_PT_SERVER_TRANSPORT_OPTIONS", 
test.ptServerTransportOptions)
                output, err := getServerBindaddrs(test.methodNames)
                if err != nil {
-                       t.Errorf("TOR_PT_SERVER_BINDADDR=%q 
TOR_PT_SERVER_TRANSPORTS=%q %q unexpectedly returned an error: %s",
-                               test.ptServerBindaddr, test.ptServerTransports, 
test.methodNames, err)
+                       t.Errorf("TOR_PT_SERVER_BINDADDR=%q 
TOR_PT_SERVER_TRANSPORTS=%q TOR_PT_SERVER_TRANSPORT_OPTIONS=%q %q unexpectedly 
returned an error: %s",
+                               test.ptServerBindaddr, test.ptServerTransports, 
test.ptServerTransportOptions, test.methodNames, err)
                }
                if !bindaddrSetsEqual(output, test.expected) {
-                       t.Errorf("TOR_PT_SERVER_BINDADDR=%q 
TOR_PT_SERVER_TRANSPORTS=%q %q → %q (expected %q)",
-                               test.ptServerBindaddr, test.ptServerTransports, 
test.methodNames, output, test.expected)
+                       t.Errorf("TOR_PT_SERVER_BINDADDR=%q 
TOR_PT_SERVER_TRANSPORTS=%q TOR_PT_SERVER_TRANSPORT_OPTIONS=%q %q → %q 
(expected %q)",
+                               test.ptServerBindaddr, test.ptServerTransports, 
test.ptServerTransportOptions, test.methodNames, output, test.expected)
                }
        }
 }



_______________________________________________
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits

Reply via email to