github.com/cloudfoundry-attic/garden-linux@v0.333.2-candidate/integration/networking/mtu_test.go (about) 1 package networking_test 2 3 import ( 4 "os/exec" 5 6 "github.com/cloudfoundry-incubator/garden" 7 . "github.com/onsi/ginkgo" 8 . "github.com/onsi/gomega" 9 "github.com/onsi/gomega/gbytes" 10 ) 11 12 var _ = Describe("MTU size", func() { 13 var container garden.Container 14 15 BeforeEach(func() { 16 client = startGarden("-mtu=6789") 17 18 var err error 19 20 container, err = client.Create(garden.ContainerSpec{}) 21 Expect(err).ToNot(HaveOccurred()) 22 }) 23 24 AfterEach(func() { 25 err := client.Destroy(container.Handle()) 26 Expect(err).ToNot(HaveOccurred()) 27 }) 28 29 Describe("container's network interface", func() { 30 It("has the correct MTU size", func() { 31 stdout := gbytes.NewBuffer() 32 stderr := gbytes.NewBuffer() 33 34 process, err := container.Run(garden.ProcessSpec{ 35 User: "alice", 36 Path: "ifconfig", 37 Args: []string{containerIfName(container)}, 38 }, garden.ProcessIO{ 39 Stdout: stdout, 40 Stderr: stderr, 41 }) 42 Expect(err).ToNot(HaveOccurred()) 43 rc, err := process.Wait() 44 Expect(err).ToNot(HaveOccurred()) 45 Expect(rc).To(Equal(0)) 46 47 Expect(stdout.Contents()).To(ContainSubstring(" MTU:6789 ")) 48 }) 49 }) 50 51 Describe("hosts's network interface for a container", func() { 52 It("has the correct MTU size", func() { 53 out, err := exec.Command("ifconfig", hostIfName(container)).Output() 54 Expect(err).ToNot(HaveOccurred()) 55 56 Expect(out).To(ContainSubstring(" MTU:6789 ")) 57 }) 58 }) 59 60 })