class DecoratorTests(unittest.TestCase): def setUp(self): self.owner = User.objects.create_user(username='******', email='*****@*****.**', password='******') self.publication = Publication(title='Some Publication') self.publication.title = "Some publication" self.publication.owner = self.owner self.publication.save() self.decorator = OaiPmhDecorator() def tearDown(self): User.objects.all().delete() Publication.objects.all().delete() @unittest.skip("Takes too long to run - CiteSeer query") def test_valid_doi(self): self.publication.doi = '10.1.1.119.2204' self.decorator.decorate_publication(self.publication) self.assertNotEqual(self.publication.decorated, None) def test_invalid_doi(self): self.publication.doi = 'wrongdoi' self.assertRaises(InvalidDataException, self.decorator.decorate_publication, self.publication)
def setUp(self): self.owner = User.objects.create_user(username='******', email='*****@*****.**', password='******') self.publication = Publication(title='Some Publication') self.publication.title = "Some publication" self.publication.owner = self.owner self.publication.save() self.decorator = OaiPmhDecorator()
def GET(request, publication_id, meta=None): """Returns the information about the publication. If a publication is in review only an editor or referee of the reviewing group should be allowed to see it.""" try: publication = Publication.objects.get(id=publication_id) if publication.review_status == 3: return PublicationDetail._get_restricted_publication(request, publication) if meta: oai = OaiPmhDecorator() try: publication = oai.decorate_publication(publication) except InvalidDataException, exc: logger.error(exc) response = HttpResponse(exc.message) response.status_code = RestView.BAD_REQUEST_STATUS return response values = {'publication': publication} response = RestView.render_response(request, 'publication', values)