Esempio n. 1
0
 def test00_dump_creation(self):
     i=ResourceList()
     i.add( Resource('http://ex.org/a', size=1, path='resync/test/testdata/a') )
     i.add( Resource('http://ex.org/b', size=2, path='resync/test/testdata/b') )
     d=Dump()
     d.check_files(resourcelist=i)
     self.assertEqual(d.total_size, 28)
Esempio n. 2
0
 def test_09_print_subset(self): 
     r1 = Resource(uri='a',lastmod='2001-01-01',size=1234)
     r2 = Resource(uri='b',lastmod='2002-02-02',size=56789)
     r3 = Resource(uri='d',lastmod='2003-03-04',size=444)
     m = ResourceList()
     m.add(r1)
     m.add(r2)
     m.add(r3)
     self.assertEqual( Sitemap().resources_as_xml(m, num_resources=2), "<?xml version='1.0' encoding='UTF-8'?>\n<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\" xmlns:rs=\"http://www.openarchives.org/rs/terms/\"><url><loc>a</loc><lastmod>2001-01-01T00:00:00Z</lastmod><rs:size>1234</rs:size></url><url><loc>b</loc><lastmod>2002-02-02T00:00:00Z</lastmod><rs:size>56789</rs:size></url></urlset>")
Esempio n. 3
0
 def test5_add_iterable(self):
     r1 = Resource(uri='a',size=1)
     r2 = Resource(uri='b',size=2)
     i = ResourceList()
     i.add( [r1,r2] )
     self.assertRaises( ResourceListDupeError, i.add, r1)
     self.assertRaises( ResourceListDupeError, i.add, r2)
     # allow dupes
     r1d = Resource(uri='a',size=10)
     i.add( [r1d] ,replace=True)
     self.assertEqual( len(i), 2 )
     self.assertEqual( i.resources['a'].size, 10 ) 
Esempio n. 4
0
 def test7_iter(self):
     i = ResourceList()
     i.add( Resource('a',timestamp=1) )
     i.add( Resource('b',timestamp=2) )
     i.add( Resource('c',timestamp=3) )
     i.add( Resource('d',timestamp=4) )
     resources=[]
     for r in i:
         resources.append(r)
     self.assertEqual(len(resources), 4)
     self.assertEqual( resources[0].uri, 'a')
     self.assertEqual( resources[3].uri, 'd')
Esempio n. 5
0
 def test4_added(self):
     src = ResourceList()
     src.add( Resource('a',timestamp=1) )
     src.add( Resource('b',timestamp=2) )
     src.add( Resource('c',timestamp=3) )
     src.add( Resource('d',timestamp=4) )
     dst = ResourceList()
     dst.add( Resource('a',timestamp=1) )
     dst.add( Resource('c',timestamp=3) )
     ( same, changed, deleted, added ) = dst.compare(src)
     self.assertEqual( len(same), 2, "2 things unchanged" )
     self.assertEqual( len(changed), 0, "nothing changed" )
     self.assertEqual( len(deleted), 0, "nothing deleted" )
     self.assertEqual( len(added), 2, "b and d added" )
     i = iter(added)
     self.assertEqual( i.next().uri, 'b', "first was b" )
     self.assertEqual( i.next().uri, 'd', "second was d" )
Esempio n. 6
0
 def test6_has_md5(self):
     r1 = Resource(uri='a')
     r2 = Resource(uri='b')
     i = ResourceList()
     self.assertFalse( i.has_md5() )
     i.add(r1)
     i.add(r2)
     self.assertFalse( i.has_md5() )
     r1.md5="aabbcc"
     self.assertTrue( i.has_md5() )
Esempio n. 7
0
 def test5_add_changed_resources(self):
     added = ResourceList()
     added.add( Resource('a',timestamp=1) )
     added.add( Resource('d',timestamp=4))
     self.assertEqual(len(added), 2, "2 things in added resourcelist")
     changes = ChangeList()
     changes.add_changed_resources( added, change='created' )
     self.assertEqual(len(changes), 2, "2 things added")
     i = iter(changes)
     first = i.next()
     self.assertEqual(first.uri, 'a', "changes[0].uri=a")
     self.assertEqual(first.timestamp, 1, "changes[0].timestamp=1")
     self.assertEqual(first.change, 'created') #, "changes[0].change=created")
     second = i.next()
     self.assertEqual(second.timestamp, 4, "changes[1].timestamp=4")
     self.assertEqual(second.change, 'created', "changes[1].change=created")
     # Now add some with updated (one same, one diff)
     updated = ResourceList()
     updated.add( Resource('a',timestamp=5) )
     updated.add( Resource('b',timestamp=6))
     self.assertEqual(len(updated), 2, "2 things in updated resourcelist")
     changes.add_changed_resources( updated, change='updated' )
     self.assertEqual(len(changes), 4, "4 = 2 old + 2 things updated")
     # Make new resourcelist from the changes which should not have dupes
     dst = ResourceList()
     dst.add( changes, replace=True )
     self.assertEqual(len(dst), 3, "3 unique resources")
     self.assertEqual(dst.resources['a'].timestamp, 5 ) # 5 was later in last the 1
     self.assertEqual(dst.resources['a'].change, 'updated')
     self.assertEqual(dst.resources['b'].timestamp, 6)
     self.assertEqual(dst.resources['b'].change, 'updated')
     self.assertEqual(dst.resources['d'].timestamp, 4)
     self.assertEqual(dst.resources['d'].change, 'created')