mirror of
https://github.com/buger/goreplay.git
synced 2024-04-21 12:32:02 +00:00
In k8 environment, when listening as daemonset, k8s creates a bunch of virtual interfaccess for your traffic with random names, but in addition it has a classical eth0, or NAT ones like cbr0, which you do not want to listen. With this option you now can listen traffic on all virtual interfaces and ignore internal k8s traffic. Example: `--input-raw-ignore-interface cbr0 --input-raw-ignore-interface eth0 --input-raw-ignore-interface localhost`
44 lines
1000 B
Go
44 lines
1000 B
Go
package main
|
|
|
|
import (
|
|
"testing"
|
|
)
|
|
|
|
func TestPluginsRegistration(t *testing.T) {
|
|
Settings.InputDummy = []string{"[]"}
|
|
Settings.OutputDummy = []string{"[]"}
|
|
Settings.OutputHTTP = []string{"www.example.com|10"}
|
|
Settings.InputFile = []string{"/dev/null"}
|
|
|
|
plugins := NewPlugins()
|
|
|
|
if len(plugins.Inputs) != 3 {
|
|
t.Errorf("Should be 3 inputs got %d", len(plugins.Inputs))
|
|
}
|
|
|
|
if _, ok := plugins.Inputs[0].(*DummyInput); !ok {
|
|
t.Errorf("First input should be DummyInput")
|
|
}
|
|
|
|
if _, ok := plugins.Inputs[1].(*FileInput); !ok {
|
|
t.Errorf("Second input should be FileInput")
|
|
}
|
|
|
|
if len(plugins.Outputs) != 2 {
|
|
t.Errorf("Should be 2 output %d", len(plugins.Outputs))
|
|
}
|
|
|
|
if _, ok := plugins.Outputs[0].(*DummyOutput); !ok {
|
|
t.Errorf("First output should be DummyOutput")
|
|
}
|
|
|
|
if l, ok := plugins.Outputs[1].(*Limiter); ok {
|
|
if _, ok := l.plugin.(*HTTPOutput); !ok {
|
|
t.Errorf("HTTPOutput should be wrapped in limiter")
|
|
}
|
|
} else {
|
|
t.Errorf("Second output should be Limiter")
|
|
}
|
|
|
|
}
|