test_pim_basic1.py::PIMTopo1Test

::startup
::prepare:#104:r1/routes-v4
::prepare:#116:r1/pimd/vtysh[show ip pim rp-info json]
::test_state:#130:r2/scapy[r2-lan2/IP/UDP]
::test_state:#130:r3/scapy[r3-lan3/IP/UDP]
::test_state:#143:r1/pimd/vtysh[show ip pim upstream json]
::test_state:#163:rp/pimd/vtysh[show ip pim upstream json]
::test_join:#171:r2/r2-lan2/multicast-join[*,229.1.1.2]
::test_join:#183:r1/pimd/vtysh[show ip pim upstream json]
::test_join:#190:r3/scapy[r3-lan3/IP/UDP]
::test_join:#195:lan2/packet
::shutdown

::startup

passed after 1.66s
('test_pim_basic1.py', -inf, 'startup')

::prepare

::prepare:#104:r1/routes-v4

passed after 0.92s
('test_pim_basic1.py', 104, '#104:r1/routes-v4')

::prepare:#116:r1/pimd/vtysh[show ip pim rp-info json]

passed after 0.00s, CLI command: show ip pim rp-info json
Expected output:
{'10.255.0.4': [{'outboundInterface': 'r1-lan1', 'group': '224.0.0.0/4', 'source': 'Static'}]}
('test_pim_basic1.py', 116, '#116:r1/pimd/vtysh[show ip pim rp-info json]')

::test_state

::test_state:#130:r2/scapy[r2-lan2/IP/UDP]

passed after 1.07s, packet: Ether / IP / UDP 10.102.0.2:9999 > 229.1.1.1:9999
###[ Ethernet ]### 
  dst       = 01:00:5e:01:01:01
  src       = None
  type      = IPv4
###[ IP ]### 
     version   = 4
     ihl       = None
     tos       = 0x0
     len       = None
     id        = 1
     flags     = 
     frag      = 0
     ttl       = 255
     proto     = udp
     chksum    = None
     src       = 10.102.0.2
     dst       = 229.1.1.1
     \options   \
###[ UDP ]### 
        sport     = 9999
        dport     = 9999
        len       = None
        chksum    = None

::test_state:#130:r3/scapy[r3-lan3/IP/UDP]

passed after 1.05s, packet: Ether / IP / UDP 10.103.0.3:9999 > 229.1.1.1:9999
###[ Ethernet ]### 
  dst       = 01:00:5e:01:01:01
  src       = None
  type      = IPv4
###[ IP ]### 
     version   = 4
     ihl       = None
     tos       = 0x0
     len       = None
     id        = 1
     flags     = 
     frag      = 0
     ttl       = 255
     proto     = udp
     chksum    = None
     src       = 10.103.0.3
     dst       = 229.1.1.1
     \options   \
###[ UDP ]### 
        sport     = 9999
        dport     = 9999
        len       = None
        chksum    = None

::test_state:#143:r1/pimd/vtysh[show ip pim upstream json]

passed after 0.00s, CLI command: show ip pim upstream json
Expected output:
{'229.1.1.1': {'10.102.0.2': {'firstHopRouter': 1, 'joinState': 'NotJoined', 'regState': 'RegPrune', 'inboundInterface': 'r1-lan2'}}}
('test_pim_basic1.py', 143, '#143:r1/pimd/vtysh[show ip pim upstream json]')

::test_state:#163:rp/pimd/vtysh[show ip pim upstream json]

passed after 0.00s, CLI command: show ip pim upstream json
Expected output:
{'229.1.1.1': {'10.102.0.2': {'sourceStream': True, 'inboundInterface': 'rp-lan1', 'rpfAddress': '10.102.0.2', 'source': '10.102.0.2', 'group': '229.1.1.1', 'state': 'NotJ', 'joinState': 'NotJoined', 'regState': 'RegNoInfo', 'resetTimer': '--:--:--', 'refCount': 1, 'sptBit': 0}}}
('test_pim_basic1.py', 163, '#163:rp/pimd/vtysh[show ip pim upstream json]')

::test_join

::test_join:#171:r2/r2-lan2/multicast-join[*,229.1.1.2]

passed after 0.00s
('test_pim_basic1.py', 171, '#171:r2/r2-lan2/multicast-join[*,229.1.1.2]')

::test_join:#183:r1/pimd/vtysh[show ip pim upstream json]

passed after 0.10s, CLI command: show ip pim upstream json
Expected output:
{'229.1.1.2': {'*': {'sourceIgmp': 1, 'joinState': 'Joined', 'regState': 'RegNoInfo', 'sptBit': 0}}}
('test_pim_basic1.py', 183, '#183:r1/pimd/vtysh[show ip pim upstream json]')

::test_join:#190:r3/scapy[r3-lan3/IP/UDP]

passed after 1.06s, packet: Ether / IP / UDP 10.103.0.3:9999 > 229.1.1.2:9999
###[ Ethernet ]### 
  dst       = 01:00:5e:01:01:02
  src       = None
  type      = IPv4
###[ IP ]### 
     version   = 4
     ihl       = None
     tos       = 0x0
     len       = None
     id        = 1
     flags     = 
     frag      = 0
     ttl       = 255
     proto     = udp
     chksum    = None
     src       = 10.103.0.3
     dst       = 229.1.1.2
     \options   \
###[ UDP ]### 
        sport     = 9999
        dport     = 9999
        len       = None
        chksum    = None

::test_join:#195:lan2/packet

passed after 0.00s
('test_pim_basic1.py', 195, '#195:lan2/packet')

::shutdown

passed after 1.22s
('test_pim_basic1.py', inf, 'shutdown')
net router-rp rp 10.255.0.4/32 fd00::4/128 rp-lan1 fe:04:00:bc:01:00 10.101.0.4/16 fdbc:1::fc04:ff:febc:100/64 lan-lan1 lan1 10.101.0.0/16 fdbc:1::/64 router-rp:rp-lan1--lan-lan1 router-r1 r1 10.255.0.1/32 fd00::1/128 r1-lan1 fe:01:00:bc:01:00 10.101.0.1/16 fdbc:1::fc01:ff:febc:100/64 r1-lan2 fe:01:00:bc:02:00 10.102.0.1/16 fdbc:2::fc01:ff:febc:200/64 r1-lan3 fe:01:00:bc:03:00 10.103.0.1/16 fdbc:3::fc01:ff:febc:300/64 router-r1:r1-lan1--lan-lan1 lan-lan2 lan2 10.102.0.0/16 fdbc:2::/64 router-r1:r1-lan2--lan-lan2 lan-lan3 lan3 10.103.0.0/16 fdbc:3::/64 router-r1:r1-lan3--lan-lan3 router-r2 r2 10.255.0.2/32 fd00::2/128 r2-lan2 fe:02:00:bc:02:00 10.102.0.2/16 fdbc:2::fc02:ff:febc:200/64 router-r2:r2-lan2--lan-lan2 router-r3 r3 10.255.0.3/32 fd00::3/128 r3-lan3 fe:03:00:bc:03:00 10.103.0.3/16 fdbc:3::fc03:ff:febc:300/64 router-r3:r3-lan3--lan-lan3