xref: /linux/tools/testing/selftests/tc-testing/tc-tests/actions/vlan.json (revision ae22a94997b8a03dcb3c922857c203246711f9d4)
1[
2    {
3        "id": "6f5a",
4        "name": "Add vlan pop action with pipe opcode",
5        "category": [
6            "actions",
7            "vlan"
8        ],
9        "plugins": {
10           "requires": "nsPlugin"
11        },
12        "setup": [
13            [
14                "$TC actions flush action vlan",
15                0,
16                1,
17                255
18            ]
19        ],
20        "cmdUnderTest": "$TC actions add action vlan pop pipe index 8",
21        "expExitCode": "0",
22        "verifyCmd": "$TC actions list action vlan",
23        "matchPattern": "action order [0-9]+: vlan.*pop.*pipe.*index 8 ref",
24        "matchCount": "1",
25        "teardown": [
26            "$TC actions flush action vlan"
27        ]
28    },
29    {
30        "id": "df35",
31        "name": "Add vlan pop action with pass opcode",
32        "category": [
33            "actions",
34            "vlan"
35        ],
36        "plugins": {
37           "requires": "nsPlugin"
38        },
39        "setup": [
40            [
41                "$TC actions flush action vlan",
42                0,
43                1,
44                255
45            ]
46        ],
47        "cmdUnderTest": "$TC actions add action vlan pop pass index 8",
48        "expExitCode": "0",
49        "verifyCmd": "$TC actions get action vlan index 8",
50        "matchPattern": "action order [0-9]+: vlan.*pop.*pass.*index 8 ref",
51        "matchCount": "1",
52        "teardown": [
53            "$TC actions flush action vlan"
54        ]
55    },
56    {
57        "id": "b0d4",
58        "name": "Add vlan pop action with drop opcode",
59        "category": [
60            "actions",
61            "vlan"
62        ],
63        "plugins": {
64           "requires": "nsPlugin"
65        },
66        "setup": [
67            [
68                "$TC actions flush action vlan",
69                0,
70                1,
71                255
72            ]
73        ],
74        "cmdUnderTest": "$TC actions add action vlan pop drop index 8",
75        "expExitCode": "0",
76        "verifyCmd": "$TC actions get action vlan index 8",
77        "matchPattern": "action order [0-9]+: vlan.*pop.*drop.*index 8 ref",
78        "matchCount": "1",
79        "teardown": [
80            "$TC actions flush action vlan"
81        ]
82    },
83    {
84        "id": "95ee",
85        "name": "Add vlan pop action with reclassify opcode",
86        "category": [
87            "actions",
88            "vlan"
89        ],
90        "plugins": {
91           "requires": "nsPlugin"
92        },
93        "setup": [
94            [
95                "$TC actions flush action vlan",
96                0,
97                1,
98                255
99            ]
100        ],
101        "cmdUnderTest": "$TC actions add action vlan pop reclassify index 8",
102        "expExitCode": "0",
103        "verifyCmd": "$TC actions get action vlan index 8",
104        "matchPattern": "action order [0-9]+: vlan.*pop.*reclassify.*index 8 ref",
105        "matchCount": "1",
106        "teardown": [
107            "$TC actions flush action vlan"
108        ]
109    },
110    {
111        "id": "0283",
112        "name": "Add vlan pop action with continue opcode",
113        "category": [
114            "actions",
115            "vlan"
116        ],
117        "plugins": {
118           "requires": "nsPlugin"
119        },
120        "setup": [
121            [
122                "$TC actions flush action vlan",
123                0,
124                1,
125                255
126            ]
127        ],
128        "cmdUnderTest": "$TC actions add action vlan pop continue index 8",
129        "expExitCode": "0",
130        "verifyCmd": "$TC actions get action vlan index 8",
131        "matchPattern": "action order [0-9]+: vlan.*pop.*continue.*index 8 ref",
132        "matchCount": "1",
133        "teardown": [
134            "$TC actions flush action vlan"
135        ]
136    },
137    {
138        "id": "b6b9",
139        "name": "Add vlan pop action with jump opcode",
140        "category": [
141            "actions",
142            "vlan"
143        ],
144        "plugins": {
145           "requires": "nsPlugin"
146        },
147        "setup": [
148            [
149                "$TC actions flush action vlan",
150                0,
151                1,
152                255
153            ]
154        ],
155        "cmdUnderTest": "$TC actions add action vlan pop jump 10 index 8",
156        "expExitCode": "0",
157        "verifyCmd": "$TC actions list action vlan",
158        "matchPattern": "action order [0-9]+: vlan.*jump 10.*index 8 ref",
159        "matchCount": "1",
160        "teardown": [
161            "$TC actions flush action vlan"
162        ]
163    },
164    {
165        "id": "87c3",
166        "name": "Add vlan pop action with trap opcode",
167        "category": [
168            "actions",
169            "vlan"
170        ],
171        "plugins": {
172           "requires": "nsPlugin"
173        },
174        "setup": [
175            [
176                "$TC actions flush action vlan",
177                0,
178                1,
179                255
180            ]
181        ],
182        "cmdUnderTest": "$TC actions add action vlan pop trap index 8",
183        "expExitCode": "0",
184        "verifyCmd": "$TC actions list action vlan",
185        "matchPattern": "action order [0-9]+: vlan.*pop trap.*index 8 ref",
186        "matchCount": "1",
187        "teardown": [
188            "$TC actions flush action vlan"
189        ]
190    },
191    {
192        "id": "a178",
193        "name": "Add vlan pop action with invalid opcode",
194        "category": [
195            "actions",
196            "vlan"
197        ],
198        "plugins": {
199           "requires": "nsPlugin"
200        },
201        "setup": [
202            [
203                "$TC actions flush action vlan",
204                0,
205                1,
206                255
207            ]
208        ],
209        "cmdUnderTest": "$TC actions add action vlan pop foo index 8",
210        "expExitCode": "255",
211        "verifyCmd": "$TC actions list action vlan",
212        "matchPattern": "action order [0-9]+: vlan.*pop.*foo.*index 8 ref",
213        "matchCount": "0",
214        "teardown": []
215    },
216    {
217        "id": "ee6f",
218        "name": "Add vlan pop action with index at 32-bit maximum",
219        "category": [
220            "actions",
221            "vlan"
222        ],
223        "plugins": {
224           "requires": "nsPlugin"
225        },
226        "setup": [
227            [
228                "$TC actions flush action vlan",
229                0,
230                1,
231                255
232            ]
233        ],
234        "cmdUnderTest": "$TC actions add action vlan pop index 4294967295",
235        "expExitCode": "0",
236        "verifyCmd": "$TC actions list action vlan",
237        "matchPattern": "action order [0-9]+: vlan.*pop.*index 4294967295 ref",
238        "matchCount": "1",
239        "teardown": [
240            "$TC actions flush action vlan"
241        ]
242    },
243    {
244        "id": "0dfa",
245        "name": "Add vlan pop action with index exceeding 32-bit maximum",
246        "category": [
247            "actions",
248            "vlan"
249        ],
250        "plugins": {
251           "requires": "nsPlugin"
252        },
253        "setup": [
254            [
255                "$TC actions flush action vlan",
256                0,
257                1,
258                255
259            ]
260        ],
261        "cmdUnderTest": "$TC actions add action vlan pop reclassify index 429496729599",
262        "expExitCode": "255",
263        "verifyCmd": "$TC actions get action vlan index 429496729599",
264        "matchPattern": "action order [0-9]+: vlan.*pop.reclassify.*index 429496729599",
265        "matchCount": "0",
266        "teardown": []
267    },
268    {
269        "id": "2b91",
270        "name": "Add vlan invalid action",
271        "category": [
272            "actions",
273            "vlan"
274        ],
275        "plugins": {
276           "requires": "nsPlugin"
277        },
278        "setup": [
279            [
280                "$TC actions flush action vlan",
281                0,
282                1,
283                255
284            ]
285        ],
286        "cmdUnderTest": "$TC actions add action vlan bad_mode",
287        "expExitCode": "255",
288        "verifyCmd": "$TC actions list action vlan",
289        "matchPattern": "action order [0-9]+: vlan.*bad_mode",
290        "matchCount": "0",
291        "teardown": []
292    },
293    {
294        "id": "57fc",
295        "name": "Add vlan push action with invalid protocol type",
296        "category": [
297            "actions",
298            "vlan"
299        ],
300        "plugins": {
301           "requires": "nsPlugin"
302        },
303        "setup": [
304            [
305                "$TC actions flush action vlan",
306                0,
307                1,
308                255
309            ]
310        ],
311        "cmdUnderTest": "$TC actions add action vlan push protocol ABCD",
312        "expExitCode": "255",
313        "verifyCmd": "$TC actions list action vlan",
314        "matchPattern": "action order [0-9]+: vlan.*push",
315        "matchCount": "0",
316        "teardown": []
317    },
318    {
319        "id": "3989",
320        "name": "Add vlan push action with default protocol and priority",
321        "category": [
322            "actions",
323            "vlan"
324        ],
325        "plugins": {
326           "requires": "nsPlugin"
327        },
328        "setup": [
329            [
330                "$TC actions flush action vlan",
331                0,
332                1,
333                255
334            ]
335        ],
336        "cmdUnderTest": "$TC actions add action vlan push id 123 index 18",
337        "expExitCode": "0",
338        "verifyCmd": "$TC actions get action vlan index 18",
339        "matchPattern": "action order [0-9]+: vlan.*push id 123 protocol 802.1Q priority 0 pipe.*index 18 ref",
340        "matchCount": "1",
341        "teardown": [
342            "$TC actions flush action vlan"
343        ]
344    },
345    {
346        "id": "79dc",
347        "name": "Add vlan push action with protocol 802.1Q and priority 3",
348        "category": [
349            "actions",
350            "vlan"
351        ],
352        "plugins": {
353           "requires": "nsPlugin"
354        },
355        "setup": [
356            [
357                "$TC actions flush action vlan",
358                0,
359                1,
360                255
361            ]
362        ],
363        "cmdUnderTest": "$TC actions add action vlan push id 77 protocol 802.1Q priority 3 continue index 734",
364        "expExitCode": "0",
365        "verifyCmd": "$TC actions get action vlan index 734",
366        "matchPattern": "action order [0-9]+: vlan.*push id 77 protocol 802.1Q priority 3 continue.*index 734 ref",
367        "matchCount": "1",
368        "teardown": [
369            "$TC actions flush action vlan"
370        ]
371    },
372    {
373        "id": "4d73",
374        "name": "Add vlan push action with protocol 802.1AD",
375        "category": [
376            "actions",
377            "vlan"
378        ],
379        "plugins": {
380           "requires": "nsPlugin"
381        },
382        "setup": [
383            [
384                "$TC actions flush action vlan",
385                0,
386                1,
387                255
388            ]
389        ],
390        "cmdUnderTest": "$TC actions add action vlan push id 1024 protocol 802.1AD pass index 10000",
391        "expExitCode": "0",
392        "verifyCmd": "$TC actions get action vlan index 10000",
393        "matchPattern": "action order [0-9]+: vlan.*push id 1024 protocol 802.1ad priority 0 pass.*index 10000 ref",
394        "matchCount": "1",
395        "teardown": [
396            "$TC actions flush action vlan"
397        ]
398    },
399    {
400        "id": "1f4b",
401        "name": "Add vlan push action with maximum 12-bit vlan ID",
402        "category": [
403            "actions",
404            "vlan"
405        ],
406        "plugins": {
407           "requires": "nsPlugin"
408        },
409        "setup": [
410            [
411                "$TC actions flush action vlan",
412                0,
413                1,
414                255
415            ]
416        ],
417        "cmdUnderTest": "$TC actions add action vlan push id 4094 index 1",
418        "expExitCode": "0",
419        "verifyCmd": "$TC actions get action vlan index 1",
420        "matchPattern": "action order [0-9]+: vlan.*push id 4094.*protocol 802.1Q.*priority 0.*index 1 ref",
421        "matchCount": "1",
422        "teardown": [
423            "$TC actions flush action vlan"
424        ]
425    },
426    {
427        "id": "1f7b",
428        "name": "Add vlan push action with invalid vlan ID",
429        "category": [
430            "actions",
431            "vlan"
432        ],
433        "plugins": {
434           "requires": "nsPlugin"
435        },
436        "setup": [
437            [
438                "$TC actions flush action vlan",
439                0,
440                1,
441                255
442            ]
443        ],
444        "cmdUnderTest": "$TC actions add action vlan push id 5678 index 1",
445        "expExitCode": "255",
446        "verifyCmd": "$TC actions list action vlan",
447        "matchPattern": "action order [0-9]+: vlan.*push id 5678.*index 1 ref",
448        "matchCount": "0",
449        "teardown": [
450            "$TC actions flush action vlan"
451        ]
452    },
453    {
454        "id": "fe40",
455        "name": "Add vlan push action with maximum 3-bit IEEE 802.1p priority",
456        "category": [
457            "actions",
458            "vlan"
459        ],
460        "plugins": {
461           "requires": "nsPlugin"
462        },
463        "setup": [
464            [
465                "$TC actions flush action vlan",
466                0,
467                1,
468                255
469            ]
470        ],
471        "cmdUnderTest": "$TC actions add action vlan push id 4 priority 7 reclassify index 1",
472        "expExitCode": "0",
473        "verifyCmd": "$TC actions get action vlan index 1",
474        "matchPattern": "action order [0-9]+: vlan.*push id 4.*protocol 802.1Q.*priority 7.*reclassify.*index 1 ref",
475        "matchCount": "1",
476        "teardown": [
477            "$TC actions flush action vlan"
478        ]
479    },
480    {
481        "id": "5d02",
482        "name": "Add vlan push action with invalid IEEE 802.1p priority",
483        "category": [
484            "actions",
485            "vlan"
486        ],
487        "plugins": {
488           "requires": "nsPlugin"
489        },
490        "setup": [
491            [
492                "$TC actions flush action vlan",
493                0,
494                1,
495                255
496            ]
497        ],
498        "cmdUnderTest": "$TC actions add action vlan push id 5 priority 10 index 1",
499        "expExitCode": "255",
500        "verifyCmd": "$TC actions list action vlan",
501        "matchPattern": "action order [0-9]+: vlan.*push id 5.*index 1 ref",
502        "matchCount": "0",
503        "teardown": []
504    },
505    {
506        "id": "ba5b",
507        "name": "Add vlan modify action for protocol 802.1Q setting priority 0",
508        "category": [
509            "actions",
510            "vlan"
511        ],
512        "plugins": {
513           "requires": "nsPlugin"
514        },
515        "setup": [
516            [
517                "$TC actions flush action vlan",
518                0,
519                1,
520                255
521            ]
522        ],
523        "cmdUnderTest": "$TC actions add action vlan modify protocol 802.1Q id 5 priority 0 index 100",
524        "expExitCode": "0",
525        "verifyCmd": "$TC actions get action vlan index 100",
526        "matchPattern": "action order [0-9]+: vlan.*modify id 100 priority 0 protocol 802.1Q pipe.*index 100 ref",
527        "matchCount": "0",
528        "teardown": [
529            "$TC actions flush action vlan"
530        ]
531    },
532    {
533        "id": "6812",
534        "name": "Add vlan modify action for protocol 802.1Q",
535        "category": [
536            "actions",
537            "vlan"
538        ],
539        "plugins": {
540           "requires": "nsPlugin"
541        },
542        "setup": [
543            [
544                "$TC actions flush action vlan",
545                0,
546                1,
547                255
548            ]
549        ],
550        "cmdUnderTest": "$TC actions add action vlan modify protocol 802.1Q id 5 index 100",
551        "expExitCode": "0",
552        "verifyCmd": "$TC actions get action vlan index 100",
553        "matchPattern": "action order [0-9]+: vlan.*modify id 100 protocol 802.1Q pipe.*index 100 ref",
554        "matchCount": "0",
555        "teardown": [
556            "$TC actions flush action vlan"
557        ]
558    },
559    {
560        "id": "5a31",
561        "name": "Add vlan modify action for protocol 802.1AD",
562        "category": [
563            "actions",
564            "vlan"
565        ],
566        "plugins": {
567           "requires": "nsPlugin"
568        },
569        "setup": [
570            [
571                "$TC actions flush action vlan",
572                0,
573                1,
574                255
575            ]
576        ],
577        "cmdUnderTest": "$TC actions add action vlan modify protocol 802.1ad id 500 reclassify index 12",
578        "expExitCode": "0",
579        "verifyCmd": "$TC actions get action vlan index 12",
580        "matchPattern": "action order [0-9]+: vlan.*modify id 500 protocol 802.1ad reclassify.*index 12 ref",
581        "matchCount": "1",
582        "teardown": [
583            "$TC actions flush action vlan"
584        ]
585    },
586    {
587        "id": "3deb",
588        "name": "Replace existing vlan push action with new ID",
589        "category": [
590            "actions",
591            "vlan"
592        ],
593        "plugins": {
594           "requires": "nsPlugin"
595        },
596        "setup": [
597            [
598                "$TC actions flush action vlan",
599                0,
600                1,
601                255
602            ],
603            "$TC actions add action vlan push id 500 pipe index 12"
604        ],
605        "cmdUnderTest": "$TC actions replace action vlan push id 700 pipe index 12",
606        "expExitCode": "0",
607        "verifyCmd": "$TC actions get action vlan index 12",
608        "matchPattern": "action order [0-9]+: vlan.*push id 700 protocol 802.1Q priority 0 pipe.*index 12 ref",
609        "matchCount": "1",
610        "teardown": [
611            "$TC actions flush action vlan"
612        ]
613    },
614    {
615        "id": "9e76",
616        "name": "Replace existing vlan push action with new protocol",
617        "category": [
618            "actions",
619            "vlan"
620        ],
621        "plugins": {
622           "requires": "nsPlugin"
623        },
624        "setup": [
625            [
626                "$TC actions flush action vlan",
627                0,
628                1,
629                255
630            ],
631            "$TC actions add action vlan push id 1 protocol 802.1Q pipe index 1"
632        ],
633        "cmdUnderTest": "$TC actions replace action vlan push id 1 protocol 802.1ad pipe index 1",
634        "expExitCode": "0",
635        "verifyCmd": "$TC actions get action vlan index 1",
636        "matchPattern": "action order [0-9]+: vlan.*push id 1 protocol 802.1ad priority 0 pipe.*index 1 ref",
637        "matchCount": "1",
638        "teardown": [
639            "$TC actions flush action vlan"
640        ]
641    },
642    {
643        "id": "ede4",
644        "name": "Replace existing vlan push action with new priority",
645        "category": [
646            "actions",
647            "vlan"
648        ],
649        "plugins": {
650           "requires": "nsPlugin"
651        },
652        "setup": [
653            [
654                "$TC actions flush action vlan",
655                0,
656                1,
657                255
658            ],
659            "$TC actions add action vlan push id 1 protocol 802.1Q priority 3 reclassify index 1"
660        ],
661        "cmdUnderTest": "$TC actions replace action vlan push id 1 priority 4 reclassify index 1",
662        "expExitCode": "0",
663        "verifyCmd": "$TC actions get action vlan index 1",
664        "matchPattern": "action order [0-9]+: vlan.*push id 1 protocol 802.1Q priority 4 reclassify.*index 1 ref",
665        "matchCount": "1",
666        "teardown": [
667            "$TC actions flush action vlan"
668        ]
669    },
670    {
671        "id": "d413",
672        "name": "Replace existing vlan pop action with new cookie",
673        "category": [
674            "actions",
675            "vlan"
676        ],
677        "plugins": {
678           "requires": "nsPlugin"
679        },
680        "setup": [
681            [
682                "$TC actions flush action vlan",
683                0,
684                1,
685                255
686            ],
687            "$TC actions add action vlan pop continue index 1 cookie 22334455"
688        ],
689        "cmdUnderTest": "$TC actions replace action vlan pop continue index 1 cookie a1b1c2d1",
690        "expExitCode": "0",
691        "verifyCmd": "$TC actions get action vlan index 1",
692        "matchPattern": "action order [0-9]+: vlan.*pop continue.*index 1 ref.*cookie a1b1c2d1",
693        "matchCount": "1",
694        "teardown": [
695            "$TC actions flush action vlan"
696        ]
697    },
698    {
699        "id": "83a4",
700        "name": "Delete vlan pop action",
701        "category": [
702            "actions",
703            "vlan"
704        ],
705        "plugins": {
706           "requires": "nsPlugin"
707        },
708        "setup": [
709            [
710                "$TC actions flush action vlan",
711                0,
712                1,
713                255
714            ],
715            "$TC actions add action vlan pop index 44"
716        ],
717        "cmdUnderTest": "$TC actions del action vlan index 44",
718        "expExitCode": "0",
719        "verifyCmd": "$TC actions list action vlan",
720        "matchPattern": "action order [0-9]+: vlan.*pop.*index 44 ref",
721        "matchCount": "0",
722        "teardown": []
723    },
724    {
725        "id": "ed1e",
726        "name": "Delete vlan push action for protocol 802.1Q",
727        "category": [
728            "actions",
729            "vlan"
730        ],
731        "plugins": {
732           "requires": "nsPlugin"
733        },
734        "setup": [
735            [
736                "$TC actions flush action vlan",
737                0,
738                1,
739                255
740            ],
741            "$TC actions add action vlan push id 4094 protocol 802.1Q index 999"
742        ],
743        "cmdUnderTest": "$TC actions del action vlan index 999",
744        "expExitCode": "0",
745        "verifyCmd": "$TC actions list action vlan",
746        "matchPattern": "action order [0-9]+: vlan.*push id 4094 protocol 802.1Q priority 0 pipe.*index 999 ref",
747        "matchCount": "0",
748        "teardown": []
749    },
750    {
751        "id": "a2a3",
752        "name": "Flush vlan actions",
753        "category": [
754            "actions",
755            "vlan"
756        ],
757        "plugins": {
758           "requires": "nsPlugin"
759        },
760        "setup": [
761            [
762                "$TC actions flush action vlan",
763                0,
764                1,
765                255
766            ],
767            "$TC actions add action vlan push id 4 protocol 802.1ad index 10",
768            "$TC actions add action vlan push id 4 protocol 802.1ad index 11",
769            "$TC actions add action vlan push id 4 protocol 802.1ad index 12",
770            "$TC actions add action vlan push id 4 protocol 802.1ad index 13"
771        ],
772        "cmdUnderTest": "$TC actions flush action vlan",
773        "expExitCode": "0",
774        "verifyCmd": "$TC actions list action vlan",
775        "matchPattern": "action order [0-9]+: vlan.*push id 4 protocol 802.1ad",
776        "matchCount": "0",
777        "teardown": []
778    },
779    {
780        "id": "1d78",
781        "name": "Add vlan push action with cookie",
782        "category": [
783            "actions",
784            "vlan"
785        ],
786        "plugins": {
787           "requires": "nsPlugin"
788        },
789        "setup": [
790            [
791                "$TC actions flush action vlan",
792                0,
793                1,
794                255
795            ]
796        ],
797        "cmdUnderTest": "$TC actions add action vlan push id 4 cookie a0a0a0a0a0a0a0",
798        "expExitCode": "0",
799        "verifyCmd": "$TC actions list action vlan",
800        "matchPattern": "action order [0-9]+: vlan.*push id 4.*cookie a0a0a0a0a0a0a0",
801        "matchCount": "1",
802        "teardown": [
803            "$TC actions flush action vlan"
804        ]
805    },
806    {
807        "id": "e394",
808        "name": "Replace vlan push action with invalid goto chain control",
809        "category": [
810            "actions",
811            "vlan"
812        ],
813        "plugins": {
814           "requires": "nsPlugin"
815        },
816        "setup": [
817            [
818                "$TC actions flush action vlan",
819                0,
820                1,
821                255
822            ],
823            "$TC actions add action vlan push id 500 pass index 90"
824        ],
825        "cmdUnderTest": "$TC actions replace action vlan push id 500 goto chain 42 index 90 cookie c1a0c1a0",
826        "expExitCode": "255",
827        "verifyCmd": "$TC actions get action vlan index 90",
828        "matchPattern": "action order [0-9]+: vlan.*push id 500 protocol 802.1Q priority 0 pass.*index 90 ref",
829        "matchCount": "1",
830        "teardown": [
831            "$TC actions flush action vlan"
832        ]
833    },
834    {
835        "id": "294e",
836        "name": "Add batch of 32 vlan push actions with cookie",
837        "category": [
838            "actions",
839            "vlan"
840        ],
841        "plugins": {
842           "requires": "nsPlugin"
843        },
844        "setup": [
845            [
846                "$TC actions flush action vlan",
847                0,
848                1,
849                255
850            ]
851        ],
852        "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan push protocol 802.1q id 4094 priority 7 pipe index \\$i cookie aabbccddeeff112233445566778800a1 \\\"; args=\"\\$args\\$cmd\"; done && $TC actions add \\$args\"",
853        "expExitCode": "0",
854        "verifyCmd": "$TC actions list action vlan",
855        "matchPattern": "^[ \t]+index [0-9]+ ref",
856        "matchCount": "32",
857        "teardown": [
858            "$TC actions flush action vlan"
859        ]
860    },
861    {
862        "id": "56f7",
863        "name": "Delete batch of 32 vlan push actions",
864        "category": [
865            "actions",
866            "vlan"
867        ],
868        "plugins": {
869           "requires": "nsPlugin"
870        },
871        "setup": [
872            [
873                "$TC actions flush action vlan",
874                0,
875                1,
876                255
877            ],
878            "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan push protocol 802.1q id 4094 priority 7 pipe index \\$i \\\"; args=\\\"\\$args\\$cmd\\\"; done && $TC actions add \\$args\""
879        ],
880        "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan index \\$i \\\"; args=\"\\$args\\$cmd\"; done && $TC actions del \\$args\"",
881        "expExitCode": "0",
882        "verifyCmd": "$TC actions list action vlan",
883        "matchPattern": "^[ \t]+index [0-9]+ ref",
884        "matchCount": "0",
885        "teardown": []
886    },
887    {
888        "id": "759f",
889        "name": "Add batch of 32 vlan pop actions with cookie",
890        "category": [
891            "actions",
892            "vlan"
893        ],
894        "plugins": {
895           "requires": "nsPlugin"
896        },
897        "setup": [
898            [
899                "$TC actions flush action vlan",
900                0,
901                1,
902                255
903            ]
904        ],
905        "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan pop continue index \\$i cookie aabbccddeeff112233445566778800a1 \\\"; args=\"\\$args\\$cmd\"; done && $TC actions add \\$args\"",
906        "expExitCode": "0",
907        "verifyCmd": "$TC actions list action vlan",
908        "matchPattern": "^[ \t]+index [0-9]+ ref",
909        "matchCount": "32",
910        "teardown": [
911            "$TC actions flush action vlan"
912        ]
913    },
914    {
915        "id": "c84a",
916        "name": "Delete batch of 32 vlan pop actions",
917        "category": [
918            "actions",
919            "vlan"
920        ],
921        "plugins": {
922           "requires": "nsPlugin"
923        },
924        "setup": [
925            [
926                "$TC actions flush action vlan",
927                0,
928                1,
929                255
930            ],
931            "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan pop index \\$i \\\"; args=\\\"\\$args\\$cmd\\\"; done && $TC actions add \\$args\""
932        ],
933        "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan index \\$i \\\"; args=\"\\$args\\$cmd\"; done && $TC actions del \\$args\"",
934        "expExitCode": "0",
935        "verifyCmd": "$TC actions list action vlan",
936        "matchPattern": "^[ \t]+index [0-9]+ ref",
937        "matchCount": "0",
938        "teardown": []
939    },
940    {
941        "id": "1a3d",
942        "name": "Add vlan pop action with no_percpu flag",
943        "category": [
944            "actions",
945            "vlan"
946        ],
947        "plugins": {
948           "requires": "nsPlugin"
949        },
950        "setup": [
951            [
952                "$TC actions flush action vlan",
953                0,
954                1,
955                255
956            ]
957        ],
958        "cmdUnderTest": "$TC actions add action vlan pop no_percpu",
959        "expExitCode": "0",
960        "verifyCmd": "$TC actions list action vlan",
961        "matchPattern": "action order [0-9]+: vlan.*pop.*no_percpu",
962        "matchCount": "1",
963        "teardown": [
964            "$TC actions flush action vlan"
965        ]
966    }
967]
968