mirror of
				https://github.com/caddyserver/caddy.git
				synced 2025-11-04 03:27:23 -05:00 
			
		
		
		
	
		
			Some checks failed
		
		
	
	Tests / test (./cmd/caddy/caddy, ~1.22.3, macos-14, 0, 1.22, mac) (push) Waiting to run
				
			Tests / test (./cmd/caddy/caddy, ~1.23.0, macos-14, 0, 1.23, mac) (push) Waiting to run
				
			Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Waiting to run
				
			Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Waiting to run
				
			Lint / lint (macos-14, mac) (push) Waiting to run
				
			Lint / lint (windows-latest, windows) (push) Waiting to run
				
			Tests / test (./cmd/caddy/caddy, ~1.22.3, ubuntu-latest, 0, 1.22, linux) (push) Failing after 1m46s
				
			Tests / test (./cmd/caddy/caddy, ~1.23.0, ubuntu-latest, 0, 1.23, linux) (push) Failing after 1m29s
				
			Tests / test (s390x on IBM Z) (push) Has been skipped
				
			Tests / goreleaser-check (push) Successful in 22s
				
			Cross-Build / build (~1.22.3, 1.22, aix) (push) Successful in 1m43s
				
			Cross-Build / build (~1.22.3, 1.22, darwin) (push) Successful in 1m38s
				
			Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Successful in 1m36s
				
			Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Successful in 1m40s
				
			Cross-Build / build (~1.22.3, 1.22, illumos) (push) Successful in 1m45s
				
			Cross-Build / build (~1.22.3, 1.22, linux) (push) Successful in 1m49s
				
			Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Successful in 1m43s
				
			Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Successful in 1m42s
				
			Cross-Build / build (~1.22.3, 1.22, solaris) (push) Successful in 1m41s
				
			Cross-Build / build (~1.22.3, 1.22, windows) (push) Successful in 1m40s
				
			Cross-Build / build (~1.23.0, 1.23, aix) (push) Successful in 1m26s
				
			Cross-Build / build (~1.23.0, 1.23, darwin) (push) Successful in 1m28s
				
			Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Successful in 1m25s
				
			Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Successful in 1m30s
				
			Cross-Build / build (~1.23.0, 1.23, illumos) (push) Successful in 1m33s
				
			Cross-Build / build (~1.23.0, 1.23, linux) (push) Successful in 1m28s
				
			Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Successful in 1m28s
				
			Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Successful in 1m30s
				
			Cross-Build / build (~1.23.0, 1.23, solaris) (push) Successful in 1m31s
				
			Cross-Build / build (~1.23.0, 1.23, windows) (push) Successful in 1m31s
				
			Lint / lint (ubuntu-latest, linux) (push) Successful in 2m15s
				
			Lint / govulncheck (push) Successful in 1m24s
				
			* caddy adapt for listen_protocols * adapt listen_socket * allow multiple listen sockets for port ranges and readd socket fd listen logic * readd logic to start servers according to listener protocols * gofmt * adapt caddytest * gosec * fmt and rename listen to listenWithSocket * fmt and rename listen to listenWithSocket * more consistent error msg * non unix listenReusableWithSocketFile * remove unused func * doc comment typo * nonosec * commit * doc comments * more doc comments * comment was misleading, cardinality did not change * addressesWithProtocols * update test * fd/ and fdgram/ * rm addr * actually write... * i guess we doin' "skip": now * wrong var in placeholder * wrong var in placeholder II * update param name in comment * dont save nil file pointers * windows * key -> parsedKey * osx * multiple default_bind with protocols * check for h1 and h2 listener netw
		
			
				
	
	
		
			98 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			98 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package httpcaddyfile
 | 
						|
 | 
						|
import (
 | 
						|
	"reflect"
 | 
						|
	"sort"
 | 
						|
	"testing"
 | 
						|
)
 | 
						|
 | 
						|
func TestHostsFromKeys(t *testing.T) {
 | 
						|
	for i, tc := range []struct {
 | 
						|
		keys             []Address
 | 
						|
		expectNormalMode []string
 | 
						|
		expectLoggerMode []string
 | 
						|
	}{
 | 
						|
		{
 | 
						|
			[]Address{
 | 
						|
				{Original: "foo", Host: "foo"},
 | 
						|
			},
 | 
						|
			[]string{"foo"},
 | 
						|
			[]string{"foo"},
 | 
						|
		},
 | 
						|
		{
 | 
						|
			[]Address{
 | 
						|
				{Original: "foo", Host: "foo"},
 | 
						|
				{Original: "bar", Host: "bar"},
 | 
						|
			},
 | 
						|
			[]string{"bar", "foo"},
 | 
						|
			[]string{"bar", "foo"},
 | 
						|
		},
 | 
						|
		{
 | 
						|
			[]Address{
 | 
						|
				{Original: ":2015", Port: "2015"},
 | 
						|
			},
 | 
						|
			[]string{},
 | 
						|
			[]string{},
 | 
						|
		},
 | 
						|
		{
 | 
						|
			[]Address{
 | 
						|
				{Original: ":443", Port: "443"},
 | 
						|
			},
 | 
						|
			[]string{},
 | 
						|
			[]string{},
 | 
						|
		},
 | 
						|
		{
 | 
						|
			[]Address{
 | 
						|
				{Original: "foo", Host: "foo"},
 | 
						|
				{Original: ":2015", Port: "2015"},
 | 
						|
			},
 | 
						|
			[]string{},
 | 
						|
			[]string{"foo"},
 | 
						|
		},
 | 
						|
		{
 | 
						|
			[]Address{
 | 
						|
				{Original: "example.com:2015", Host: "example.com", Port: "2015"},
 | 
						|
			},
 | 
						|
			[]string{"example.com"},
 | 
						|
			[]string{"example.com:2015"},
 | 
						|
		},
 | 
						|
		{
 | 
						|
			[]Address{
 | 
						|
				{Original: "example.com:80", Host: "example.com", Port: "80"},
 | 
						|
			},
 | 
						|
			[]string{"example.com"},
 | 
						|
			[]string{"example.com"},
 | 
						|
		},
 | 
						|
		{
 | 
						|
			[]Address{
 | 
						|
				{Original: "https://:2015/foo", Scheme: "https", Port: "2015", Path: "/foo"},
 | 
						|
			},
 | 
						|
			[]string{},
 | 
						|
			[]string{},
 | 
						|
		},
 | 
						|
		{
 | 
						|
			[]Address{
 | 
						|
				{Original: "https://example.com:2015/foo", Scheme: "https", Host: "example.com", Port: "2015", Path: "/foo"},
 | 
						|
			},
 | 
						|
			[]string{"example.com"},
 | 
						|
			[]string{"example.com:2015"},
 | 
						|
		},
 | 
						|
	} {
 | 
						|
		sb := serverBlock{parsedKeys: tc.keys}
 | 
						|
 | 
						|
		// test in normal mode
 | 
						|
		actual := sb.hostsFromKeys(false)
 | 
						|
		sort.Strings(actual)
 | 
						|
		if !reflect.DeepEqual(tc.expectNormalMode, actual) {
 | 
						|
			t.Errorf("Test %d (loggerMode=false): Expected: %v Actual: %v", i, tc.expectNormalMode, actual)
 | 
						|
		}
 | 
						|
 | 
						|
		// test in logger mode
 | 
						|
		actual = sb.hostsFromKeys(true)
 | 
						|
		sort.Strings(actual)
 | 
						|
		if !reflect.DeepEqual(tc.expectLoggerMode, actual) {
 | 
						|
			t.Errorf("Test %d (loggerMode=true): Expected: %v Actual: %v", i, tc.expectLoggerMode, actual)
 | 
						|
		}
 | 
						|
	}
 | 
						|
}
 |