@Test
  public void testExecute() throws Exception {

    int uktFilesSize = 0;

    String parentDir =
        ResourceUtils.getFile("classpath:schedule/test-uktstatus.gpg.txt").getParent();

    setUktDirectory(parentDir);

    File uktDir = new File(uktDirectory);
    File[] uktFiles =
        uktDir.listFiles(
            new FilenameFilter() {
              public boolean accept(File dir, String name) {
                return name.endsWith("uktstatus.gpg.txt");
              }
            });

    if (uktFiles != null) {
      uktFilesSize = uktFiles.length;
    }

    assertTrue("Can not read UKT files", uktFilesSize != 0);

    uktImportExportScheduler.setUktDirectory(parentDir);
    uktImportExportScheduler.setUktExportDirectory(parentDir);
    uktImportExportScheduler.execute();

    UktStatus uktStatus = ukTransplantManager.getUktStatus("9876543210");

    if (uktFilesSize > 0) {
      assertNotNull("UktStatus not be saved", uktStatus);
      File file = ResourceUtils.getFile("classpath:schedule/ukt_rpv_export.txt");
      CSVParser uktParser = new CSVParser(new FileReader(file));
      uktParser.changeDelimiter(',');
      String[][] uktValues = uktParser.getAllValues();

      assertEquals("nhsno not same", patient.getNhsno(), uktValues[0][0]);
      assertEquals("surname not same", patient.getSurname(), uktValues[0][1]);
      assertEquals("forname not same", patient.getForename(), uktValues[0][2]);
      assertEquals("postcode not same", patient.getPostcode(), uktValues[0][4]);

      uktParser.close();
    } else {
      assertNull("Wrong entity exists.", uktStatus);
    }
  }
Esempio n. 2
0
  public AdminPatientPage(PageParameters parameters) {
    super();

    final Patient patient;
    final PatientUser patientUser;

    StringValue idValue = parameters.get(PARAM_ID);
    patientUser = userManager.getPatientUser(idValue.toLong());
    patient = patientManager.getPatientByRadarNumber(patientUser.getRadarNumber());

    CompoundPropertyModel<PatientUser> patientUserModel =
        new CompoundPropertyModel<PatientUser>(patientUser);

    final FeedbackPanel feedback = new FeedbackPanel("feedback");
    feedback.setOutputMarkupId(true);
    feedback.setOutputMarkupPlaceholderTag(true);
    add(feedback);

    final Form<PatientUser> userForm =
        new Form<PatientUser>("patientForm", patientUserModel) {
          protected void onSubmit() {
            try {
              userManager.savePatientUser(getModelObject());
            } catch (Exception e) {
              error("Could not save patient: " + e.toString());
            }
          }
        };
    add(userForm);

    userForm.add(new Label("radarNo", patientUser.getRadarNumber().toString()));
    userForm.add(new Label("forename", patient.getForename()));
    userForm.add(new Label("surname", patient.getSurname()));
    userForm.add(new RequiredTextField("username"));
    userForm.add(new Label("dob", patientUser.getDateOfBirth().toString()));
    userForm.add(new Label("dateRegistered", patientUser.getDateRegistered().toString()));

    userForm.add(
        new AjaxSubmitLink("updateTop") {
          protected void onSubmit(AjaxRequestTarget ajaxRequestTarget, Form<?> form) {
            setResponsePage(AdminPatientsPage.class);
          }

          protected void onError(AjaxRequestTarget ajaxRequestTarget, Form<?> form) {
            ajaxRequestTarget.add(feedback);
          }
        });

    userForm.add(
        new AjaxLink("cancelTop") {
          public void onClick(AjaxRequestTarget ajaxRequestTarget) {
            setResponsePage(AdminPatientsPage.class);
          }
        });

    userForm.add(
        new AjaxSubmitLink("updateBottom") {
          protected void onSubmit(AjaxRequestTarget ajaxRequestTarget, Form<?> form) {
            setResponsePage(AdminPatientsPage.class);
          }

          protected void onError(AjaxRequestTarget ajaxRequestTarget, Form<?> form) {
            ajaxRequestTarget.add(feedback);
          }
        });

    userForm.add(
        new AjaxLink("cancelBottom") {
          public void onClick(AjaxRequestTarget ajaxRequestTarget) {
            setResponsePage(AdminPatientsPage.class);
          }
        });
  }