//go:build integration package firewall import ( "context" "testing" ) // linuxBackends lists every Linux backend in the same order NewManager probes them. func linuxBackends() []backendFactory { return []backendFactory{ {"firewalld", func(ctx context.Context, p string) (Manager, error) { return NewFirewallD(ctx, p) }}, {"ufw", func(ctx context.Context, p string) (Manager, error) { return NewUFW(ctx, p) }}, {"csf", func(ctx context.Context, p string) (Manager, error) { return NewCSF(ctx, p) }}, {"apf", func(ctx context.Context, p string) (Manager, error) { return NewAPF(ctx, p) }}, {"iptables", func(ctx context.Context, p string) (Manager, error) { return NewIPTables(ctx, p) }}, {"nft", func(ctx context.Context, p string) (Manager, error) { return NewNFT(ctx, p) }}, } } // TestIntegration runs the capability-driven suite against the Linux backends. // See integration_test.go for the shared suite and runIntegration. func TestIntegration(t *testing.T) { runIntegration(t, linuxBackends()) }