tests: assert server fields and use urfave cli

This commit is contained in:
2026-01-13 07:57:37 +01:00
parent 2bdbb29ae6
commit 9f1058ba81

View File

@@ -75,6 +75,10 @@ func TestServerConfigurationFromConfig(t *testing.T) {
IdleTimeout: cfg.Server.IdleTimeout, IdleTimeout: cfg.Server.IdleTimeout,
MaxHeaderBytes: cfg.Server.MaxHeaderBytes, MaxHeaderBytes: cfg.Server.MaxHeaderBytes,
} }
expectedAddr := cfg.Server.Host + ":" + cfg.Server.Port
if srv.Addr != expectedAddr {
t.Errorf("Expected server address to be %q, got %q", expectedAddr, srv.Addr)
}
if srv.ReadTimeout != 30*time.Second { if srv.ReadTimeout != 30*time.Second {
t.Errorf("Expected ReadTimeout to be 30s, got %v", srv.ReadTimeout) t.Errorf("Expected ReadTimeout to be 30s, got %v", srv.ReadTimeout)
@@ -171,6 +175,10 @@ func TestTLSWiringFromConfig(t *testing.T) {
t.Errorf("Expected server address to be %q, got %q", expectedAddr, srv.Addr) t.Errorf("Expected server address to be %q, got %q", expectedAddr, srv.Addr)
} }
if srv.ReadHeaderTimeout != 5*time.Second {
t.Errorf("Expected ReadHeaderTimeout to be 5s, got %v", srv.ReadHeaderTimeout)
}
if cfg.Server.EnableTLS { if cfg.Server.EnableTLS {
srv.TLSConfig = &tls.Config{ srv.TLSConfig = &tls.Config{
MinVersion: tls.VersionTLS12, MinVersion: tls.VersionTLS12,
@@ -289,12 +297,14 @@ func TestFlagParsingInCLI(t *testing.T) {
t.Run("command dispatch", func(t *testing.T) { t.Run("command dispatch", func(t *testing.T) {
cfg := testutils.NewTestConfig() cfg := testutils.NewTestConfig()
err := dispatchCommand(cfg, "unknown", []string{}) cmd := buildRootCommand(cfg)
err := cmd.Run(context.Background(), []string{"goyco", "unknown"})
if err == nil { if err == nil {
t.Error("Expected error for unknown command") t.Error("Expected error for unknown command")
} }
err = dispatchCommand(cfg, "help", []string{}) cmd = buildRootCommand(cfg)
err = cmd.Run(context.Background(), []string{"goyco", "help"})
if err != nil { if err != nil {
t.Errorf("Help command should not error: %v", err) t.Errorf("Help command should not error: %v", err)
} }
@@ -362,6 +372,26 @@ func TestServerInitializationFlow(t *testing.T) {
if srv.Handler == nil { if srv.Handler == nil {
t.Error("Expected server handler to be set") t.Error("Expected server handler to be set")
} }
expectedAddr := cfg.Server.Host + ":" + cfg.Server.Port
if srv.Addr != expectedAddr {
t.Errorf("Expected server address to be %q, got %q", expectedAddr, srv.Addr)
}
if srv.ReadTimeout != cfg.Server.ReadTimeout {
t.Errorf("Expected ReadTimeout to be %v, got %v", cfg.Server.ReadTimeout, srv.ReadTimeout)
}
if srv.WriteTimeout != cfg.Server.WriteTimeout {
t.Errorf("Expected WriteTimeout to be %v, got %v", cfg.Server.WriteTimeout, srv.WriteTimeout)
}
if srv.IdleTimeout != cfg.Server.IdleTimeout {
t.Errorf("Expected IdleTimeout to be %v, got %v", cfg.Server.IdleTimeout, srv.IdleTimeout)
}
if srv.MaxHeaderBytes != cfg.Server.MaxHeaderBytes {
t.Errorf("Expected MaxHeaderBytes to be %d, got %d", cfg.Server.MaxHeaderBytes, srv.MaxHeaderBytes)
}
testServer := httptest.NewServer(srv.Handler) testServer := httptest.NewServer(srv.Handler)
defer testServer.Close() defer testServer.Close()