List of usage examples for org.springframework.mock.web MockHttpServletRequest setParameter
public void setParameter(String name, String... values)
From source file:org.openmrs.module.webservices.rest.web.v1_0.controller.openmrs2_0.ProviderController2_0Test.java
@Test public void doGetAll_shouldProcessIncludeAllParameter() throws Exception { {//from ww w. ja v a 2s .c o m // setup MockHttpServletRequest request = newGetRequest(getURI()); // Replay List<?> allProvidersDef = deserialize(handle(request)).get("results"); // Verify: no retired by default for (Object provider : allProvidersDef) { Assert.assertNotSame(true, PropertyUtils.getProperty(provider, "retired")); } } { // Setup MockHttpServletRequest request = newGetRequest(getURI()); request.setParameter("includeAll", "true"); // Replay Object allProviders = (deserialize(handle(request)).get("results")); List<Object> allProvidersUuid = ((List<Map>) allProviders).stream().map(p -> p.get("uuid")) .collect(Collectors.toList()); // Verify: 'includeAll=true' same as Java API Assert.assertArrayEquals(Context.getProviderService().getAllProviders(true).stream() .map(BaseOpenmrsObject::getUuid).toArray(), allProvidersUuid.toArray()); } { // Setup MockHttpServletRequest request = newGetRequest(getURI()); request.setParameter("includeAll", "false"); // Replay Object allNonRetired = (deserialize(handle(request)).get("results")); List<Object> allNonRetiredUuid = ((List<Map>) allNonRetired).stream().map(p -> p.get("uuid")) .collect(Collectors.toList()); // Verify: 'includeAll=false' same as Java API Assert.assertArrayEquals(Context.getProviderService().getAllProviders(false).stream() .map(BaseOpenmrsObject::getUuid).toArray(), allNonRetiredUuid.toArray()); } }
From source file:org.openmrs.module.webservices.rest.web.v1_0.controller.openmrs2_0.ProviderController2_0Test.java
@Test public void doSearch_shouldProcessIncludeAll() throws Exception { String providerName = "test"; {// w w w . j a v a2s .c o m // Setup MockHttpServletRequest request = newGetRequest(getURI()); request.setParameter("q", providerName); // Replay List<?> allProvidersDef = deserialize(handle(request)).get("results"); List<Object> allUuidDef = ((List<Map>) allProvidersDef).stream().map(p -> p.get("uuid")) .collect(Collectors.toList()); // Verify: no retired by default Assert.assertArrayEquals( Context.getProviderService().getProviders(providerName, null, null, null, false).stream() .map(BaseOpenmrsObject::getUuid).toArray(), allUuidDef.toArray()); } { // Setup MockHttpServletRequest request = newGetRequest(getURI()); request.setParameter("q", providerName); request.setParameter("includeAll", "false"); // Replay List<?> allNonRetired = deserialize(handle(request)).get("results"); List<Object> nonRetiredUuids = ((List<Map>) allNonRetired).stream().map(p -> p.get("uuid")) .collect(Collectors.toList()); // Verify: 'includeAll=false' same as Java API Assert.assertArrayEquals( Context.getProviderService().getProviders(providerName, null, null, null, false).stream() .map(BaseOpenmrsObject::getUuid).toArray(), nonRetiredUuids.toArray()); } { // Setup MockHttpServletRequest request = newGetRequest(getURI()); request.setParameter("q", providerName); request.setParameter("includeAll", "true"); // Replay List<?> allProviders = deserialize(handle(request)).get("results"); List<Object> allUuids = ((List<Map>) allProviders).stream().map(p -> p.get("uuid")) .collect(Collectors.toList()); // Verify: 'includeAll=true' same as Java API Assert.assertArrayEquals(Context.getProviderService().getProviders(providerName, null, null, null, true) .stream().map(BaseOpenmrsObject::getUuid).toArray(), allUuids.toArray()); } }
From source file:org.openmrs.module.webservices.rest.web.v1_0.resource.openmrs2_1.CohortMembershipResource2_1WebTest.java
@Test public void shouldPurge() throws Exception { MockHttpServletRequest request = newDeleteRequest(getURI() + "/" + getUuid()); request.setParameter("purge", "true"); handle(request);//from w w w .j av a 2 s. c om assertNull(cohortService.getCohortMembershipByUuid(RestTestConstants2_1.COHORT_MEMBERSHIP_UUID)); }
From source file:org.oscarehr.casemgmt.web.CaseManagementEntryAction.java
public ActionForward runMacro(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { CaseManagementEntryFormBean cform = (CaseManagementEntryFormBean) form; MacroDao macroDao = (MacroDao) SpringUtils.getBean("macroDao"); Macro macro = macroDao.find(ConversionUtils.fromIntString(request.getParameter("macro.id"))); logger.info("loaded macro " + macro.getLabel()); boolean cppFromMeasurements = false; String cpp = request.getParameter("cpp"); if (cpp != null && cpp.equals("measurements")) { cppFromMeasurements = true;//from ww w. ja v a2 s . com } cform.setCaseNote_note(cform.getCaseNote_note() + "\n" + macro.getImpression()); ActionForward fwd = saveAndExit(mapping, form, request, response); if (fwd.getName().equals("windowClose")) { EyeFormDao eyeformDao = (EyeFormDao) SpringUtils.getBean("EyeFormDao"); EyeForm eyeform = eyeformDao .getByAppointmentNo(ConversionUtils.fromIntString(cform.getAppointmentNo())); // load up the eyeform to set/unset checkboxes if (macro.getDischargeFlag() != null && macro.getDischargeFlag().equals("dischargeFlag")) { eyeform.setDischarge("true"); } if (macro.getOptFlag() != null && macro.getOptFlag().equals("optFlag")) { eyeform.setOpt("true"); } if (macro.getStatFlag() != null && macro.getStatFlag().equals("statFlag")) { eyeform.setStat("true"); } eyeformDao.merge(eyeform); // follow ups FollowUpDao followUpDao = (FollowUpDao) SpringUtils.getBean("FollowUpDAO"); int followUpNo = macro.getFollowupNo(); String followUpUnit = macro.getFollowupUnit(); String followUpDr = macro.getFollowupDoctorId(); if (followUpNo > 0) { EyeformFollowUp f = new EyeformFollowUp(); f.setAppointmentNo(ConversionUtils.fromIntString(cform.getAppointmentNo())); f.setDate(new Date()); f.setDemographicNo(ConversionUtils.fromIntString(cform.getDemographicNo())); f.setProvider(LoggedInInfo.loggedInInfo.get().loggedInProvider); f.setTimeframe(followUpUnit); f.setTimespan(followUpNo); f.setType("followup"); f.setUrgency("routine"); f.setFollowupProvider(followUpDr); followUpDao.persist(f); } // tests TestBookRecordDao testDao = (TestBookRecordDao) SpringUtils.getBean("TestBookDAO"); String[] tests = macro.getTestRecords().split("\n"); for (String test : tests) { String[] parts = test.trim().split("\\|"); if (parts.length == 3 || parts.length == 4) { EyeformTestBook rec = new EyeformTestBook(); rec.setAppointmentNo(ConversionUtils.fromIntString(cform.getAppointmentNo())); if (parts.length == 4) rec.setComment(parts[3]); else rec.setComment(""); rec.setDate(new Date()); rec.setDemographicNo(ConversionUtils.fromIntString(cform.getDemographicNo())); rec.setEye(parts[1]); rec.setProvider(LoggedInInfo.loggedInInfo.get().loggedInProvider.getProviderNo()); // rec.setStatus(null); rec.setTestname(parts[0]); rec.setUrgency(parts[2]); testDao.save(rec); } } // send tickler if (macro.getTicklerRecipient() != null && macro.getTicklerRecipient().length() > 0) { TicklerDAO ticklerDao = (TicklerDAO) SpringUtils.getBean("ticklerDAOT"); Tickler t = new Tickler(); t.setCreator(LoggedInInfo.loggedInInfo.get().loggedInProvider.getProviderNo()); t.setDemographic_no(cform.getDemographicNo()); t.setMessage(getMacroTicklerText(ConversionUtils.fromIntString(cform.getAppointmentNo()))); t.setPriority("Normal"); t.setService_date(new Date()); t.setStatus('A'); t.setTask_assigned_to(macro.getTicklerRecipient()); t.setUpdate_date(new Date()); ticklerDao.saveTickler(t); } // billing if (macro.getBillingCodes() != null && macro.getBillingCodes().length() > 0) { GstControlDao gstControlDao = (GstControlDao) SpringUtils.getBean("gstControlDao"); BillingServiceDao billingServiceDao = (BillingServiceDao) SpringUtils.getBean("billingServiceDao"); DemographicDao demographicDao = (DemographicDao) SpringUtils.getBean("demographicDao"); Provider provider = LoggedInInfo.loggedInInfo.get().loggedInProvider; OscarAppointmentDao apptDao = (OscarAppointmentDao) SpringUtils.getBean("oscarAppointmentDao"); Appointment appt = null; if (cform.getAppointmentNo() != null && cform.getAppointmentNo().length() > 0 && !cform.getAppointmentDate().equals("0")) { appt = apptDao.find(ConversionUtils.fromIntString(cform.getAppointmentNo())); } SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd"); String serviceDate = sf.format(new Date()); // create a mock httprequest to fill in the preset values MockHttpServletRequest mockReq = new MockHttpServletRequest(); mockReq.addParameter("dxCode", macro.getBillingDxcode()); String[] bcodes = macro.getBillingCodes().replace("\r", "").split("\n"); BigDecimal btotal = new BigDecimal(0); // must use 100.0 otherwise result will be an int BigDecimal gstFactor = new BigDecimal(1 + gstControlDao.find(1).getGstPercent().intValue() / 100.0); ArrayList<String[]> percentUnits = new ArrayList<String[]>(); for (int i = 0; i < bcodes.length; i++) { if (StringUtils.isBlank(bcodes[i])) continue; String[] codes = bcodes[i].split("\\|"); mockReq.addParameter("xserviceCode_" + i, codes[0]); Object[] priceg = billingServiceDao.getUnitPrice(codes[0], serviceDate); mockReq.addParameter("xserviceUnit_" + i, codes[1]); String sliCode = OscarProperties.getInstance().getProperty("clinic_no"); if (codes.length == 3 && !codes[2].equals("NA")) { sliCode = codes[2]; } mockReq.addParameter("xsliCode_" + i, sliCode); if (".00".equals(priceg[0])) { percentUnits.add(codes); mockReq.addParameter("percCodeSubtotal_" + i, (String) priceg[0]); // skip to next as we deal with percentage later continue; } // price is unit_price*unit*at_percent, but in macro we only assume at_percent=1 // as it's not possible to enter percent value for macros (1-click action). BigDecimal price = new BigDecimal((String) priceg[0]).multiply(new BigDecimal(codes[1])); if ((Boolean) priceg[1] == true) { // add GST price = price.multiply(gstFactor); } mockReq.addParameter("percCodeSubtotal_" + i, price.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); btotal = btotal.add(price).setScale(4, BigDecimal.ROUND_HALF_UP); } // now process percent codes BigDecimal stotal = new BigDecimal(0); for (String[] code : percentUnits) { String pct = billingServiceDao.getUnitPercentage(code[0], serviceDate); stotal = stotal.add(btotal.multiply(new BigDecimal(pct))); } btotal = btotal.add(stotal); mockReq.addParameter("totalItem", "" + bcodes.length); mockReq.addParameter("total", btotal.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); Demographic demo = demographicDao .getClientByDemographicNo(ConversionUtils.fromIntString(cform.getDemographicNo())); mockReq.setParameter("xml_billtype", macro.getBillingBilltype()); if (macro.getSliCode() == null || macro.getSliCode().equals("NA")) { String value = OscarProperties.getInstance().getProperty("clinic_no", ""); mockReq.setParameter("xml_slicode", value); } else { mockReq.setParameter("xml_slicode", macro.getSliCode()); } // mockReq.addParameter("xml_billtype", "ODP | Bill OHIP"); mockReq.addParameter("hin", demo.getHin()); mockReq.addParameter("ver", demo.getVer()); mockReq.addParameter("demographic_dob", demo.getDateOfBirth()); mockReq.addParameter("appointment_no", cform.getAppointmentNo()); mockReq.addParameter("demographic_name", demo.getLastName() + "," + demo.getFirstName()); mockReq.addParameter("sex", "F".equalsIgnoreCase(demo.getSex()) ? "2" : "1"); mockReq.addParameter("hc_type", demo.getHcType()); String referalNo = getRefNo(demo.getFamilyDoctor()); mockReq.addParameter("referralCode", referalNo); mockReq.addParameter("xml_location", macro.getBillingVisitLocation()); // visit location mockReq.addParameter("m_review", "N"); // manual review, always No // as it's automated mockReq.addParameter("clinic_no", oscar.OscarProperties.getInstance().getProperty("clinic_no", "").trim()); // clinic_location mockReq.addParameter("demographic_no", cform.getDemographicNo()); mockReq.addParameter("service_date", serviceDate); SimpleDateFormat tf = new SimpleDateFormat("HH:mm"); mockReq.addParameter("start_time", tf.format(new Date())); mockReq.addParameter("submit", "Save"); mockReq.addParameter("comment", macro.getBillingComment()); mockReq.addParameter("xml_visittype", macro.getBillingVisitType()); //mockReq.addParameter("xml_vdate", cform.getAppointmentDate()); //No admission date in Macro, so give it default NULL instead of appt date. mockReq.addParameter("xml_vdate", ""); mockReq.addParameter("apptProvider_no", appt == null ? "" : appt.getProviderNo()); if (StringUtils.isBlank(macro.getBillingBillto())) { mockReq.addParameter("xml_provider", provider.getProviderNo() + "|" + provider.getOhipNo()); } else { ProviderDao providerDao = (ProviderDao) SpringUtils.getBean("providerDao"); Provider providerBilling = providerDao.getProvider(macro.getBillingBillto()); mockReq.addParameter("xml_provider", providerBilling.getProviderNo() + "|" + providerBilling.getOhipNo()); } mockReq.getSession().setAttribute("user", LoggedInInfo.loggedInInfo.get().loggedInProvider.getProviderNo()); BillingSavePrep bObj = new BillingSavePrep(); boolean ret = bObj.addABillingRecord(bObj.getBillingClaimObj(mockReq)); /* * not applicable in macro context if (mockReq.getParameter("xml_billtype").substring(0, 3).matches( BillingDataHlp.BILLINGMATCHSTRING_3RDPARTY)) { mockReq.addParameter("billto", macro.getBillingBillto()); mockReq.addParameter("remitto", * macro.getBillingRemitto()); mockReq.addParameter("gstBilledTotal", macro .getBillingGstBilledTotal()); mockReq.addParameter("payment", macro.getBillingPayment()); mockReq.addParameter("refund", macro.getBillingRefund()); * mockReq.addParameter("gst", macro.getBillingGst()); mockReq.addParameter("payMethod", macro.getBillingPayMethod()); * * bObj.addPrivateBillExtRecord(mockReq); } */ // int billingNo = bObj.getBillingId(); // update appt and close the page if (ret) { if (!cform.getAppointmentNo().equals("0")) { String apptCurStatus = bObj.getApptStatus(cform.getAppointmentNo()); oscar.appt.ApptStatusData as = new oscar.appt.ApptStatusData(); String billStatus = as.billStatus(apptCurStatus); bObj.updateApptStatus(cform.getAppointmentNo(), billStatus, cform.getProviderNo()); } } else log.error("++++++++++++++ Failed to add billing codes"); } } return fwd; }