示例#1
0
文件: test_arp.py 项目: ocni-dtu/maas
 def test__refreshed_binding(self):
     bindings = {}
     ip = IPAddress("192.168.0.1")
     mac = EUI("00:01:02:03:04:05")
     vid = None
     update_bindings_and_get_event(bindings, vid, ip, mac, 0)
     event = update_bindings_and_get_event(bindings, vid, ip, mac,
                                           SEEN_AGAIN_THRESHOLD)
     self.assertThat(
         bindings,
         Equals({(vid, ip): {
                     "mac": mac,
                     "time": SEEN_AGAIN_THRESHOLD
                 }}),
     )
     self.assertThat(
         event,
         Equals(
             dict(
                 event="REFRESHED",
                 ip=str(ip),
                 mac=format_eui(mac),
                 time=SEEN_AGAIN_THRESHOLD,
                 vid=vid,
             )),
     )
示例#2
0
文件: test_arp.py 项目: ocni-dtu/maas
 def test__refreshed_binding_within_threshold_does_not_emit_event(self):
     bindings = {}
     ip = IPAddress("192.168.0.1")
     mac = EUI("00:01:02:03:04:05")
     vid = None
     update_bindings_and_get_event(bindings, vid, ip, mac, 0)
     event = update_bindings_and_get_event(bindings, vid, ip, mac, 1)
     self.assertThat(bindings, Equals({(vid, ip): {"mac": mac, "time": 0}}))
     self.assertIsNone(event)
示例#3
0
 def test__moved_binding(self):
     bindings = {}
     ip = IPAddress("192.168.0.1")
     mac1 = EUI("00:01:02:03:04:05")
     mac2 = EUI("02:03:04:05:06:07")
     vid = None
     update_bindings_and_get_event(
         bindings, vid, ip, mac1, 0)
     event = update_bindings_and_get_event(
         bindings, vid, ip, mac2, 1)
     self.assertThat(bindings, Equals({
         (vid, ip): {"mac": mac2, "time": 1}
     }))
     self.assertThat(event, Equals(dict(
         event="MOVED", ip=str(ip), mac=format_eui(mac2),
         time=1, previous_mac=format_eui(mac1), vid=vid
     )))
示例#4
0
文件: test_arp.py 项目: ocni-dtu/maas
 def test__new_bindings_with_vid(self):
     bindings = {}
     ip = IPAddress("192.168.0.1")
     mac = EUI("00:01:02:03:04:05")
     vid = None
     event = update_bindings_and_get_event(bindings, vid, ip, mac, 0)
     self.assertThat(bindings, Equals({(vid, ip): {"mac": mac, "time": 0}}))
     self.assertThat(
         event,
         Equals(
             dict(
                 event="NEW",
                 ip=str(ip),
                 mac=format_eui(mac),
                 time=0,
                 vid=vid,
             )),
     )
     vid = 4095
     event = update_bindings_and_get_event(bindings, vid, ip, mac, 0)
     self.assertThat(
         bindings,
         Equals({
             (None, ip): {
                 "mac": mac,
                 "time": 0
             },
             (4095, ip): {
                 "mac": mac,
                 "time": 0
             },
         }),
     )
     self.assertThat(
         event,
         Equals(
             dict(
                 event="NEW",
                 ip=str(ip),
                 mac=format_eui(mac),
                 time=0,
                 vid=vid,
             )),
     )