def test_get_all_items(self): """ Test Retrieving all items """ dspace= self.dspace items = Item.get_all(dspace) self.assertGreater(len(items),0)
def search_by_keywords(request): """ Returns an array of items, which match with given keywords """ keywords = request.query_params['q'].split() items = Item.search_by_keywords(dspace,keywords) return Response(items,status=status.HTTP_200_OK)
def test_get_item_metadata(self): """ Test Retrieving an item by Id """ dspace= self.dspace test_id = 5 metadata = Item.get_item_metadata(dspace,test_id) self.assertGreater(len(metadata),0)
def test_get_item_with_metadata(self): """ Test Retrieving an item by Id """ dspace= self.dspace test_id = 5 item = Item.get_item(dspace,test_id,expand=["metadata"]) self.assertIsNotNone(item.metadata,"Item metadata not retrieved")
def test_get_item(self): """ Test Retrieving an item by Id """ dspace = self.dspace test_id = 5 item = Item.get_item(dspace,test_id) self.assertEqual(item.id,test_id,"Get item by Id Fails")
def test_get_all_items_with_limit(self): """ Test Retrieving all items with limit """ dspace= self.dspace max_items = 5 items = Item.get_all(dspace,limit=[max_items]) self.assertLessEqual(len(items),max_items)
def test_search_by_keywords(self): """ Test searching by keywords """ dspace = self.dspace keywords = ["anatomia","prueba"] items = Item.search_by_keywords(dspace,keywords) self.assertIsNotNone(items) self.assertGreaterEqual(len(items),2)
def test_find_by_metadata_field(self): """ Test searching items by metadata field """ #test using known item and field #TODO test with dynamic items and metadata fields dspace = self.dspace language ="en_US" field = "lom.general.keyword" value = "anatomia" items = Item.find_by_metadata_field(dspace,field,value,language) self.assertIsNotNone(items) self.assertGreater(len(items),0)
def get(self, request,*args,**kwargs): items = Item.get_all(self.dspace,**dict(self.request.query_params)) return Response(items, status=status.HTTP_200_OK)
def get_last_items(request): """ Return an array of items, sorted desc by date modified """ items = Item.get_lastest(dspace,**dict(request.query_params)) return Response(items, status=status.HTTP_200_OK)
def get_object(self, id,**kwargs): try: item = Item.get_item(dspace,id,**dict(kwargs)) return item except Item.DoesNotExist: raise Http404