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