mirror of https://github.com/caddyserver/caddy
57 lines
1.3 KiB
Go
57 lines
1.3 KiB
Go
package reverseproxy
|
|
|
|
import "testing"
|
|
|
|
func TestResolveIpVersion(t *testing.T) {
|
|
falseBool := false
|
|
trueBool := true
|
|
tests := []struct {
|
|
Versions *IPVersions
|
|
expectedIpVersion string
|
|
}{
|
|
{
|
|
Versions: &IPVersions{IPv4: &trueBool},
|
|
expectedIpVersion: "ip4",
|
|
},
|
|
{
|
|
Versions: &IPVersions{IPv4: &falseBool},
|
|
expectedIpVersion: "ip",
|
|
},
|
|
{
|
|
Versions: &IPVersions{IPv4: &trueBool, IPv6: &falseBool},
|
|
expectedIpVersion: "ip4",
|
|
},
|
|
{
|
|
Versions: &IPVersions{IPv6: &trueBool},
|
|
expectedIpVersion: "ip6",
|
|
},
|
|
{
|
|
Versions: &IPVersions{IPv6: &falseBool},
|
|
expectedIpVersion: "ip",
|
|
},
|
|
{
|
|
Versions: &IPVersions{IPv6: &trueBool, IPv4: &falseBool},
|
|
expectedIpVersion: "ip6",
|
|
},
|
|
{
|
|
Versions: &IPVersions{},
|
|
expectedIpVersion: "ip",
|
|
},
|
|
{
|
|
Versions: &IPVersions{IPv4: &trueBool, IPv6: &trueBool},
|
|
expectedIpVersion: "ip",
|
|
},
|
|
{
|
|
Versions: &IPVersions{IPv4: &falseBool, IPv6: &falseBool},
|
|
expectedIpVersion: "ip",
|
|
},
|
|
}
|
|
for _, test := range tests {
|
|
ipVersion := resolveIpVersion(test.Versions)
|
|
if ipVersion != test.expectedIpVersion {
|
|
t.Errorf("resolveIpVersion(): Expected %s got %s", test.expectedIpVersion, ipVersion)
|
|
}
|
|
}
|
|
|
|
}
|