os.RemoveAll(repoDir) }) Describe("ADD", func() { It("moves a vxlan adapter into the sandbox", func() { execCNI("ADD", netConfig, containerNS, containerID, sandboxRepoDir) Eventually(session, DEFAULT_TIMEOUT).Should(gexec.Exit(0)) sandboxNS.Execute(func(_ *os.File) error { link, err := netlink.LinkByName("vxlan1") Expect(err).NotTo(HaveOccurred()) vxlan, ok := link.(*netlink.Vxlan) Expect(ok).To(BeTrue()) Expect(vxlan.VxlanId).To(Equal(1)) Expect(vxlan.Learning).To(BeTrue()) Expect(vxlan.Port).To(BeEquivalentTo(nl.Swap16(4789))) Expect(vxlan.Proxy).To(BeTrue()) Expect(vxlan.L2miss).To(BeTrue()) Expect(vxlan.L3miss).To(BeTrue()) Expect(vxlan.LinkAttrs.Flags & net.FlagUp).To(Equal(net.FlagUp)) return nil }) }) It("creates a vxlan bridge in the sandbox", func() { execCNI("ADD", netConfig, containerNS, containerID, sandboxRepoDir) Eventually(session, DEFAULT_TIMEOUT).Should(gexec.Exit(0)) var result types.Result err := json.Unmarshal(session.Out.Contents(), &result)