Search in sources :

Example 11 with Issue

use of org.drools.verifier.api.reporting.Issue in project kie-wb-common by kiegroup.

the class IssuesSet method mergeIssues.

private Optional<Issue> mergeIssues(final List<Issue> issues, final CheckType typeToMerge) {
    Set<Issue> issuesToMerge = issues.stream().filter(issue -> issue.getCheckType() == typeToMerge).collect(Collectors.toSet());
    Set<Integer> affectedRows = issuesToMerge.stream().flatMap(issue -> issue.getRowNumbers().stream()).sorted().collect(Collectors.toSet());
    return issuesToMerge.stream().findFirst().map(issue -> new Issue(issue.getSeverity(), typeToMerge, affectedRows));
}
Also used : List(java.util.List) CheckType(org.drools.verifier.api.reporting.CheckType) ExplanationProvider(org.kie.workbench.common.services.verifier.reporting.client.reporting.ExplanationProvider) Optional(java.util.Optional) Set(java.util.Set) Issue(org.drools.verifier.api.reporting.Issue) Comparator(java.util.Comparator) Collectors(java.util.stream.Collectors) EnumSet(java.util.EnumSet) TreeSet(java.util.TreeSet) Issue(org.drools.verifier.api.reporting.Issue)

Example 12 with Issue

use of org.drools.verifier.api.reporting.Issue in project kie-wb-common by kiegroup.

the class AnalysisReportScreen method showReport.

public void showReport(final AnalysisReport report) {
    LOGGER.finest("Received report for: " + report.getPlace().getPath());
    if (!report.getPlace().equals(currentPlace)) {
        return;
    }
    view.showStatusComplete();
    final List<Issue> issues = getIssues(report);
    final boolean isIllegalState = issues.stream().filter(issue -> Objects.equals(issue.getCheckType(), CheckType.ILLEGAL_VERIFIER_STATE)).count() > 0;
    if (isIllegalState) {
        view.hideProgressStatus();
    }
    dataProvider.setList(issues);
    if (dataProvider.getList().isEmpty()) {
        fireIssueSelectedEvent(Issue.EMPTY);
        view.clearIssue();
    } else {
        final Issue issue = dataProvider.getList().get(0);
        onSelect(issue);
    }
}
Also used : Issue(org.drools.verifier.api.reporting.Issue)

Example 13 with Issue

use of org.drools.verifier.api.reporting.Issue in project kie-wb-common by kiegroup.

the class AnalysisReport method toString.

@Override
public String toString() {
    final StringBuilder builder = new StringBuilder("AnalysisReport: ");
    builder.append("\n");
    if (issues.isEmpty()) {
        builder.append("No issues.");
        builder.append("\n");
    } else {
        for (Issue issue : issues) {
            builder.append(ExplanationProvider.toHTML(issue));
            builder.append("\n");
        }
    }
    return builder.toString();
}
Also used : Issue(org.drools.verifier.api.reporting.Issue)

Example 14 with Issue

use of org.drools.verifier.api.reporting.Issue in project drools by kiegroup.

the class DetectConflictingRowsCheck method makeIssue.

@Override
protected Issue makeIssue(final Severity severity, final CheckType checkType) {
    final Issue issue = new Issue(severity, checkType, new HashSet<>(Arrays.asList(ruleInspector.getRowIndex() + 1, other.getRowIndex() + 1)));
    issue.setDebugMessage(new RuleInspectorDumper(ruleInspector).dump() + " ## " + new RuleInspectorDumper(other).dump());
    return issue;
}
Also used : Issue(org.drools.verifier.api.reporting.Issue) RuleInspectorDumper(org.drools.verifier.core.cache.inspectors.RuleInspectorDumper)

Example 15 with Issue

use of org.drools.verifier.api.reporting.Issue in project kie-wb-common by kiegroup.

the class AnalysisReportScreenTest method testShowReport.

@Test
public void testShowReport() throws Exception {
    Issue issue1 = new Issue(Severity.WARNING, CheckType.DEFICIENT_ROW, Collections.emptySet());
    screen.showReport(getAnalysis(issue1));
    assertEquals(1, dataProvider.getList().size());
    assertTrue(dataProvider.getList().contains(issue1));
    Issue issue2 = new Issue(Severity.ERROR, CheckType.CONFLICTING_ROWS, Collections.emptySet());
    Issue issue3 = new Issue(Severity.WARNING, CheckType.SINGLE_HIT_LOST, Collections.emptySet());
    screen.showReport(getAnalysis(issue2, issue3));
    verify(view).showIssue(issue1);
    assertEquals(2, dataProvider.getList().size());
    assertFalse(dataProvider.getList().contains(issue1));
    assertTrue(dataProvider.getList().contains(issue2));
    assertTrue(dataProvider.getList().contains(issue3));
}
Also used : Issue(org.drools.verifier.api.reporting.Issue) Test(org.junit.Test)

Aggregations

Issue (org.drools.verifier.api.reporting.Issue)26 Test (org.junit.Test)16 Analyzer (org.drools.verifier.core.main.Analyzer)6 GuidedDecisionTable52 (org.drools.workbench.models.guided.dtable.shared.model.GuidedDecisionTable52)5 IllegalVerifierStateIssue (org.drools.verifier.api.reporting.IllegalVerifierStateIssue)4 AnalyzerConfigurationMock (org.drools.workbench.services.verifier.plugin.client.testutil.AnalyzerConfigurationMock)3 SafeHtml (com.google.gwt.safehtml.shared.SafeHtml)2 HashSet (java.util.HashSet)2 WebWorkerException (org.kie.workbench.common.services.verifier.api.client.api.WebWorkerException)2 MessageEvent (com.google.gwt.webworker.client.MessageEvent)1 Comparator (java.util.Comparator)1 EnumSet (java.util.EnumSet)1 List (java.util.List)1 Optional (java.util.Optional)1 Set (java.util.Set)1 TreeSet (java.util.TreeSet)1 Collectors (java.util.stream.Collectors)1 Status (org.drools.verifier.api.Status)1 CheckType (org.drools.verifier.api.reporting.CheckType)1 ImpossibleMatchIssue (org.drools.verifier.api.reporting.ImpossibleMatchIssue)1