示例#1
0
 def test_eq(self):
     l = lambda: Link('a', example_url, rel=[])
     self.assertEqual(l(), l())
     self.assertNotEqual(l(), Link('img', example_url, rel=[]))
     self.assertNotEqual(l(), Link('a', external_base_url, rel=[]))
     self.assertNotEqual(l(), Link('a', example_url, rel=['icon']))
     self.assertNotEqual(l(), 'hello world')
示例#2
0
 def test_is_internal(self):
     l = Link('a', example_url + '/sub_path', rel=[])
     self.assertTrue(l.is_internal(internal_domain, ''))
     self.assertFalse(l.is_internal(external_domain, ''))
     self.assertTrue(l.is_internal(internal_domain, '//ignored.com'))
     self.assertFalse(l.is_internal(external_domain, '//ignored.com'))
     l = Link('a', '/root/relative', rel=[])
     self.assertTrue(l.is_internal(internal_domain, base_url))
     self.assertFalse(l.is_internal(
         internal_domain, external_base_url))
示例#3
0
 def test_eq(self):
     base1 = 'http://base1'
     base2 = 'http://base2'
     p1 = Page(
         'my_url', base1, [Link('a', 'http://abs.o/lute', rel=[])])
     p2 = Page(
         'my_url', base2, [Link('a', 'http://abs.o/lute', rel=[])])
     self.assertEqual(p1, p2)
     p1 = Page('my_url', base1, [Link('a', '/rel.html', rel=[])])
     p2 = Page('my_url', base2, [Link('a', '/rel.html', rel=[])])
     self.assertNotEqual(p1, p2)
     self.assertNotEqual(p1, 'hello world')
示例#4
0
 def test_url_iter(self):
     s1 = base_url + '/some/doc.html'
     l1 = Link('a', s1, rel=[])
     s2 = external_base_url + '/another/doc.html'
     l2 = Link('a', s2, rel=[])
     s3 = 'relative/link.html'
     l3 = Link('a', s3, rel=[])
     s4 = external_base_url + '/some/image.png'
     l4 = Link('img', s4, rel=[])
     p = Page(example_url, base_url, (l1, l2, l3, l4))
     self.assertEqual(p.resource_urls, {'http:' + s4})
     self.assertEqual(p.internal_urls, {s1, base_url + '/' + s3})
     p = Page(example_url, external_base_url, (l1, l2, l3, l4))
     self.assertEqual(p.resource_urls, {s4})
     self.assertEqual(p.internal_urls, {s1})
示例#5
0
 def test_is_resource(self):
     l = Link('a', example_url, rel=[])
     self.assertFalse(l.is_resource())
     l = Link('link', example_url, rel=['next'])
     self.assertFalse(l.is_resource())
     l = Link('link', example_url, rel=['stylesheet'])
     self.assertTrue(l.is_resource())
     l = Link('link', example_url, rel=['shortcut', 'icon'])
     self.assertTrue(l.is_resource())
     l = Link('img', example_url, rel=[])
     self.assertTrue(l.is_resource())
示例#6
0
 def test_repr(self):
     l = Link('a', example_url, rel=[])
     self.assertIn(example_url, repr(l))
示例#7
0
 def test_str(self):
     l = Link('a', example_url, rel=[])
     self.assertEqual(str(l), example_url)