9 . "github.com/onsi/ginkgo/v2"
13 singleTopoContainerVpp = "vpp"
14 singleTopoContainerNginx = "nginx"
15 tapInterfaceName = "htaphost"
18 var noTopoTests = []func(s *NoTopoSuite){}
19 var noTopoSoloTests = []func(s *NoTopoSuite){}
21 type NoTopoSuite struct {
25 func registerNoTopoTests(tests ...func(s *NoTopoSuite)) {
26 noTopoTests = append(noTopoTests, tests...)
28 func registerNoTopoSoloTests(tests ...func(s *NoTopoSuite)) {
29 noTopoSoloTests = append(noTopoSoloTests, tests...)
32 func (s *NoTopoSuite) SetupSuite() {
33 s.HstSuite.SetupSuite()
34 s.loadNetworkTopology("tap")
35 s.loadContainerTopology("single")
38 func (s *NoTopoSuite) SetupTest() {
39 s.HstSuite.SetupTest()
41 // Setup test conditions
42 var sessionConfig Stanza
46 append("use-app-socket-api").close()
48 cpus := s.AllocateCpus()
49 container := s.getContainerByName(singleTopoContainerVpp)
50 vpp, _ := container.newVppInstance(cpus, sessionConfig)
51 s.assertNil(vpp.start())
53 tapInterface := s.getInterfaceByName(tapInterfaceName)
55 s.assertNil(vpp.createTap(tapInterface), "failed to create tap interface")
58 var _ = Describe("NoTopoSuite", Ordered, ContinueOnFailure, func() {
73 for _, test := range noTopoTests {
75 pc := reflect.ValueOf(test).Pointer()
76 funcValue := runtime.FuncForPC(pc)
77 It(strings.Split(funcValue.Name(), ".")[2], func(ctx SpecContext) {
79 }, SpecTimeout(time.Minute*5))
83 var _ = Describe("NoTopoSuiteSolo", Ordered, ContinueOnFailure, Serial, func() {
98 for _, test := range noTopoSoloTests {
100 pc := reflect.ValueOf(test).Pointer()
101 funcValue := runtime.FuncForPC(pc)
102 It(strings.Split(funcValue.Name(), ".")[2], Label("SOLO"), func(ctx SpecContext) {
104 }, SpecTimeout(time.Minute*5))