Advertisement
Guest User

as

a guest
Apr 13th, 2012
40
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.02 KB | None | 0 0
  1. Index: web/src/test/java/org/openmrs/web/controller/person/AddPersonControllerTest.java
  2. ===================================================================
  3. --- web/src/test/java/org/openmrs/web/controller/person/AddPersonControllerTest.java (revision )
  4. +++ web/src/test/java/org/openmrs/web/controller/person/AddPersonControllerTest.java (revision )
  5. @@ -0,0 +1,63 @@
  6. +/**
  7. + * The contents of this file are subject to the OpenMRS Public License
  8. + * Version 1.0 (the "License"); you may not use this file except in
  9. + * compliance with the License. You may obtain a copy of the License at
  10. + * http://license.openmrs.org
  11. + *
  12. + * Software distributed under the License is distributed on an "AS IS"
  13. + * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
  14. + * License for the specific language governing rights and limitations
  15. + * under the License.
  16. + *
  17. + * Copyright (C) OpenMRS, LLC. All Rights Reserved.
  18. + */
  19. +package org.openmrs.web.controller.person;
  20. +
  21. +import javax.servlet.http.HttpServletRequest;
  22. +import javax.servlet.http.HttpServletResponse;
  23. +
  24. +import org.junit.Assert;
  25. +import org.junit.Test;
  26. +import org.openmrs.api.context.Context;
  27. +import org.openmrs.test.Verifies;
  28. +import org.openmrs.web.test.BaseWebContextSensitiveTest;
  29. +import org.springframework.mock.web.MockHttpServletRequest;
  30. +import org.springframework.mock.web.MockHttpServletResponse;
  31. +import org.springframework.validation.BeanPropertyBindingResult;
  32. +import org.springframework.validation.BindException;
  33. +import org.springframework.web.servlet.ModelAndView;
  34. +
  35. +/**
  36. + * Tests for the {@link AddPersonController} which handles the Add Person.form page.
  37. + */
  38. +public class AddPersonControllerTest extends BaseWebContextSensitiveTest {
  39. +
  40. + /**
  41. + * @see {@link AddPersonController#onSubmit(HttpServletRequest,HttpServletResponse,Object,BindException)}
  42. + */
  43. + @Test
  44. + @Verifies(value = "check BirthDate is entered properly", method = "onSubmit(HttpServletRequest,HttpServletResponse,Object,BindException)")
  45. + public void onSubmit_shouldAcceptBirthDateEnteredCorrectly() throws Exception {
  46. +
  47. + MockHttpServletRequest request = new MockHttpServletRequest("POST", "");
  48. +
  49. + request.setParameter("addName", "Gayan Perera");
  50. + request.setParameter("addBirthdate", "03/07/1990");
  51. + request.setParameter("addGender", "Male");
  52. + request.setParameter("personType", "patient");
  53. + request.setParameter("personId", "10");
  54. + request.setParameter("viewType", "edit");
  55. +
  56. + HttpServletResponse response = new MockHttpServletResponse();
  57. +
  58. + AddPersonController controller = (AddPersonController) applicationContext.getBean("addPerson");
  59. + ModelAndView modelAndView = controller.handleRequest(request, response);
  60. +
  61. + Assert.assertNotNull(Context.getPersonService().getPerson(10).getBirthdate().toString());
  62. +
  63. + }
  64. +}
  65. +
  66. +// BeanPropertyBindingResult bindingResult = (BeanPropertyBindingResult) modelAndView.getModel().get(
  67. +// "org.springframework.validation.BindingResult.people");
  68. +// Assert.assertTrue(bindingResult.hasFieldErrors());
  69. Index: web/src/main/java/org/openmrs/web/controller/person/AddPersonController.java
  70. ===================================================================
  71. --- web/src/main/java/org/openmrs/web/controller/person/AddPersonController.java (revision 23039)
  72. +++ web/src/main/java/org/openmrs/web/controller/person/AddPersonController.java (revision )
  73. @@ -20,6 +20,8 @@
  74. import java.util.List;
  75. import java.util.Vector;
  76.  
  77. +import java.text.ParseException;
  78. +
  79. import javax.servlet.ServletException;
  80. import javax.servlet.http.HttpServletRequest;
  81. import javax.servlet.http.HttpServletResponse;
  82. @@ -137,19 +139,29 @@
  83. log.debug("name: " + name + " birthdate: " + birthdate + " age: " + age + " gender: " + gender);
  84.  
  85. if (!name.equals("") || !birthdate.equals("") || !age.equals("") || !gender.equals("")) {
  86. -
  87. +
  88. log.info(userId + "|" + name + "|" + birthdate + "|" + age + "|" + gender);
  89.  
  90. - Integer d = null;
  91. + Integer d = new Integer(0);
  92. birthdate = birthdate.trim();
  93. -
  94. - String birthyear = "";
  95. - if (birthdate.length() > 6)
  96. - birthyear = birthdate.substring(6); //parse out the year. assuming XX-XX-XXXX
  97. -
  98. age = age.trim();
  99. + int birthyear = -1;
  100.  
  101. - if (birthyear.length() > 3)
  102. + try {
  103. + //Do these stuff (only-if) there's some value already assigned for birthdate.
  104. + if (birthdate.length() > 0) {
  105. + Date birthdateFormatted = (Date) Context.getDateFormat().parse(birthdate);
  106. + Calendar calender = Calendar.getInstance();
  107. + calender.setTime(birthdateFormatted);
  108. + birthyear = calender.get(Calendar.YEAR);
  109. + }
  110. + }
  111. + catch (ParseException e) {
  112. + log.debug("Parse exception occurred : " + e);
  113. + }
  114. +
  115. + // -1 means the birth-year has not defined.
  116. + if (birthyear != -1)
  117. d = Integer.valueOf(birthyear);
  118. else if (age.length() > 0) {
  119. Calendar c = Calendar.getInstance();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement