示例#1
0
 def testRetrieveBatch(self):
     request = OaiListRequest(baseurl='http://example.org/oai', verb='ListRecords', metadataPrefix='oai_dc')
     opener = CallTrace('urlopen', returnValues={'urlopen': StringIO(RESPONSE)})
     request._urlopen = opener.urlopen
     batch = request.retrieveBatch()
     self.assertEquals(3, len(batch.items))
     self.assertEquals(['urlopen'], opener.calledMethodNames())
     urlopenMethod = opener.calledMethods[0]
     self.assertEquals((('http://example.org/oai?verb=ListRecords&metadataPrefix=oai_dc',), {}), (urlopenMethod.args, urlopenMethod.kwargs))
示例#2
0
 def testNoRecordsMatch(self):
     request = OaiListRequest(baseurl='http://example.org/oai', verb='ListRecords', metadataPrefix='oai_dc')
     opener = CallTrace('urlopen', returnValues={'urlopen': StringIO(NO_RECORDS_MATCH_RESPONSE)})
     request._urlopen = opener.urlopen
     batch = request.retrieveBatch()
     self.assertEquals(0, len(batch.items))
示例#3
0
 def testNextRequest(self):
     request = OaiListRequest(baseurl='http://example.org/oai', verb='ListRecords', metadataPrefix='oai', set='set')
     self.assertEquals('http://example.org/oai?verb=ListRecords&metadataPrefix=oai&set=set', request.buildUrl())
     request = request._nextRequest('resume_here')
     self.assertEquals('http://example.org/oai?verb=ListRecords&resumptionToken=resume_here', request.buildUrl())