1[
2    {
3        "id": "34ba",
4        "name": "Create ETF with default setting",
5        "category": [
6            "qdisc",
7            "etf"
8        ],
9        "plugins": {
10            "requires": "nsPlugin"
11        },
12        "setup": [
13        ],
14        "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root etf clockid CLOCK_TAI",
15        "expExitCode": "0",
16        "verifyCmd": "$TC qdisc show dev $DUMMY",
17        "matchPattern": "qdisc etf 1: root refcnt [0-9]+ clockid TAI delta 0 offload off deadline_mode off skip_sock_check off",
18        "matchCount": "1",
19        "teardown": [
20            "$TC qdisc del dev $DUMMY handle 1: root"
21        ]
22    },
23    {
24        "id": "438f",
25        "name": "Create ETF with delta nanos setting",
26        "category": [
27            "qdisc",
28            "etf"
29        ],
30        "plugins": {
31            "requires": "nsPlugin"
32        },
33        "setup": [
34        ],
35        "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root etf delta 100 clockid CLOCK_TAI",
36        "expExitCode": "0",
37        "verifyCmd": "$TC qdisc show dev $DUMMY",
38        "matchPattern": "qdisc etf 1: root refcnt [0-9]+ clockid TAI delta 100 offload off deadline_mode off skip_sock_check off",
39        "matchCount": "1",
40        "teardown": [
41            "$TC qdisc del dev $DUMMY handle 1: root"
42        ]
43    },
44    {
45        "id": "9041",
46        "name": "Create ETF with deadline_mode setting",
47        "category": [
48            "qdisc",
49            "etf"
50        ],
51        "plugins": {
52            "requires": "nsPlugin"
53        },
54        "setup": [
55        ],
56        "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root etf clockid CLOCK_TAI deadline_mode",
57        "expExitCode": "0",
58        "verifyCmd": "$TC qdisc show dev $DUMMY",
59        "matchPattern": "qdisc etf 1: root refcnt [0-9]+ clockid TAI delta 0 offload off deadline_mode on skip_sock_check off",
60        "matchCount": "1",
61        "teardown": [
62            "$TC qdisc del dev $DUMMY handle 1: root"
63        ]
64    },
65    {
66        "id": "9a0c",
67        "name": "Create ETF with skip_sock_check setting",
68        "category": [
69            "qdisc",
70            "etf"
71        ],
72        "plugins": {
73            "requires": "nsPlugin"
74        },
75        "setup": [
76        ],
77        "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root etf clockid CLOCK_TAI skip_sock_check",
78        "expExitCode": "0",
79        "verifyCmd": "$TC qdisc show dev $DUMMY",
80        "matchPattern": "qdisc etf 1: root refcnt [0-9]+ clockid TAI delta 0 offload off deadline_mode off skip_sock_check on",
81        "matchCount": "1",
82        "teardown": [
83            "$TC qdisc del dev $DUMMY handle 1: root"
84        ]
85    },
86    {
87        "id": "2093",
88        "name": "Delete ETF with valid handle",
89        "category": [
90            "qdisc",
91            "etf"
92        ],
93        "plugins": {
94            "requires": "nsPlugin"
95        },
96        "setup": [
97            "$TC qdisc add dev $DUMMY handle 1: root etf clockid CLOCK_TAI"
98        ],
99        "cmdUnderTest": "$TC qdisc del dev $DUMMY handle 1: root",
100        "expExitCode": "0",
101        "verifyCmd": "$TC qdisc show dev $DUMMY",
102        "matchPattern": "qdisc etf 1: root refcnt [0-9]+ clockid TAI delta 0 offload off deadline_mode off skip_sock_check off",
103        "matchCount": "0",
104        "teardown": [
105        ]
106    }
107]
108