From: <yo...@us...> - 2009-11-17 21:03:45
|
Revision: 276 http://treebase.svn.sourceforge.net/treebase/?rev=276&view=rev Author: youjun Date: 2009-11-17 21:03:35 +0000 (Tue, 17 Nov 2009) Log Message: ----------- add a test(handleTest) on controller Modified Paths: -------------- trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/controller/OAIPMHController.java trunk/oai-pmh_data_provider/data_provider_web/src/test/java/org/treebase/oai/web/controller/OAIPMHControllerTest.java Modified: trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/controller/OAIPMHController.java =================================================================== --- trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/controller/OAIPMHController.java 2009-11-17 16:55:09 UTC (rev 275) +++ trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/controller/OAIPMHController.java 2009-11-17 21:03:35 UTC (rev 276) @@ -107,6 +107,8 @@ model.put("error", "invalid verb"); return new ModelAndView("error.vm",model); }catch(NullPointerException e){ + model.put("error_code", "badVerb"); + model.put("error", "missing verb"); return (new ModelAndView("error.vm",model)); } @@ -114,7 +116,7 @@ } - ModelAndView ListRecords(OAIPMHCommand params, Map model){ + public ModelAndView ListRecords(OAIPMHCommand params, Map model){ List<Submission> list=null; try { @@ -131,7 +133,7 @@ } - ModelAndView ListIdentifiers( OAIPMHCommand params, Map model){ + public ModelAndView ListIdentifiers( OAIPMHCommand params, Map model){ List<Submission> list=null; try { @@ -147,7 +149,7 @@ } - ModelAndView GetRecord( OAIPMHCommand params, Map model){ + public ModelAndView GetRecord( OAIPMHCommand params, Map model){ Submission submission = null; @@ -172,21 +174,21 @@ } - ModelAndView Identify(OAIPMHCommand params, Map model){ + public ModelAndView Identify(OAIPMHCommand params, Map model){ return (new ModelAndView("Identify.vm",model)); } - ModelAndView ListSets(OAIPMHCommand params, Map model){ + public ModelAndView ListSets(OAIPMHCommand params, Map model){ model.put("error_code", "noSetHierarchy"); model.put("error", "This repository does not support sets"); return (new ModelAndView("error.vm",model)); } - ModelAndView ListMetadataFormats(OAIPMHCommand params, Map model){ + public ModelAndView ListMetadataFormats(OAIPMHCommand params, Map model){ Submission submission = null; Modified: trunk/oai-pmh_data_provider/data_provider_web/src/test/java/org/treebase/oai/web/controller/OAIPMHControllerTest.java =================================================================== --- trunk/oai-pmh_data_provider/data_provider_web/src/test/java/org/treebase/oai/web/controller/OAIPMHControllerTest.java 2009-11-17 16:55:09 UTC (rev 275) +++ trunk/oai-pmh_data_provider/data_provider_web/src/test/java/org/treebase/oai/web/controller/OAIPMHControllerTest.java 2009-11-17 21:03:35 UTC (rev 276) @@ -1,6 +1,7 @@ package org.treebase.oai.web.controller; import java.io.StringWriter; +import java.lang.reflect.Method; import java.util.HashMap; import java.util.Map; import java.util.Properties; @@ -12,6 +13,7 @@ import org.apache.velocity.exception.ParseErrorException; import org.apache.velocity.exception.ResourceNotFoundException; import org.springframework.test.AbstractTransactionalSpringContextTests; +import org.springframework.validation.BindException; import org.springframework.web.servlet.ModelAndView; import org.treebase.oai.web.command.Identify; import org.treebase.oai.web.command.OAIPMHCommand; @@ -100,12 +102,12 @@ ModelAndView mav=controller.Identify(params, model); String result=vu.runTemplate(mav); this.assertNotNull(result); - System.out.println("--------test Identify---------"); - System.out.print(result); + //System.out.println("--------test Identify---------"); + //System.out.print(result); } - public void testListSet() { + public void testListSets() { OAIPMHCommand params=new OAIPMHCommand(); params.setVerb("ListSets"); @@ -115,8 +117,8 @@ ModelAndView mav=controller.ListSets(params, model); String result=vu.runTemplate(mav); this.assertNotNull(result); - System.out.println("---------test ListSet---------"); - System.out.print(result); + //System.out.println("---------test ListSet---------"); + //System.out.print(result); } @@ -131,8 +133,8 @@ ModelAndView mav=controller.ListMetadataFormats(params, model); String result=vu.runTemplate(mav); this.assertNotNull(result); - System.out.println("---------test ListMetadataFormats---------"); - System.out.print(result); + //System.out.println("---------test ListMetadataFormats---------"); + //System.out.print(result); } @@ -148,12 +150,12 @@ ModelAndView mav=controller.GetRecord(params, model); String result=vu.runTemplate(mav); this.assertNotNull(result); - System.out.println("---------test getRecord---------"); - System.out.print(result); + //System.out.println("---------test getRecord---------"); + //System.out.print(result); } -public void testListRecord() { +public void testListRecords() { OAIPMHCommand params=new OAIPMHCommand(); params.setVerb("ListRecords"); @@ -171,22 +173,74 @@ } -public void testListIdentify() { + public void testListIdentifiers() + { - OAIPMHCommand params=new OAIPMHCommand(); - params.setVerb("ListIdentifiers"); - params.setFrom("2005-11-15T06:16:15Z"); - params.setUntil("2006-05-15T06:16:15Z"); - params.setMetadataPrefix("oai_dc"); - Map model=new HashMap(); - model.put("identify",identify ); - model.put("params", params); - ModelAndView mav=controller.ListIdentifiers(params, model); - String result=vu.runTemplate(mav); - this.assertNotNull(result); - //System.out.println("---------test ListIdentifiers---------"); - //System.out.print(result); + OAIPMHCommand params=new OAIPMHCommand(); + params.setVerb("ListIdentifiers"); + params.setFrom("2005-11-15T06:16:15Z"); + params.setUntil("2006-05-15T06:16:15Z"); + params.setMetadataPrefix("oai_dc"); + Map model=new HashMap(); + model.put("identify",identify ); + model.put("params", params); + ModelAndView mav=controller.ListIdentifiers(params, model); + String result=vu.runTemplate(mav); + this.assertNotNull(result); + //System.out.println("---------test ListIdentifiers---------"); + //System.out.print(result); -} + } + + public void testHandle() throws Exception + { + OAIPMHCommand params=new OAIPMHCommand(); + ModelAndView mav=call(params); + System.out.println(mav.getViewName()+" " + +mav.getModel().get("error_code") + +": "+mav.getModel().get("error")); + this.assertEquals("error.vm", mav.getViewName()); + + params.setVerb("Identify"); + mav=call(params); + this.assertEquals("Identify.vm", mav.getViewName()); + + params.setVerb("ListSets"); + mav=call(params); + System.out.println(mav.getViewName()+" " + +mav.getModel().get("error_code") + +": "+mav.getModel().get("error")); + this.assertEquals("error.vm", mav.getViewName()); + + params.setVerb("ListMetadataFormats"); + mav=call(params); + this.assertEquals("ListMetadataFormats.vm", mav.getViewName()); + + params.setVerb("GetRecord"); + params.setIdentifier("treebase.org/study/TB2:s1225"); + params.setMetadataPrefix("oai_dc"); + mav=call(params); + this.assertEquals("GetRecord.vm", mav.getViewName()); + + params.setVerb("ListIdentifiers"); + params.setFrom("2005-11-15T06:16:15Z"); + params.setUntil("2006-05-15T06:16:15Z"); + mav=call(params); + this.assertEquals("oai_dc_ListIdentifiers.vm", mav.getViewName()); + + params.setVerb("ListRecords"); + params.setFrom("2005-11-15T06:16:15Z"); + params.setUntil("2006-05-15T06:16:15Z"); + mav=call(params); + this.assertEquals("ListRecords.vm", mav.getViewName()); + } + + + + private ModelAndView call(OAIPMHCommand params) throws Exception + { + ModelAndView mav=controller.handle(null, null, params, new BindException(params,"params")); + return mav; + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |