Beispiel #1
0
  @Test
  public final void testApplyChanges() throws InvalidIdentifierException {
    final RiskModel riskModel = createRiskModel("Thoracic 30-day Mortality");
    final EditRiskModel editRiskModel = EditRiskModel.fromRiskModel(riskModel, fModelService);
    final ImmutableList<EditModelTerm> newTerms =
        ImmutableList.of(
            EditModelTerm.forConstant(0.23f),
            EditModelTerm.forVariable("dnr", 12.3f),
            EditModelTerm.forRule(SampleModels.ageAndFsRule().getDisplayName(), 0.5f));
    final HashSet<ModelTerm> expectedTerms = new HashSet<>();
    for (final EditModelTerm newTerm : newTerms) {
      expectedTerms.add(newTerm.build(fModelService));
    }

    editRiskModel.setModelName("NewModelName");
    editRiskModel.getTerms().clear();
    editRiskModel.getTerms().addAll(newTerms);

    assertEquals("NewModelName", editRiskModel.getModelName());
    assertEquals(DisplayNameConditions.DISPLAY_NAME_MAX, editRiskModel.getMaxDisplayNameLength());

    editRiskModel.applyChanges(riskModel, fModelService);

    assertEquals("NewModelName", riskModel.getDisplayName());
    assertEquals(expectedTerms, riskModel.getTerms());
  }