Example usage for org.springframework.mock.web MockHttpServletRequest setParameter

List of usage examples for org.springframework.mock.web MockHttpServletRequest setParameter

Introduction

In this page you can find the example usage for org.springframework.mock.web MockHttpServletRequest setParameter.

Prototype

public void setParameter(String name, String... values) 

Source Link

Document

Set an array of values for the specified HTTP parameter.

Usage

From source file:org.jasig.cas.support.oauth.web.OAuth20RevokeClientPrincipalTokensControllerTests.java

@Test
public void verifyNoTokenAndAuthHeaderIsMalformed() throws Exception {
    final MockHttpServletRequest mockRequest = new MockHttpServletRequest("POST",
            CONTEXT + OAuthConstants.REVOKE_URL);
    mockRequest.addHeader("Authorization", "Let me in i am authorized");
    mockRequest.setParameter(OAuthConstants.CLIENT_ID, CLIENT_ID);
    final MockHttpServletResponse mockResponse = new MockHttpServletResponse();

    final OAuth20WrapperController oauth20WrapperController = new OAuth20WrapperController();
    oauth20WrapperController.afterPropertiesSet();

    final ModelAndView modelAndView = oauth20WrapperController.handleRequest(mockRequest, mockResponse);
    assertNull(modelAndView);// w  w  w.j a  v a2 s . c o m
    assertEquals(HttpStatus.SC_BAD_REQUEST, mockResponse.getStatus());
    assertEquals(CONTENT_TYPE, mockResponse.getContentType());

    final String expected = "{\"error\":\"" + OAuthConstants.INVALID_REQUEST + "\",\"error_description\":\""
            + OAuthConstants.MISSING_ACCESS_TOKEN_DESCRIPTION + "\"}";

    final ObjectMapper mapper = new ObjectMapper();
    final JsonNode expectedObj = mapper.readTree(expected);
    final JsonNode receivedObj = mapper.readTree(mockResponse.getContentAsString());
    assertEquals(expectedObj.get("error").asText(), receivedObj.get("error").asText());
    assertEquals(expectedObj.get("error_description").asText(), receivedObj.get("error_description").asText());
}

From source file:org.jasig.cas.support.oauth.web.OAuth20MetadataPrincipalControllerTests.java

@Test
public void verifyEmptyPrincipalListOK() throws Exception {
    final AccessToken accessToken = mock(AccessToken.class);
    when(accessToken.getId()).thenReturn(AT_ID);

    final List<PrincipalMetadata> principalMetas = Arrays.asList();

    final CentralOAuthService centralOAuthService = mock(CentralOAuthService.class);
    when(centralOAuthService.getToken(AT_ID, AccessToken.class)).thenReturn(accessToken);
    when(centralOAuthService.getPrincipalMetadata(accessToken)).thenReturn(principalMetas);

    final MockHttpServletRequest mockRequest = new MockHttpServletRequest("POST",
            CONTEXT + OAuthConstants.METADATA_URL);
    mockRequest.setParameter(OAuthConstants.ACCESS_TOKEN, AT_ID);
    final MockHttpServletResponse mockResponse = new MockHttpServletResponse();

    final OAuth20WrapperController oauth20WrapperController = new OAuth20WrapperController();
    oauth20WrapperController.setCentralOAuthService(centralOAuthService);
    oauth20WrapperController.afterPropertiesSet();

    final ModelAndView modelAndView = oauth20WrapperController.handleRequest(mockRequest, mockResponse);
    assertNull(modelAndView);/*from  ww w.  jav  a  2s . c om*/
    assertEquals(HttpStatus.SC_OK, mockResponse.getStatus());
    assertEquals(CONTENT_TYPE, mockResponse.getContentType());

    final ObjectMapper mapper = new ObjectMapper();

    final String expected = "{\"data\":[]}";
    final JsonNode expectedObj = mapper.readTree(expected);
    final JsonNode receivedObj = mapper.readTree(mockResponse.getContentAsString());

    final JsonNode expectedData = expectedObj.get("data");
    final JsonNode receivedData = receivedObj.get("data");
    assertEquals(expectedData.size(), receivedData.size());
    assertEquals(0, receivedData.size());
}

From source file:org.openmrs.module.coreapps.htmlformentry.EncounterDiagnosesTagHandlerComponentTest.java

@Test
public void testHandleSubmissionHandlesValidSubmissionEditingForm() throws Exception {
    final DiagnosisMetadata dmd = emrApiProperties.getDiagnosisMetadata();
    final Date date = new Date();

    // first, create an encounter
    final Concept malaria = conceptService.getConcept(11);
    final Patient patient = patientService.getPatient(8);
    final Encounter existingEncounter = new Encounter();
    existingEncounter.setPatient(patient);
    existingEncounter.setEncounterDatetime(date);
    existingEncounter.setLocation(locationService.getLocation(2));
    Obs primaryDiagnosis = dmd/* w  ww . j  a va  2s .c  o m*/
            .buildDiagnosisObsGroup(new Diagnosis(new CodedOrFreeTextAnswer(malaria), Diagnosis.Order.PRIMARY));
    Obs secondaryDiagnosis = dmd.buildDiagnosisObsGroup(
            new Diagnosis(new CodedOrFreeTextAnswer("Unknown disease"), Diagnosis.Order.SECONDARY));
    existingEncounter.addObs(primaryDiagnosis);
    existingEncounter.addObs(secondaryDiagnosis);
    encounterService.saveEncounter(existingEncounter);

    ObjectMapper jackson = new ObjectMapper();
    ArrayNode json = jackson.createArrayNode();
    { // change the existing primary diagnosis from PRESUMED to CONFIRMED
        ObjectNode diagnosisNode = json.addObject();
        diagnosisNode.put("certainty", "CONFIRMED");
        diagnosisNode.put("order", "PRIMARY");
        diagnosisNode.put("diagnosis", CodedOrFreeTextAnswer.CONCEPT_PREFIX + "11");
        diagnosisNode.put("existingObs", primaryDiagnosis.getObsId());
    }
    { // this is a new diagnosis
        ObjectNode diagnosisNode = json.addObject();
        diagnosisNode.put("certainty", "PRESUMED");
        diagnosisNode.put("order", "SECONDARY");
        diagnosisNode.put("diagnosis",
                CodedOrFreeTextAnswer.NON_CODED_PREFIX + "I had spelled it wrong before");
    }
    final String jsonToSubmit = jackson.writeValueAsString(json);

    new RegressionTestHelper() {
        @Override
        public String getXmlDatasetPath() {
            return "";
        }

        @Override
        public String getFormName() {
            return "encounterDiagnosesSimpleForm";
        }

        @Override
        public Map<String, Object> getFormEntrySessionAttributes() {
            Map<String, Object> attributes = new HashMap<String, Object>();
            attributes.put("uiUtils", new TestUiUtils() {
                @Override
                public String includeFragment(String providerName, String fragmentId,
                        Map<String, Object> config) throws PageAction {
                    return "[[ included fragment " + providerName + "." + fragmentId + " here ]]";
                }
            });
            return attributes;
        }

        @Override
        public Patient getPatientToView() throws Exception {
            return patient;
        };

        @Override
        public Encounter getEncounterToEdit() {
            return existingEncounter;
        }

        @Override
        public String[] widgetLabelsForEdit() {
            return new String[] { "Date:", "Location:", "Provider:" };
        }

        @Override
        public void setupEditRequest(MockHttpServletRequest request, Map<String, String> widgets) {
            request.setParameter(widgets.get("Date:"), dateAsString(date));
            request.setParameter(widgets.get("Location:"), "2");
            request.setParameter(widgets.get("Provider:"), "1");
            request.setParameter("encounterDiagnoses", jsonToSubmit);
        };

        @Override
        public void testEditFormHtml(String html) {
            System.out.println(html);
        }

        @Override
        public void testEditedResults(SubmissionResults results) {
            results.assertNoErrors();
            results.assertEncounterEdited();

            List<Obs> diagnoses = new ArrayList<Obs>();
            for (Obs obs : results.getEncounterCreated().getObsAtTopLevel(true)) {
                if (dmd.isDiagnosis(obs)) {
                    diagnoses.add(obs);
                }
            }

            Matcher<Obs> newPrimary = new ObsGroupMatcher().withGroupingConcept(dmd.getDiagnosisSetConcept())
                    .withNonVoidedObs(dmd.getDiagnosisCertaintyConcept(),
                            dmd.getConceptFor(Diagnosis.Certainty.CONFIRMED))
                    .withVoidedObs(dmd.getDiagnosisCertaintyConcept(),
                            dmd.getConceptFor(Diagnosis.Certainty.PRESUMED))
                    .withNonVoidedObs(dmd.getDiagnosisOrderConcept(),
                            dmd.getConceptFor(Diagnosis.Order.PRIMARY))
                    .withNonVoidedObs(dmd.getCodedDiagnosisConcept(), malaria);

            Matcher<Obs> newSecondary = new ObsGroupMatcher().withGroupingConcept(dmd.getDiagnosisSetConcept())
                    .withNonVoidedObs(dmd.getDiagnosisCertaintyConcept(),
                            dmd.getConceptFor(Diagnosis.Certainty.PRESUMED))
                    .withNonVoidedObs(dmd.getDiagnosisOrderConcept(),
                            dmd.getConceptFor(Diagnosis.Order.SECONDARY))
                    .withNonVoidedObs(dmd.getNonCodedDiagnosisConcept(), "I had spelled it wrong before");

            Matcher<Obs> oldSecondary = new ObsGroupMatcher().withGroupingConcept(dmd.getDiagnosisSetConcept())
                    .withVoidedObs(dmd.getDiagnosisCertaintyConcept(),
                            dmd.getConceptFor(Diagnosis.Certainty.PRESUMED))
                    .withVoidedObs(dmd.getDiagnosisOrderConcept(), dmd.getConceptFor(Diagnosis.Order.SECONDARY))
                    .withVoidedObs(dmd.getNonCodedDiagnosisConcept(), "Unknown disease").thatIsVoided();

            assertThat(diagnoses.size(), is(3));
            assertThat(diagnoses, containsInAnyOrder(newPrimary, newSecondary, oldSecondary));
        };
    }.run();
}

From source file:org.openmrs.web.servlet.LoginServletTest.java

/**
 * The lockout value is set to five/*from w  w w .  ja v  a 2  s .c om*/
 * 
 * @throws Exception
 */
@Test
public void shouldLockUserOutAfterFiveFailedLoginAttempts() throws Exception {
    // this test depends on being able to log in as "admin:test".
    Context.logout();
    Context.authenticate("admin", "test");
    Assert.assertTrue(Context.isAuthenticated());

    // do the test now
    LoginServlet loginServlet = new LoginServlet();

    for (int x = 1; x < 4; x++) {
        MockHttpServletRequest request = new MockHttpServletRequest("POST", "/loginServlet");
        request.setContextPath("/somecontextpath");
        MockHttpServletResponse response = new MockHttpServletResponse();

        // change the username everytime so that we're not  
        // accidentally testing against the API lockout
        request.setParameter("uname", "wrong username" + x);
        request.setParameter("pw", "wrong password");

        loginServlet.service(request, response);
    }

    // now attempting to log in the fifth time should fail 
    MockHttpServletRequest request = new MockHttpServletRequest("POST", "/loginServlet");
    request.setContextPath("/somecontextpath");
    MockHttpServletResponse response = new MockHttpServletResponse();
    request.setParameter("uname", "admin");
    request.setParameter("pw", "test");
    loginServlet.service(request, response);

    Assert.assertNotSame("/somecontextpath/login.htm", response.getRedirectedUrl());
}

From source file:com.programmingchronicles.tdd.web.addressbook.TestAddContactController.java

/**
 * Test Http Post: Verifica que se puede aadir un contacto con
 * solo el nombre./*w  w  w. j  a va2  s.c  om*/
 *
 * @throws ServletException
 * @throws IOException
 */
@Test
public void testDoPostOnlyName() throws ServletException, IOException {
    // Fakes de los parametros del doGet y doPost que amplian la interfaz
    // estandar permitiendo verificaciones sencillas por estado.
    //
    // Se utilizan los mocks de Spring Test Utilities.
    MockHttpServletRequest fakeRequest = new MockHttpServletRequest();
    MockHttpServletResponse fakeResponse = new MockHttpServletResponse();

    // El request solo tendr el parametros del nombre
    fakeRequest.setParameter("firstName", "Pedro");

    // Ejecucin del test.
    controller.doPost(fakeRequest, fakeResponse);

    // Verifica que se llama al addContact del mock del addressbook
    ArgumentCaptor<Contact> argument = ArgumentCaptor.forClass(Contact.class);
    verify(mockAddressbook).addContact(argument.capture());

    // En el verify anterior capturamos el argumento con el que se llama
    // a la agenda, y podemos validar que se aade el contacto correcto.
    Contact contact = argument.getValue();
    assertEquals("Pedro", contact.getFirstName());
    assertNull(contact.getSurname());
    assertNull(contact.getBirthday());
    assertNull(contact.getPhone());

    // Verifica que no se ha creado el modelo de errores.
    assertNull(fakeRequest.getAttribute("errors"));

    // Verifica que se llama al redirect del response con el parametro correcto.
    assertEquals("redirectPath", fakeResponse.getRedirectedUrl());
}

From source file:org.jasig.cas.support.oauth.web.OAuth20RevokeClientPrincipalTokensControllerTests.java

@Test
public void verifyOKWithAuthHeader() throws Exception {
    final AccessToken accessToken = mock(AccessToken.class);
    when(accessToken.getId()).thenReturn(AT_ID);

    final CentralOAuthService centralOAuthService = mock(CentralOAuthService.class);
    when(centralOAuthService.getToken(AT_ID, AccessToken.class)).thenReturn(accessToken);
    when(centralOAuthService.revokeClientPrincipalTokens(accessToken, CLIENT_ID)).thenReturn(true);

    final MockHttpServletRequest mockRequest = new MockHttpServletRequest("POST",
            CONTEXT + OAuthConstants.REVOKE_URL);
    mockRequest.addHeader("Authorization", OAuthConstants.BEARER_TOKEN + " " + AT_ID);
    mockRequest.setParameter(OAuthConstants.CLIENT_ID, CLIENT_ID);
    final MockHttpServletResponse mockResponse = new MockHttpServletResponse();

    final OAuth20WrapperController oauth20WrapperController = new OAuth20WrapperController();
    oauth20WrapperController.setCentralOAuthService(centralOAuthService);
    oauth20WrapperController.afterPropertiesSet();

    final ModelAndView modelAndView = oauth20WrapperController.handleRequest(mockRequest, mockResponse);
    assertNull(modelAndView);//from  w w w.  j av a2s  .c  o  m
    assertEquals(HttpStatus.SC_NO_CONTENT, mockResponse.getStatus());
    assertNull(mockResponse.getContentType());
    assertEquals("null", mockResponse.getContentAsString());
}

From source file:alpha.portal.webapp.controller.CardAssignFormControllerTest.java

/**
 * Test show form.//  w w w. j ava2  s. co  m
 */
@Test
public void testShowForm() {
    final MockHttpServletRequest request = this.newGet("/cardassignform");
    request.setRemoteUser("admin");
    request.addParameter("card", "");
    request.addParameter("case", "");

    Model m = new ExtendedModelMap();
    this.form.showForm(request, m);
    Assert.assertFalse(m.containsAttribute("users"));

    request.setParameter("card", "440e4816-e01b-74d4-a716-449955440092");
    m = new ExtendedModelMap();
    this.form.showForm(request, m);
    Assert.assertFalse(m.containsAttribute("users"));

    request.setParameter("case", "atjaerhe");
    m = new ExtendedModelMap();
    this.form.showForm(request, m);
    Assert.assertFalse(m.containsAttribute("users"));

    request.setParameter("case", "550e4713-e22b-11d4-a716-446655440000");
    m = new ExtendedModelMap();
    this.form.showForm(request, m);

    final List<UserExtension> l = new LinkedList<UserExtension>();
    l.add(this.userExtensionManager.get(-5L));
    l.add(this.userExtensionManager.get(-4L));
    l.add(this.userExtensionManager.get(-2L));

    // FIXME the sample-data.xml change concerning the contributorrole
    // values has broken this
    // ModelAndViewAssert.assertModelAttributeValue(new ModelAndView("",
    // m.asMap()), "users", l);
}

From source file:org.openmrs.module.atomfeed.web.AtomFeedDownloadServletTest.java

/**
 * @see {@link AtomFeedDownloadServlet#doGet(HttpServletRequest,HttpServletResponse)}
 *///from   www . j  a  v  a2s . co m
@Test
@Verifies(value = "should exclude entries before the asOfDate value", method = "doGet(HttpServletRequest,HttpServletResponse)")
public void doGet_shouldExcludeEntriesBeforeTheAsOfDateValue() throws Exception {
    //ensures that at least we have an entry to exclude for testing purposes
    AtomFeedUtil.objectCreated(new Encounter());

    AtomFeedDownloadServlet atomFeedDownloadServlet = new AtomFeedDownloadServlet();
    MockHttpServletRequest request = new MockHttpServletRequest("GET", "/atomfeed");

    Thread.sleep(1000);//wait for at least a second since the dateFormat precision is to seconds

    DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
    Date asOfDate = new Date();
    request.setParameter("asOfDate", dateFormat.format(asOfDate));
    MockHttpServletResponse response = new MockHttpServletResponse();

    AtomFeedUtil.objectCreated(new Encounter());
    AtomFeedUtil.objectCreated(new Concept());

    Thread.sleep(2000);//wait for 2 seconds for the feed to get updated      
    atomFeedDownloadServlet.service(request, response);

    //only 2 entries added after the asOfDate should have been returned
    Assert.assertEquals(2, StringUtils.countMatches(response.getContentAsString(), "<entry>"));
}

From source file:org.jasig.cas.support.oauth.web.OAuth20MetadataPrincipalControllerTests.java

@Test
public void verifyOKWithAccessToken() throws Exception {
    final AccessToken accessToken = mock(AccessToken.class);
    when(accessToken.getId()).thenReturn(AT_ID);

    final List<PrincipalMetadata> principalMetas = Arrays.asList(
            new PrincipalMetadata(CLIENT_ID, PRINC_NAME_ONE, PRINC_DESCR_ONE),
            new PrincipalMetadata(CLIENT_ID, PRINC_NAME_TWO, PRINC_DESCR_TWO));

    final CentralOAuthService centralOAuthService = mock(CentralOAuthService.class);
    when(centralOAuthService.getToken(AT_ID, AccessToken.class)).thenReturn(accessToken);
    when(centralOAuthService.getPrincipalMetadata(accessToken)).thenReturn(principalMetas);

    final MockHttpServletRequest mockRequest = new MockHttpServletRequest("POST",
            CONTEXT + OAuthConstants.METADATA_URL);
    mockRequest.setParameter(OAuthConstants.ACCESS_TOKEN, AT_ID);
    final MockHttpServletResponse mockResponse = new MockHttpServletResponse();

    final OAuth20WrapperController oauth20WrapperController = new OAuth20WrapperController();
    oauth20WrapperController.setCentralOAuthService(centralOAuthService);
    oauth20WrapperController.afterPropertiesSet();

    final ModelAndView modelAndView = oauth20WrapperController.handleRequest(mockRequest, mockResponse);
    assertNull(modelAndView);//w w w. j a  v a2s  . com
    assertEquals(HttpStatus.SC_OK, mockResponse.getStatus());
    assertEquals(CONTENT_TYPE, mockResponse.getContentType());

    final ObjectMapper mapper = new ObjectMapper();

    final String expected = "{\"data\":[" + "{\"client_id\":\"" + CLIENT_ID + "\",\"name\":\"" + PRINC_NAME_ONE
            + "\",\"description\":\"" + PRINC_DESCR_ONE + "\",\"scope\":[]}," + "{\"client_id\":\"" + CLIENT_ID
            + "\",\"name\":\"" + PRINC_NAME_TWO + "\",\"description\":\"" + PRINC_DESCR_TWO
            + "\",\"scope\":[]}]}";
    final JsonNode expectedObj = mapper.readTree(expected);
    final JsonNode receivedObj = mapper.readTree(mockResponse.getContentAsString());

    final JsonNode expectedData = expectedObj.get("data");
    final JsonNode receivedData = receivedObj.get("data");
    assertEquals(expectedData.size(), receivedData.size());

    final JsonNode expectedPrincipalOne = expectedData.get(0);
    final JsonNode receivedPrincipalOne = receivedData.get(0);
    assertEquals(expectedPrincipalOne.get("client_id"), receivedPrincipalOne.get("client_id"));
    assertEquals(expectedPrincipalOne.get("name"), receivedPrincipalOne.get("name"));
    assertEquals(expectedPrincipalOne.get("description"), receivedPrincipalOne.get("description"));
    assertEquals(expectedPrincipalOne.get("scope").size(), receivedPrincipalOne.get("scope").size());

    final JsonNode expectedPrincipalTwo = expectedData.get(1);
    final JsonNode receivedPrincipalTwo = receivedData.get(1);
    assertEquals(expectedPrincipalTwo.get("client_id"), receivedPrincipalTwo.get("client_id"));
    assertEquals(expectedPrincipalTwo.get("name"), receivedPrincipalTwo.get("name"));
    assertEquals(expectedPrincipalTwo.get("description"), receivedPrincipalTwo.get("description"));
    assertEquals(expectedPrincipalTwo.get("scope").size(), receivedPrincipalTwo.get("scope").size());
}

From source file:nl.surfnet.coin.teams.control.AddMemberControllerTest.java

@Test
public void testStartHappyFlow() throws Exception {
    MockHttpServletRequest request = getRequest();
    Team team1 = getTeam1();//from   w w w  . j  av  a  2  s  .co m
    Person person = getPerson1();

    // request team
    request.setParameter("team", team1.getId());

    autoWireMock(addMemberController, messageSource, MessageSource.class);
    autoWireMock(addMemberController, new Returns(Locale.ENGLISH), LocaleResolver.class);

    ControllerUtil controllerUtil = mock(ControllerUtil.class);
    when(controllerUtil.getTeam(request)).thenReturn(team1);
    when(controllerUtil.hasUserAdministrativePrivileges(person, team1.getId())).thenReturn(true);

    autoWireMock(addMemberController, controllerUtil, ControllerUtil.class);
    autoWireRemainingResources(addMemberController);

    addMemberController.start(getModelMap(), request);

    Team team = (Team) getModelMap().get("team");

    assertEquals(team1.getId(), team.getId());
    assertEquals(team1.getName(), team.getName());
    assertEquals(team1.getDescription(), team.getDescription());
}