def test_full_tags(self): self.sites = [{ 'domain': 'tantek.com', }, { 'domain': 'x.indiewebify.me', 'endpoints': { 'webmention': 'http://webmention.io/foo', 'micropub': '', }, }, { 'domain': 'y.withknown.com', 'endpoints': { 'micropub': 'https://y.withknown.com/micropub', }, 'rel_mes': ['x', 'y'], }] got = list(make_web.make_full(self.sites, self.links)) self.assertEqual( ['bridgy', 'elder', 'founder', 'IRC', 'IWS2017', 'webmention.io'], got[0]['tags']) self.assertEqual(['community', 'tool', 'webmention'], got[1]['tags']) self.assertEqual(['relme', 'micropub'], got[2]['tags']) self.assertEqual({'webmention': ['http://webmention.io/foo']}, got[1]['endpoints'])
def test_full_waterpigs_webmention_endpoint(self): self.sites[0] = { 'domain': 'waterpigs.co.uk', 'endpoints': { 'webmention': 'https://waterpigs.co.uk/mentions/webmention/?wmtoken=abc...https://waterpigs.co.uk/mentions/webmention/?wmtoken=xyz...', }, } self.assertEqual( { 'webmention': ['https://waterpigs.co.uk/mentions/webmention/'], }, list(make_web.make_full(self.sites, self.links))[0]['endpoints'])
def test_full_fetch_crawl_times(self): self.sites[0]['fetch_time'] = '2017-05-19T23:54:47.067044' self.sites[1].update({ 'crawl_start': '1493134946', 'crawl_end': '1493138613', }) got = list(make_web.make_full(self.sites, self.links)) self.assertEqual('2017-05-19T23:54:47.067044', got[0]['crawl_start']) self.assertEqual('2017-05-19T23:54:47.067044', got[0]['crawl_end']) self.assertNotIn('fetch_time', got[0]) self.assertEqual('2017-04-25T15:42:26', got[1]['crawl_start']) self.assertEqual('2017-04-25T16:43:33', got[1]['crawl_end'])
def test_full_server(self): self.sites[0]['servers'] = ['apache', 'nginx'] self.sites[1].update({ 'servers': ['apache'], 'rel_generators': ['Known https://withknown.com'], 'meta_generators': ['Known http://withknown.com'], }) self.sites.append({ 'domain': 'biff', 'meta_generators': ['WordPress'], }) got = list(make_web.make_full(self.sites, self.links)) self.assertEqual(['apache', 'nginx'], got[0]['servers']) self.assertEqual([], got[0]['tags']) self.assertNotIn('rel_generators', got[1]) self.assertNotIn('meta_generators', got[1]) self.assertEqual(['apache', 'Known'], got[1]['servers']) self.assertEqual(['Known'], got[1]['tags']) self.assertNotIn('meta_generators', got[1]) self.assertEqual(['WordPress'], got[2]['servers']) self.assertEqual(['WordPress'], got[2]['tags'])
def test_json_encode_decimal_0(self): encoded = json.dumps(list(make_web.make_full(self.sites, self.links))) self.assertIn('"score": 0}', encoded) self.assertNotIn('"score": 0E+', encoded)
def test_full(self): got = list(make_web.make_full(self.sites, self.links, EXTRA_1, EXTRA_2)) for expected, actual in itertools.zip_longest(FULL, got): self.assertEqual(expected, actual)