Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Index: web/src/test/java/org/openmrs/web/controller/person/AddPersonControllerTest.java
- ===================================================================
- --- web/src/test/java/org/openmrs/web/controller/person/AddPersonControllerTest.java (revision )
- +++ web/src/test/java/org/openmrs/web/controller/person/AddPersonControllerTest.java (revision )
- @@ -0,0 +1,63 @@
- +/**
- + * The contents of this file are subject to the OpenMRS Public License
- + * Version 1.0 (the "License"); you may not use this file except in
- + * compliance with the License. You may obtain a copy of the License at
- + * http://license.openmrs.org
- + *
- + * Software distributed under the License is distributed on an "AS IS"
- + * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
- + * License for the specific language governing rights and limitations
- + * under the License.
- + *
- + * Copyright (C) OpenMRS, LLC. All Rights Reserved.
- + */
- +package org.openmrs.web.controller.person;
- +
- +import javax.servlet.http.HttpServletRequest;
- +import javax.servlet.http.HttpServletResponse;
- +
- +import org.junit.Assert;
- +import org.junit.Test;
- +import org.openmrs.api.context.Context;
- +import org.openmrs.test.Verifies;
- +import org.openmrs.web.test.BaseWebContextSensitiveTest;
- +import org.springframework.mock.web.MockHttpServletRequest;
- +import org.springframework.mock.web.MockHttpServletResponse;
- +import org.springframework.validation.BeanPropertyBindingResult;
- +import org.springframework.validation.BindException;
- +import org.springframework.web.servlet.ModelAndView;
- +
- +/**
- + * Tests for the {@link AddPersonController} which handles the Add Person.form page.
- + */
- +public class AddPersonControllerTest extends BaseWebContextSensitiveTest {
- +
- + /**
- + * @see {@link AddPersonController#onSubmit(HttpServletRequest,HttpServletResponse,Object,BindException)}
- + */
- + @Test
- + @Verifies(value = "check BirthDate is entered properly", method = "onSubmit(HttpServletRequest,HttpServletResponse,Object,BindException)")
- + public void onSubmit_shouldAcceptBirthDateEnteredCorrectly() throws Exception {
- +
- + MockHttpServletRequest request = new MockHttpServletRequest("POST", "");
- +
- + request.setParameter("addName", "Gayan Perera");
- + request.setParameter("addBirthdate", "03/07/1990");
- + request.setParameter("addGender", "Male");
- + request.setParameter("personType", "patient");
- + request.setParameter("personId", "10");
- + request.setParameter("viewType", "edit");
- +
- + HttpServletResponse response = new MockHttpServletResponse();
- +
- + AddPersonController controller = (AddPersonController) applicationContext.getBean("addPerson");
- + ModelAndView modelAndView = controller.handleRequest(request, response);
- +
- + Assert.assertNotNull(Context.getPersonService().getPerson(10).getBirthdate().toString());
- +
- + }
- +}
- +
- +// BeanPropertyBindingResult bindingResult = (BeanPropertyBindingResult) modelAndView.getModel().get(
- +// "org.springframework.validation.BindingResult.people");
- +// Assert.assertTrue(bindingResult.hasFieldErrors());
- Index: web/src/main/java/org/openmrs/web/controller/person/AddPersonController.java
- ===================================================================
- --- web/src/main/java/org/openmrs/web/controller/person/AddPersonController.java (revision 23039)
- +++ web/src/main/java/org/openmrs/web/controller/person/AddPersonController.java (revision )
- @@ -20,6 +20,8 @@
- import java.util.List;
- import java.util.Vector;
- +import java.text.ParseException;
- +
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- @@ -137,19 +139,29 @@
- log.debug("name: " + name + " birthdate: " + birthdate + " age: " + age + " gender: " + gender);
- if (!name.equals("") || !birthdate.equals("") || !age.equals("") || !gender.equals("")) {
- -
- +
- log.info(userId + "|" + name + "|" + birthdate + "|" + age + "|" + gender);
- - Integer d = null;
- + Integer d = new Integer(0);
- birthdate = birthdate.trim();
- -
- - String birthyear = "";
- - if (birthdate.length() > 6)
- - birthyear = birthdate.substring(6); //parse out the year. assuming XX-XX-XXXX
- -
- age = age.trim();
- + int birthyear = -1;
- - if (birthyear.length() > 3)
- + try {
- + //Do these stuff (only-if) there's some value already assigned for birthdate.
- + if (birthdate.length() > 0) {
- + Date birthdateFormatted = (Date) Context.getDateFormat().parse(birthdate);
- + Calendar calender = Calendar.getInstance();
- + calender.setTime(birthdateFormatted);
- + birthyear = calender.get(Calendar.YEAR);
- + }
- + }
- + catch (ParseException e) {
- + log.debug("Parse exception occurred : " + e);
- + }
- +
- + // -1 means the birth-year has not defined.
- + if (birthyear != -1)
- d = Integer.valueOf(birthyear);
- else if (age.length() > 0) {
- Calendar c = Calendar.getInstance();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement