コード例 #1
0
ファイル: test_discovery.py プロジェクト: th3architect/maas
 def test_get(self):
     user = factory.make_User()
     handler = DiscoveryHandler(user, {}, None)
     discovery = factory.make_Discovery()
     self.assertEqual(
         self.dehydrate_discovery(discovery),
         handler.get({"discovery_id": discovery.discovery_id}),
     )
コード例 #2
0
ファイル: test_discovery.py プロジェクト: th3architect/maas
 def test_raises_if_missing_mac(self):
     user = factory.make_User()
     handler = DiscoveryHandler(user, {}, None)
     disco = factory.make_Discovery()
     num_discoveries = Discovery.objects.count()
     self.assertThat(num_discoveries, Equals(1))
     with ExpectedException(HandlerPermissionError):
         handler.delete_by_mac_and_ip(dict(ip=disco.ip))
コード例 #3
0
ファイル: test_discovery.py プロジェクト: th3architect/maas
 def test_raises_if_not_admin(self):
     user = factory.make_User()
     handler = DiscoveryHandler(user, {}, None)
     factory.make_Discovery()
     num_discoveries = Discovery.objects.count()
     self.assertThat(num_discoveries, Equals(1))
     with ExpectedException(HandlerPermissionError):
         handler.clear()
コード例 #4
0
ファイル: test_discovery.py プロジェクト: th3architect/maas
 def test_clears_all_by_default(self):
     user = factory.make_admin()
     handler = DiscoveryHandler(user, {}, None)
     factory.make_Discovery()
     num_discoveries = Discovery.objects.count()
     self.assertThat(num_discoveries, Equals(1))
     handler.clear()
     num_discoveries = Discovery.objects.count()
     self.assertThat(num_discoveries, Equals(0))
コード例 #5
0
 def test_list(self):
     user = factory.make_User()
     handler = DiscoveryHandler(user, {}, None)
     factory.make_Discovery()
     factory.make_Discovery()
     expected_discoveries = [
         self.dehydrate_discovery(discovery, for_list=True)
         for discovery in Discovery.objects.all()
     ]
     self.assertItemsEqual(expected_discoveries, handler.list({}))
コード例 #6
0
ファイル: test_discovery.py プロジェクト: th3architect/maas
 def test_deletes_discovery_and_returns_number_deleted(self):
     user = factory.make_admin()
     handler = DiscoveryHandler(user, {}, None)
     disco = factory.make_Discovery()
     num_discoveries = Discovery.objects.count()
     self.assertThat(num_discoveries, Equals(1))
     result = handler.delete_by_mac_and_ip(
         dict(ip=disco.ip, mac=disco.mac_address))
     num_discoveries = Discovery.objects.count()
     self.assertThat(num_discoveries, Equals(0))
     self.assertThat(result, Equals(1))
コード例 #7
0
ファイル: test_discovery.py プロジェクト: th3architect/maas
 def test_clears_mdns_only_upon_request(self):
     user = factory.make_admin()
     handler = DiscoveryHandler(user, {}, None)
     factory.make_Discovery(hostname="useful-towel")
     num_discoveries = Discovery.objects.count()
     num_mdns = MDNS.objects.count()
     self.assertThat(num_discoveries, Equals(1))
     self.assertThat(num_mdns, Equals(1))
     handler.clear({"mdns": True})
     num_discoveries = Discovery.objects.count()
     num_mdns = MDNS.objects.count()
     self.assertThat(num_discoveries, Equals(1))
     self.assertThat(num_mdns, Equals(0))
コード例 #8
0
 def test_list_orders_by_creation_date(self):
     user = factory.make_User()
     handler = DiscoveryHandler(user, {}, None)
     now = datetime.now()
     d0 = factory.make_Discovery(created=now)
     d4 = factory.make_Discovery(created=(now + timedelta(days=4)))
     d3 = factory.make_Discovery(created=(now + timedelta(days=3)))
     d1 = factory.make_Discovery(created=(now + timedelta(days=1)))
     d2 = factory.make_Discovery(created=(now + timedelta(days=2)))
     # Test for the expected order independent of how the database
     # decided to sort.
     expected_discoveries = [
         self.dehydrate_discovery(discovery, for_list=True)
         for discovery in [d0, d1, d2, d3, d4]
     ]
     self.assertEquals(expected_discoveries, handler.list({}))
コード例 #9
0
 def test_list_starts_after_first_seen(self):
     user = factory.make_User()
     handler = DiscoveryHandler(user, {}, None)
     now = datetime.now()
     factory.make_Discovery(created=now)
     d4 = factory.make_Discovery(created=(now + timedelta(days=4)))
     d3 = factory.make_Discovery(created=(now + timedelta(days=3)))
     factory.make_Discovery(created=(now + timedelta(days=1)))
     factory.make_Discovery(created=(now + timedelta(days=2)))
     first_seen = now + timedelta(days=2)
     first_seen = str(
         time.mktime(first_seen.timetuple()) + first_seen.microsecond / 1e6)
     # Test for the expected order independent of how the database
     # decided to sort.
     expected_discoveries = [
         self.dehydrate_discovery(discovery, for_list=True)
         for discovery in [d3, d4]
     ]
     self.assertEquals(expected_discoveries,
                       handler.list({"start": first_seen}))