MCPcopy
hub / github.com/google/gvisor / TestNetworkConfig

Function TestNetworkConfig

runsc/boot/loader_test.go:631–676  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

629}
630
631func TestNetworkConfig(t *testing.T) {
632 l, cleanup, err := createLoader(testConfig(), testSpec())
633 if err != nil {
634 t.Fatalf("error creating loader: %v", err)
635 }
636 defer l.Destroy()
637 defer cleanup()
638
639 // We aren't going to wait on this application, so the control server
640 // needs to be shut down manually.
641 defer l.ctrl.srv.Stop(time.Hour)
642
643 go func() {
644 l.WaitForStartSignal()
645 l.ctrl.manager.startResultChan <- nil
646 }()
647
648 args := &CreateLinksAndRoutesArgs{
649 LoopbackLinks: []LoopbackLink{
650 {
651 Name: "lo",
652 Addresses: []IPWithPrefix{
653 {Address: net.IP("\x7f\x00\x00\x01"), PrefixLen: 8},
654 },
655 Routes: []Route{
656 {
657 Destination: net.IPNet{
658 IP: net.IP{127, 0, 0, 0},
659 Mask: net.IPMask{255, 0, 0, 0},
660 },
661 },
662 },
663 },
664 },
665 }
666 if err := l.ctrl.manager.CreateLinksAndRoutes(args, nil); err != nil {
667 t.Errorf("error calling SetNetworkConfig: %v", err)
668 }
669 var networkArgs CreateLinksAndRoutesArgs
670 if err := l.ctrl.manager.GetNetworkConfig(nil, &networkArgs); err != nil {
671 t.Errorf("error calling NetworkConfig: %v", err)
672 }
673 if diff := cmp.Diff(networkArgs.LoopbackLinks, args.LoopbackLinks); diff != "" {
674 t.Errorf("Network config content mismatch (-want +got):\n%s", diff)
675 }
676}

Callers

nothing calls this directly

Calls 11

createLoaderFunction · 0.85
testConfigFunction · 0.85
testSpecFunction · 0.85
WaitForStartSignalMethod · 0.80
FatalfMethod · 0.65
DestroyMethod · 0.65
StopMethod · 0.65
IPMethod · 0.65
ErrorfMethod · 0.65
CreateLinksAndRoutesMethod · 0.45
GetNetworkConfigMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…