Commit Graph

12 Commits

Author SHA1 Message Date
Susant Sahani
1418f9951a CI: Add ip neighbour to test
sample run
```

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 17:23:10 ] :: [   LOG    ] :: ip neighbor tests
:: [ 17:23:10 ] :: [   LOG    ] :: ip neighbor tests
:: [ 17:23:10 ] :: [  BEGIN   ] :: Running '/usr/bin/python3 /usr/bin/ip-neighbor-tests.py'
test_add_neighbor (__main__.IPNeighborTests) ... 192.168.100.1 lladdr 00:c0:7b:7d:00:c8 PERMANENT
ok
test_replace_neighbor (__main__.IPNeighborTests) ... 192.168.99.254 lladdr 00:80:c8:27:69:2d PERMANENT
192.168.99.254 lladdr 00:80:c8:27:69:2d PERMANENT
ok
----------------------------------------------------------------------
Ran 2 tests in 0.053s

OK
:: [ 17:23:10 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-neighbor-tests.py' (Expected 0, got 0)
:: [ 17:23:10 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-neighbor-tests.py' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 0s
::   Duration: 0s
::   Assertions: 1 good, 0 bad
::   Assertions: 1 good, 0 bad
::   RESULT: PASS
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Cleanup
::   Cleanup
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
```
2018-08-02 17:24:20 +05:30
Susant Sahani
90c1f77538 CI: Add ip route to test
Sample run

'''
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 18:23:29 ] :: [   LOG    ] :: ip route tests
:: [ 18:23:29 ] :: [   LOG    ] :: ip route tests
:: [ 18:23:29 ] :: [  BEGIN   ] :: Running '/usr/bin/python3 /usr/bin/ip-route-tests.py'
test_add_blackhole (__main__.IPRouteTests) ... default via 192.168.225.1 dev wlp4s0 proto dhcp metric 600
10.0.0.0/8 via 10.67.116.1 dev tun0 proto static metric 50
10.67.116.0/22 dev tun0 proto kernel scope link src 10.67.117.15 metric 50
blackhole 192.168.1.0/24
192.168.225.0/24 dev wlp4s0 proto kernel scope link src 192.168.225.101 metric 600
192.168.225.1 dev wlp4s0 proto static scope link metric 600
209.132.188.220 via 192.168.225.1 dev wlp4s0 proto static metric 600
192.168.225.1 dev wlp4s0 proto static scope link metric 600
209.132.188.220 via 192.168.225.1 dev wlp4s0 proto static metric 600
ok
test_add_prohibit (__main__.IPRouteTests) ... default via 192.168.225.1 dev wlp4s0 proto dhcp metric 600
10.0.0.0/8 via 10.67.116.1 dev tun0 proto static metric 50
10.67.116.0/22 dev tun0 proto kernel scope link src 10.67.117.15 metric 50
prohibit 192.168.1.0/24
192.168.225.0/24 dev wlp4s0 proto kernel scope link src 192.168.225.101 metric 600
192.168.225.1 dev wlp4s0 proto static scope link metric 600
209.132.188.220 via 192.168.225.1 dev wlp4s0 proto static metric 600
ok
test_add_route (__main__.IPRouteTests) ... default via 192.168.225.1 dev wlp4s0 proto dhcp metric 600
10.0.0.0/8 via 10.67.116.1 dev tun0 proto static metric 50
10.67.116.0/22 dev tun0 proto kernel scope link src 10.67.117.15 metric 50
192.168.1.0/24 dev dummy-test scope link
192.168.225.0/24 dev wlp4s0 proto kernel scope link src 192.168.225.101 metric 600
192.168.225.1 dev wlp4s0 proto static scope link metric 600
209.132.188.220 via 192.168.225.1 dev wlp4s0 proto static metric 600
ok
test_add_route_table (__main__.IPRouteTests) ... 192.168.1.0/24 dev dummy-test scope link
ok
test_add_throw (__main__.IPRouteTests) ... default via 192.168.225.1 dev wlp4s0 proto dhcp metric 600
10.0.0.0/8 via 10.67.116.1 dev tun0 proto static metric 50
10.67.116.0/22 dev tun0 proto kernel scope link src 10.67.117.15 metric 50
throw 192.168.1.0/24
192.168.225.0/24 dev wlp4s0 proto kernel scope link src 192.168.225.101 metric 600
192.168.225.1 dev wlp4s0 proto static scope link metric 600
209.132.188.220 via 192.168.225.1 dev wlp4s0 proto static metric 600
ok
test_add_unreachable (__main__.IPRouteTests) ... default via 192.168.225.1 dev wlp4s0 proto dhcp metric 600
10.0.0.0/8 via 10.67.116.1 dev tun0 proto static metric 50
10.67.116.0/22 dev tun0 proto kernel scope link src 10.67.117.15 metric 50
unreachable 192.168.1.0/24
192.168.225.0/24 dev wlp4s0 proto kernel scope link src 192.168.225.101 metric 600
192.168.225.1 dev wlp4s0 proto static scope link metric 600
209.132.188.220 via 192.168.225.1 dev wlp4s0 proto static metric 600
ok

----------------------------------------------------------------------
Ran 6 tests in 0.155s

OK
:: [ 18:23:29 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-route-tests.py' (Expected 0, got 0)
:: [ 18:23:29 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-route-tests.py' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 1s
::   Duration: 1s
::   Assertions: 1 good, 0 bad
::   Assertions: 1 good, 0 bad
::   RESULT: PASS
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Cleanup
::   Cleanup
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

'''
2018-07-31 18:22:25 +05:30
Susant Sahani
0b5c720c9c CI: Add netns to test
Sample run:
```

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 15:37:14 ] :: [   LOG    ] :: ip netns tests
:: [ 15:37:14 ] :: [   LOG    ] :: ip netns tests
:: [ 15:37:14 ] :: [  BEGIN   ] :: Running '/usr/bin/python3 /usr/bin/ip-netns-tests.py'
test_add_dummy_interface_to_ns (__main__.IPNsTests) ... 1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: gre0@NONE: <NOARP> mtu 1476 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/gre 0.0.0.0 brd 0.0.0.0
3: gretap0@NONE: <BROADCAST,MULTICAST> mtu 1462 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
4: erspan0@NONE: <BROADCAST,MULTICAST> mtu 1446 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
4: erspan0@NONE: <BROADCAST,MULTICAST> mtu 1446 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
5: ip6tnl0@NONE: <NOARP> mtu 1452 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/tunnel6 :: brd ::
6: ip6gre0@NONE: <NOARP> mtu 1448 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/gre6 :: brd ::
7: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
8: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0
9: ip_vti0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
143: dummy-test: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 6e:d1:ba:73:59:c5 brd ff:ff:ff:ff:ff:ff
ok
test_add_ns (__main__.IPNsTests) ... ok
test_add_veth_interface_to_ns (__main__.IPNsTests) ... 1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: gre0@NONE: <NOARP> mtu 1476 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/gre 0.0.0.0 brd 0.0.0.0
3: gretap0@NONE: <BROADCAST,MULTICAST> mtu 1462 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
4: erspan0@NONE: <BROADCAST,MULTICAST> mtu 1446 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
5: ip6tnl0@NONE: <NOARP> mtu 1452 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/tunnel6 :: brd ::
6: ip6gre0@NONE: <NOARP> mtu 1448 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/gre6 :: brd ::
7: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
8: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0
9: ip_vti0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
144: test-peer@if145: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 62:ce:d1:9f:bc:de brd ff:ff:ff:ff:ff:ff link-netnsid 0
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: gre0@NONE: <NOARP> mtu 1476 qdisc noop state DOWN group default qlen 1000
    link/gre 0.0.0.0 brd 0.0.0.0
3: gretap0@NONE: <BROADCAST,MULTICAST> mtu 1462 qdisc noop state DOWN group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
4: erspan0@NONE: <BROADCAST,MULTICAST> mtu 1446 qdisc noop state DOWN group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
5: ip6tnl0@NONE: <NOARP> mtu 1452 qdisc noop state DOWN group default qlen 1000
    link/tunnel6 :: brd ::
6: ip6gre0@NONE: <NOARP> mtu 1448 qdisc noop state DOWN group default qlen 1000
    link/gre6 :: brd ::
7: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
8: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0
9: ip_vti0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
144: test-peer@if145: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 62:ce:d1:9f:bc:de brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet 10.200.1.2/24 scope global test-peer
       valid_lft forever preferred_lft forever
    inet6 fe80::60ce:d1ff:fe9f:bcde/64 scope link tentative
       valid_lft forever preferred_lft forever
PING 10.200.1.1 (10.200.1.1) 56(84) bytes of data.
64 bytes from 10.200.1.1: icmp_seq=1 ttl=64 time=0.063 ms
64 bytes from 10.200.1.1: icmp_seq=2 ttl=64 time=0.042 ms
64 bytes from 10.200.1.1: icmp_seq=3 ttl=64 time=0.054 ms
64 bytes from 10.200.1.1: icmp_seq=4 ttl=64 time=0.059 ms
64 bytes from 10.200.1.1: icmp_seq=5 ttl=64 time=0.064 ms

--- 10.200.1.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4073ms
rtt min/avg/max/mdev = 0.042/0.056/0.064/0.010 ms
ok

----------------------------------------------------------------------
Ran 3 tests in 4.431s

Ran 3 tests in 4.431s

OK
:: [ 15:37:18 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-netns-tests.py' (Expected 0, got 0)
:: [ 15:37:18 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-netns-tests.py' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 4s
::   Duration: 4s
::   Assertions: 1 good, 0 bad
::   Assertions: 1 good, 0 bad
::   RESULT: PASS
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Cleanup
::   Cleanup

```
2018-07-31 15:36:29 +05:30
Susant Sahani
e3e7ca1187 CI: Add l2tp to test
Sample run

```
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 15:21:16 ] :: [   LOG    ] :: ip l2tp tests
:: [ 15:21:16 ] :: [   LOG    ] :: ip l2tp tests
:: [ 15:21:16 ] :: [  BEGIN   ] :: Running '/usr/bin/python3 /usr/bin/ip-l2tp-tests.py'
test_add_l2tp_add_tunnel (__main__.IPL2tpTests) ... Tunnel 3000, encap UDP
  From 192.168.11.12 to 192.168.11.13
  Peer tunnel 4000
  UDP source / dest ports: 5000/6000
  UDP checksum: disabled
ok
test_add_l2tp_add_tunnel_session (__main__.IPL2tpTests) ... Tunnel 3000, encap UDP
  From 192.168.11.12 to 192.168.11.13
  Peer tunnel 4000
  UDP source / dest ports: 5000/6000
  UDP checksum: disabled
Session 1000 in tunnel 3000
  Peer session 2000, tunnel 4000
  interface name: l2tpeth0
  offset 0, peer offset 0
ok
test_setup_l2tp (__main__.IPL2tpTests) ... Tunnel 3000, encap UDP
  From 192.168.11.12 to 192.168.11.13
  Peer tunnel 4000
  UDP source / dest ports: 5000/6000
  UDP checksum: disabled
Session 1000 in tunnel 3000
  Peer session 2000, tunnel 4000
  interface name: l2tpeth0
  offset 0, peer offset 0
Tunnel 4000, encap UDP
  From 192.168.11.13 to 192.168.11.12
  Peer tunnel 3000
  UDP source / dest ports: 6000/5000
  UDP checksum: disabled
Tunnel 3000, encap UDP
  From 192.168.11.12 to 192.168.11.13
  Peer tunnel 4000
  UDP source / dest ports: 5000/6000
  UDP checksum: disabled
Session 2000 in tunnel 4000
  Peer session 1000, tunnel 3000
  interface name: l2tpeth1
  offset 0, peer offset 0
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s31f6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
    link/ether 8c:16:45:6c:83:b9 brd ff:ff:ff:ff:ff:ff
3: wlp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
    link/ether 7c:76:35:ea:89:90 brd ff:ff:ff:ff:ff:ff
4: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1360 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 100
    link/none
92: gre0@NONE: <NOARP> mtu 1476 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/gre 0.0.0.0 brd 0.0.0.0
93: gretap0@NONE: <BROADCAST,MULTICAST> mtu 1462 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
94: erspan0@NONE: <BROADCAST,MULTICAST> mtu 1446 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
100: ip6tnl0@NONE: <NOARP> mtu 1452 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/tunnel6 :: brd ::
101: ip6gre0@NONE: <NOARP> mtu 1448 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/gre6 :: brd ::
104: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
117: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0
126: ip_vti0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
168: test-peer@veth-test: <BROADCAST,MULTICAST,M-DOWN> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 96:03:08:d2:65:40 brd ff:ff:ff:ff:ff:ff
169: veth-test@test-peer: <BROADCAST,MULTICAST,M-DOWN> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether c2:8c:3b:9f:ea:32 brd ff:ff:ff:ff:ff:ff
170: l2tpeth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1488 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 1000
    link/ether 76:41:ec:b9:d2:75 brd ff:ff:ff:ff:ff:ff
171: l2tpeth1: <BROADCAST,MULTICAST> mtu 65481 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 8e:7f:ab:21:a2:ea brd ff:ff:ff:ff:ff:ff
PING 10.42.1.2 (10.42.1.2) 56(84) bytes of data.
64 bytes from 10.42.1.2: icmp_seq=1 ttl=64 time=0.013 ms
64 bytes from 10.42.1.2: icmp_seq=2 ttl=64 time=0.043 ms
64 bytes from 10.42.1.2: icmp_seq=3 ttl=64 time=0.066 ms
64 bytes from 10.42.1.2: icmp_seq=4 ttl=64 time=0.045 ms
64 bytes from 10.42.1.2: icmp_seq=5 ttl=64 time=0.041 ms
--- 10.42.1.2 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4126ms
rtt min/avg/max/mdev = 0.013/0.041/0.066/0.018 ms
ok

----------------------------------------------------------------------
Ran 3 tests in 4.322s

OK
:: [ 15:21:21 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-l2tp-tests.py' (Expected 0, got 0)
:: [ 15:21:21 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-l2tp-tests.py' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 5s
::   Duration: 5s
::   Assertions: 1 good, 0 bad
::   Assertions: 1 good, 0 bad
::   RESULT: PASS
::   RESULT: PASS

```
2018-07-30 15:22:04 +05:30
Susant Sahani
73cd43c0ee CI: Add ip tunnel to test
Sample run
```
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 17:39:52 ] :: [   LOG    ] :: ip tunnel tests
:: [ 17:39:52 ] :: [  BEGIN   ] :: Running '/usr/bin/python3 /usr/bin/ip-tunnel-tests.py'
test_add_gre (__main__.IPTunnelTests) ... sit0: ipv6/ip remote any local any ttl 64 nopmtudisc 6rd-prefix 2002::/16
ip_vti0: ip/ip remote any local any ttl inherit nopmtudisc key 0
gre0: gre/ip remote any local any ttl inherit nopmtudisc
tunl0: any/ip remote any local any ttl inherit nopmtudisc
gretun-test: gre/ip remote 10.4.4.4 local 10.3.3.3 dev dummy-test ttl 64
ok
test_add_ipip (__main__.IPTunnelTests) ... sit0: ipv6/ip remote any local any ttl 64 nopmtudisc 6rd-prefix 2002::/16
ip_vti0: ip/ip remote any local any ttl inherit nopmtudisc key 0
gre0: gre/ip remote any local any ttl inherit nopmtudisc
tunl0: any/ip remote any local any ttl inherit nopmtudisc
ipiptun-test: ip/ip remote 10.4.4.4 local 10.3.3.3 dev dummy-test ttl 64
ok
test_add_isatap (__main__.IPTunnelTests) ... sit0: ipv6/ip remote any local any ttl 64 nopmtudisc 6rd-prefix 2002::/16
ip_vti0: ip/ip remote any local any ttl inherit nopmtudisc key 0
gre0: gre/ip remote any local any ttl inherit nopmtudisc
tunl0: any/ip remote any local any ttl inherit nopmtudisc
isatap-test: ipv6/ip remote 10.4.4.4 local 10.3.3.3 dev dummy-test ttl 64 6rd-prefix 2002::/16
ok
test_add_sit (__main__.IPTunnelTests) ... sit0: ipv6/ip remote any local any ttl 64 nopmtudisc 6rd-prefix 2002::/16
ip_vti0: ip/ip remote any local any ttl inherit nopmtudisc key 0
gre0: gre/ip remote any local any ttl inherit nopmtudisc
tunl0: any/ip remote any local any ttl inherit nopmtudisc
sittun-test: ipv6/ip remote 10.4.4.4 local 10.3.3.3 dev dummy-test ttl 64 6rd-prefix 2002::/16
ok
test_add_vti (__main__.IPTunnelTests) ... sit0: ipv6/ip remote any local any ttl 64 nopmtudisc 6rd-prefix 2002::/16
ip_vti0: ip/ip remote any local any ttl inherit nopmtudisc key 0
gre0: gre/ip remote any local any ttl inherit nopmtudisc
tunl0: any/ip remote any local any ttl inherit nopmtudisc
vti-test: ipv6/ip remote 10.4.4.4 local 10.3.3.3 dev dummy-test ttl 64 6rd-prefix 2002::/16
ok

----------------------------------------------------------------------
Ran 5 tests in 0.197s

OK

```
2018-07-24 19:10:47 +05:30
Susant Sahani
5c4250bd81 CI: Add tuntap to test
Sample run

```

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 17:14:21 ] :: [   LOG    ] :: ip tuntap tests
:: [ 17:14:21 ] :: [  BEGIN   ] :: Running '/usr/bin/python3 /usr/bin/ip-tuntap-tests.py'
test_add_tap (__main__.IPTuntapTests) ... fopen /sys/class/net/ip6gre0/tun_flags: No such file or directory
fopen /sys/class/net/wlan0/tun_flags: No such file or directory
ok

ok
test_add_tun_user_group (__main__.IPTuntapTests) ... fopen /sys/class/net/ip6gre0/tun_flags: No such file or directory
ok

----------------------------------------------------------------------
Ran 3 tests in 0.049s

OK
:: [ 17:14:21 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-tuntap-tests.py' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 0s
::   Assertions: 1 good, 0 bad
::   RESULT: PASS

```
2018-07-24 17:14:59 +05:30
Susant Sahani
1abbe5eb83 CI: Add ip token to test
Sample Run
```
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Setup
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

iproute-4.16.0-1.fc28.x86_64
:: [ 16:55:06 ] :: [   PASS   ] :: Checking for the presence of iproute rpm
:: [ 16:55:06 ] :: [   LOG    ] :: Package versions:
:: [ 16:55:06 ] :: [   LOG    ] ::   iproute-4.16.0-1.fc28.x86_64
:: [ 16:55:06 ] :: [  BEGIN   ] :: Running 'cp ip-token-tests.py /usr/bin'
:: [ 16:55:06 ] :: [   PASS   ] :: Command 'cp ip-token-tests.py /usr/bin' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 0s
::   Assertions: 2 good, 0 bad
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 16:55:07 ] :: [   LOG    ] :: ip token tests
:: [ 16:55:07 ] :: [  BEGIN   ] :: Running '/usr/bin/python3 /usr/bin/ip-token-tests.py'
test_add_token (__main__.IPTokenTests) ... token ::1a:2b:3c:4d dev veth-test
ok

----------------------------------------------------------------------
Ran 1 test in 0.029s

OK
:: [ 16:55:07 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-token-tests.py' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 1s
::   Assertions: 1 good, 0 bad
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Cleanup
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

```
2018-07-24 16:56:27 +05:30
Susant Sahani
d4c9cc3ea7 CI: Add FOU to test.
Sample run
```
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 21:17:51 ] :: [   LOG    ] :: ip fou tests
:: [ 21:17:51 ] :: [   LOG    ] :: ip fou tests
:: [ 21:17:51 ] :: [  BEGIN   ] :: Running '/usr/bin/python3 /usr/bin/ip-fou-tests.py'
test_configure_fou_receive_port_gre (__main__.IPFOUTests)
Configure a FOU receive port for GRE bound to 7777 ... port 7777 ipproto 47
ok
test_configure_fou_receive_port_gue (__main__.IPFOUTests)
Configure a GUE receive port bound to 9999 ... port 9999 gue
ok
test_configure_fou_receive_port_ipip (__main__.IPFOUTests)
Configure a FOU receive port for IPIP bound to 8888 ... port 8888 ipproto 4
ok
test_configure_fou_with_ipip (__main__.IPFOUTests)
IP over UDP tunnel ... port 9000 ipproto 4
ok

----------------------------------------------------------------------
Ran 4 tests in 0.048s

OK
```
2018-07-24 16:48:01 +05:30
Susant Sahani
fd68e09fe1 CI: Add ip addrlabel to test
Sample Run

```
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 17:56:55 ] :: [   LOG    ] :: ip address label tests
:: [ 17:56:55 ] :: [   LOG    ] :: ip address label tests
:: [ 17:56:55 ] :: [  BEGIN   ] :: Running '/usr/bin/python3 /usr/bin/ip-address-label-tests.py'
test_add_address_label (__main__.IPAddressLabelTests) ... prefix ::1/128 label 0
prefix ::/96 label 3
prefix ::ffff:0.0.0.0/96 label 4
prefix 2001:6f8:12d8:2::/64 dev if14 label 200
prefix 2001:6f8:900:8cbc::/64 dev if14 label 300
prefix 2001:4dd0:ff00:834::/64 dev if14 label 200
prefix 2a01:238:423d:8800::/64 dev if14 label 300
prefix 2001:4dd0:ff00:834::/64 dev if14 label 200
prefix 2a01:238:423d:8800::/64 dev if14 label 300
prefix 2a01:238:423d:8800::/64 label 300
prefix 2001:4dd0:ff00:834::/64 label 200
prefix 2001:6f8:900:8cbc::/64 label 300
prefix 2001:6f8:12d8:2::/64 label 200
prefix 2001::/32 label 6
prefix 2001:10::/28 label 7
prefix 3ffe::/16 label 12
prefix 2002::/16 label 2
prefix fec0::/10 label 11
prefix fc00::/7 label 5
prefix ::/0 label 1
ok
test_add_address_label_dev (__main__.IPAddressLabelTests) ... prefix ::1/128 label 0
prefix ::/96 label 3
prefix ::ffff:0.0.0.0/96 label 4
prefix 2001:6f8:12d8:2::/64 dev if14 label 200
prefix 2001:6f8:900:8cbc::/64 dev if14 label 300
prefix 2001:4dd0:ff00:834::/64 dev if14 label 200
prefix 2a01:238:423d:8800::/64 dev if14 label 300
prefix 2001:6f8:12d8:2::/64 dev dummy-test label 200
prefix 2001:6f8:900:8cbc::/64 dev dummy-test label 300
prefix 2001:4dd0:ff00:834::/64 dev dummy-test label 200
prefix 2a01:238:423d:8800::/64 dev dummy-test label 300
prefix 2001::/32 label 6
prefix 2001:10::/28 label 7
prefix 3ffe::/16 label 12
prefix 2002::/16 label 2
prefix fec0::/10 label 11
prefix fc00::/7 label 5
prefix ::/0 label 1
ok

----------------------------------------------------------------------
Ran 2 tests in 0.077s

OK
```
2018-07-23 21:12:47 +05:30
Susant Sahani
7ee9aeadb4 CI: Add ip address sanity tests
Snip:
```
iproute-4.15.0-1.fc28.x86_64
:: [ 18:10:39 ] :: [   PASS   ] :: Checking for the presence of iproute rpm
:: [ 18:10:39 ] :: [   PASS   ] :: Checking for the presence of iproute rpm
:: [ 18:10:39 ] :: [   LOG    ] :: Package versions:
:: [ 18:10:39 ] :: [   LOG    ] :: Package versions:
:: [ 18:10:39 ] :: [   LOG    ] ::   iproute-4.15.0-1.fc28.x86_64
:: [ 18:10:39 ] :: [   LOG    ] ::   iproute-4.15.0-1.fc28.x86_64
:: [ 18:10:39 ] :: [  BEGIN   ] :: Running 'cp ip-address-tests.py /usr/bin'
:: [ 18:10:39 ] :: [   PASS   ] :: Command 'cp ip-address-tests.py /usr/bin' (Expected 0, got 0)
:: [ 18:10:39 ] :: [   PASS   ] :: Command 'cp ip-address-tests.py /usr/bin' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 0s
::   Duration: 0s
::   Assertions: 2 good, 0 bad
::   Assertions: 2 good, 0 bad
::   RESULT: PASS
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 18:10:39 ] :: [   LOG    ] :: ip address tests
:: [ 18:10:39 ] :: [   LOG    ] :: ip address tests
:: [ 18:10:39 ] :: [  BEGIN   ] :: Running '/usr/bin/python3 /usr/bin/ip-address-tests.py'
test_add_address (__main__.IPAddressTests) ... ok
test_add_address_lifetime (__main__.IPAddressTests) ... ok
test_add_address_scope (__main__.IPAddressTests) ... ok
test_add_broadcast_address_label (__main__.IPAddressTests) ... ok
test_add_ipv6_address (__main__.IPAddressTests) ... ok
test_del_address (__main__.IPAddressTests) ... ok

----------------------------------------------------------------------
Ran 6 tests in 0.136s

OK
:: [ 18:10:39 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-address-tests.py' (Expected 0, got 0)
:: [ 18:10:39 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-address-tests.py' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 1s
::   Duration: 1s
::   Assertions: 1 good, 0 bad
::   Assertions: 1 good, 0 bad
::   RESULT: PASS
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Cleanup
::   Cleanup
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 18:10:40 ] :: [  BEGIN   ] :: Running 'rm /usr/bin/ip-address-tests.py'
:: [ 18:10:40 ] :: [   PASS   ] :: Command 'rm /usr/bin/ip-address-tests.py' (Expected 0, got 0)
:: [ 18:10:40 ] :: [   PASS   ] :: Command 'rm /usr/bin/ip-address-tests.py' (Expected 0, got 0)
:: [ 18:10:40 ] :: [   LOG    ] :: ip address tests done
:: [ 18:10:40 ] :: [   LOG    ] :: ip address tests done
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 0s
::   Duration: 0s
::   Assertions: 1 good, 0 bad
::   Assertions: 1 good, 0 bad
::   RESULT: PASS
::   RESULT: PASS
```
2018-06-24 18:14:12 +05:30
Susant Sahani
84d80eb1b5 CI: Add ip link kind and set dev tests
justification
Adds tests according to the CI wiki specifically the standard test interface in the spec.
The playbook includes Tier1 level test cases that have been tested in the following contexts and
is passing reliably: Classic. Test logs are stored in the artifacts directory.
The following steps are used to execute the tests using the standard test interface:

Test enveronment
Make sure you have installed packages from the spec
```
ansible-2.4.1.0-2.fc28.noarch
python2-dnf-2.7.5-1.fc28.noarch
libselinux-python-2.7-2.fc28.x86_64
standard-test-roles-2.5-1.fc28.noarch
Run tests for Classic
Snip of the example test run for Classic tests:
```

```
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Setup
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

iproute-4.15.0-1.fc28.x86_64
:: [ 16:56:03 ] :: [   PASS   ] :: Checking for the presence of iproute rpm
:: [ 16:56:03 ] :: [   LOG    ] :: Package versions:
:: [ 16:56:04 ] :: [   LOG    ] ::   iproute-4.15.0-1.fc28.x86_64
:: [ 16:56:04 ] :: [  BEGIN   ] :: Running 'cp ip-link-tests.py /usr/bin'
:: [ 16:56:04 ] :: [   PASS   ] :: Command 'cp ip-link-tests.py /usr/bin' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 1s
::   Assertions: 2 good, 0 bad
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 16:56:04 ] :: [   LOG    ] :: ip link tests
:: [ 16:56:04 ] :: [  BEGIN   ] :: Running '/usr/bin/python3 /usr/bin/ip-link-tests.py'
test_add_bond (__main__.IPLinkKindTests) ... ok
test_add_bridge (__main__.IPLinkKindTests) ... ok
test_add_dummy (__main__.IPLinkKindTests) ... ok
test_add_erspan_tunnel (__main__.IPLinkKindTests) ... ok
test_add_geneve_tunnel (__main__.IPLinkKindTests) ... ok
test_add_gre_tunnel (__main__.IPLinkKindTests) ... ok
test_add_gretap_tunnel (__main__.IPLinkKindTests) ... ok
test_add_ip6erspan_tunnel (__main__.IPLinkKindTests) ... ok
test_add_ip6gre_tunnel (__main__.IPLinkKindTests) ... ok
test_add_ip6gretap_tunnel (__main__.IPLinkKindTests) ... ok
test_add_ipip_tunnel (__main__.IPLinkKindTests) ... ok
test_add_ipvlan (__main__.IPLinkKindTests) ... ok
test_add_macsec (__main__.IPLinkKindTests) ... ok
test_add_macvlan (__main__.IPLinkKindTests) ... ok
test_add_macvtap (__main__.IPLinkKindTests) ... ok
test_add_sit_tunnel (__main__.IPLinkKindTests) ... ok
test_add_team (__main__.IPLinkKindTests) ... ok
test_add_vcan (__main__.IPLinkKindTests) ... ok
test_add_veth_pair (__main__.IPLinkKindTests) ... ok
test_add_vlan (__main__.IPLinkKindTests) ... ok
test_add_vrf (__main__.IPLinkKindTests) ... ok
test_add_vti_tunnel (__main__.IPLinkKindTests) ... ok
test_add_vxcan (__main__.IPLinkKindTests) ... ok
test_add_vxlan (__main__.IPLinkKindTests) ... ok
test_set_dev_address (__main__.IPLinkSetDevTests) ... ok
test_set_dev_alias (__main__.IPLinkSetDevTests) ... ok
test_set_dev_all_multicast (__main__.IPLinkSetDevTests) ... ok
test_set_dev_mtu (__main__.IPLinkSetDevTests) ... ok
test_set_dev_multicast (__main__.IPLinkSetDevTests) ... ok
test_set_dev_name (__main__.IPLinkSetDevTests) ... ok
test_set_dev_up_down (__main__.IPLinkSetDevTests) ... ok

----------------------------------------------------------------------
Ran 31 tests in 0.966s

OK
:: [ 16:56:05 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-link-tests.py' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 1s
::   Assertions: 1 good, 0 bad
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Cleanup
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 16:56:05 ] :: [  BEGIN   ] :: Running 'rm /usr/bin/ip-link-tests.py'
:: [ 16:56:05 ] :: [   PASS   ] :: Command 'rm /usr/bin/ip-link-tests.py' (Expected 0, got 0)
:: [ 16:56:05 ] :: [   LOG    ] :: ip link tests done
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 0s
::   Assertions: 1 good, 0 bad
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   TEST PROTOCOL
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

    Package       : iproute
    Installed     : iproute-4.15.0-1.fc28.x86_64
    beakerlib RPM : beakerlib-1.17-13.fc28.noarch
    Test started  : 2018-06-17 16:56:03 IST
    Test finished : 2018-06-17 16:56:05 IST (still running)
    Test duration : 2 seconds
    Test name     : unknown
    Distro        : Fedora release 28 (Twenty Eight)
    Hostname      : Zeus
    Architecture  : x86_64
    CPUs          : 8 x Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz
    RAM size      : 31542 MB
    HDD size      : 452.94 GB

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test description
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

PURPOSE of /CoreOS/iproute/Sanity/ip-link-sanity-test
Description: Test basic ip link funcionality
Author: Susant Sahani <susant@redhat.com>

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Setup
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 16:56:03 ] :: [   PASS   ] :: Checking for the presence of iproute rpm
:: [ 16:56:03 ] :: [   LOG    ] :: Package versions:
:: [ 16:56:04 ] :: [   LOG    ] ::   iproute-4.15.0-1.fc28.x86_64
:: [ 16:56:04 ] :: [   PASS   ] :: Command 'cp ip-link-tests.py /usr/bin' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 1s
::   Assertions: 2 good, 0 bad
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 16:56:04 ] :: [   LOG    ] :: ip link tests
:: [ 16:56:05 ] :: [   PASS   ] :: Command '/usr/bin/python3 /usr/bin/ip-link-tests.py' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 1s
::   Assertions: 1 good, 0 bad
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Cleanup
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 16:56:05 ] :: [   PASS   ] :: Command 'rm /usr/bin/ip-link-tests.py' (Expected 0, got 0)
:: [ 16:56:05 ] :: [   LOG    ] :: ip link tests done
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 0s
::   Assertions: 1 good, 0 bad
::   RESULT: PASS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   unknown
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [ 16:56:05 ] :: [   LOG    ] :: JOURNAL XML: /var/tmp/beakerlib-zsCyOCP/journal.xml
:: [ 16:56:05 ] :: [   LOG    ] :: JOURNAL TXT: /var/tmp/beakerlib-zsCyOCP/journal.txt
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::   Duration: 2s
::   Phases: 3 good, 0 bad
::   OVERALL RESULT: PASS
```
2018-06-17 17:02:31 +05:30
Mike Gahagan
f41cef03d3 initial commit of tests from upstreamfirst project 2017-09-28 13:39:29 -04:00