CI / changes (push) Successful in 6s
CI / openapi (push) Has been skipped
CI / go (push) Successful in 24s
CI / docker-web (deploy/docker/evobgp-web/Dockerfile, , evobgp-web) (push) Has been skipped
CI / docker-web (deploy/docker/evobgp-web/Dockerfile, evobgp-all, evobgp-web-all) (push) Has been skipped
CI / docker-bird (push) Has been skipped
CI / bird2 (push) Successful in 15s
CI / docker-go (deploy/docker/evobgp-agent/Dockerfile, , evobgp-agent) (push) Successful in 55s
CI / docker-go (evobgp-api, 1, deploy/docker/gobinary/Dockerfile, , evobgp-api) (push) Has been cancelled
CI / docker-go (evobgp-deploy, 0, deploy/docker/gobinary/Dockerfile, , evobgp-deploy) (push) Has been cancelled
CI / docker-go (evobgp-ingest, 0, deploy/docker/gobinary/Dockerfile, , evobgp-ingest) (push) Has been cancelled
CI / docker-go (evobgp-node, 0, deploy/docker/gobinary/Dockerfile, , evobgp-node) (push) Has been cancelled
CI / docker-go (evobgp-render, 0, deploy/docker/gobinary/Dockerfile, , evobgp-render) (push) Has been cancelled
CI / docker-go (evobgp-all, 1, deploy/docker/gobinary/Dockerfile, , evobgp-all) (push) Has been cancelled
CI / docker-go (evobgp-scheduler, 0, deploy/docker/gobinary/Dockerfile, , evobgp-scheduler) (push) Has been cancelled
80 lines
1.8 KiB
Go
80 lines
1.8 KiB
Go
package birdfmt
|
|
|
|
import (
|
|
"strings"
|
|
"testing"
|
|
)
|
|
|
|
func TestRenderProtocolBGPIPv4_Validation(t *testing.T) {
|
|
_, err := RenderProtocolBGPIPv4(BGPPeerIPv4Options{})
|
|
if err == nil {
|
|
t.Fatal("expected error")
|
|
}
|
|
}
|
|
|
|
func TestRenderProtocolBGPIPv4_ExportAll(t *testing.T) {
|
|
got, err := RenderProtocolBGPIPv4(BGPPeerIPv4Options{
|
|
ProtocolName: "p",
|
|
LocalIP: "192.0.2.1",
|
|
LocalASN: 1,
|
|
NeighborIP: "192.0.2.2",
|
|
NeighborASN: 2,
|
|
})
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if !strings.Contains(got, "export all;") {
|
|
t.Fatal(got)
|
|
}
|
|
}
|
|
|
|
func TestRenderBGPTemplates_Validation(t *testing.T) {
|
|
_, err := RenderBGPTemplates(BGPTemplatesOptions{})
|
|
if err == nil {
|
|
t.Fatal("expected error")
|
|
}
|
|
}
|
|
|
|
func TestRenderProtocolBGPFromTemplate_MultihopPassive(t *testing.T) {
|
|
got, err := RenderProtocolBGPFromTemplate(BGPPeerFromTemplateOptions{
|
|
ProtocolName: "evobgp_p_x",
|
|
TemplateName: BGPTemplateNameV4,
|
|
NeighborIP: "94.142.140.141",
|
|
NeighborASN: 65002,
|
|
SourceAddress: "77.232.38.173",
|
|
})
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if !strings.Contains(got, "from bgp_template") {
|
|
t.Fatal(got)
|
|
}
|
|
if !strings.Contains(got, "multihop;") || !strings.Contains(got, "passive;") {
|
|
t.Fatal(got)
|
|
}
|
|
if !strings.Contains(got, "source address 77.232.38.173;") {
|
|
t.Fatal(got)
|
|
}
|
|
if !strings.Contains(got, "strict bind on;") {
|
|
t.Fatal(got)
|
|
}
|
|
}
|
|
|
|
func TestRenderProtocolBGPFromTemplate_OverrideLocal(t *testing.T) {
|
|
got, err := RenderProtocolBGPFromTemplate(BGPPeerFromTemplateOptions{
|
|
ProtocolName: "p",
|
|
TemplateName: BGPTemplateNameV4,
|
|
NeighborIP: "192.0.2.2",
|
|
NeighborASN: 2,
|
|
SourceAddress: "10.0.0.1",
|
|
OverrideLocalIP: "10.0.0.1",
|
|
OverrideLocalASN: 65099,
|
|
})
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if !strings.Contains(got, "local 10.0.0.1 as 65099;") {
|
|
t.Fatal(got)
|
|
}
|
|
}
|