Java 类org.springframework.boot.autoconfigure.condition.ConditionEvaluationReport.ConditionAndOutcomes 实例源码

项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:ConditionEvaluationReportMessage.java   
private void addLogMessage(StringBuilder message, String source,
        ConditionAndOutcomes conditionAndOutcomes) {
    message.append(String.format("%n   %s", source));
    message.append(conditionAndOutcomes.isFullMatch() ? " matched" : " did not match")
            .append(String.format("%n"));
    for (ConditionAndOutcome conditionAndOutcome : conditionAndOutcomes) {
        message.append("      - ");
        if (StringUtils.hasLength(conditionAndOutcome.getOutcome().getMessage())) {
            message.append(conditionAndOutcome.getOutcome().getMessage());
        }
        else {
            message.append(conditionAndOutcome.getOutcome().isMatch() ? "matched"
                    : "did not match");
        }
        message.append(" (");
        message.append(ClassUtils
                .getShortName(conditionAndOutcome.getCondition().getClass()));
        message.append(String.format(")%n"));
    }
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:ConditionEvaluationReportTests.java   
@Test
public void testDuplicateConditionAndOutcomes() {
    ConditionAndOutcome outcome1 = new ConditionAndOutcome(this.condition1,
            new ConditionOutcome(true, "Message 1"));
    ConditionAndOutcome outcome2 = new ConditionAndOutcome(this.condition2,
            new ConditionOutcome(true, "Message 2"));
    ConditionAndOutcome outcome3 = new ConditionAndOutcome(this.condition3,
            new ConditionOutcome(true, "Message 2"));

    assertThat(outcome1).isEqualTo(outcome1);
    assertThat(outcome1).isNotEqualTo(outcome2);
    assertThat(outcome2).isEqualTo(outcome3);

    ConditionAndOutcomes outcomes = new ConditionAndOutcomes();
    outcomes.add(this.condition1, new ConditionOutcome(true, "Message 1"));
    outcomes.add(this.condition2, new ConditionOutcome(true, "Message 2"));
    outcomes.add(this.condition3, new ConditionOutcome(true, "Message 2"));

    assertThat(getNumberOfOutcomes(outcomes)).isEqualTo(2);
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:ConditionEvaluationReportTests.java   
@Test
public void duplicateOutcomes() {
    AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(
            DuplicateConfig.class);
    ConditionEvaluationReport report = ConditionEvaluationReport
            .get(context.getBeanFactory());
    String autoconfigKey = MultipartAutoConfiguration.class.getName();

    ConditionAndOutcomes outcomes = report.getConditionAndOutcomesBySource()
            .get(autoconfigKey);
    assertThat(outcomes).isNotEqualTo(nullValue());
    assertThat(getNumberOfOutcomes(outcomes)).isEqualTo(2);

    List<String> messages = new ArrayList<String>();
    for (ConditionAndOutcome outcome : outcomes) {
        messages.add(outcome.getOutcome().getMessage());
    }
    assertThat(messages).areAtLeastOne(Matched.by(
            containsString("@ConditionalOnClass classes found: javax.servlet.Servlet,"
                    + "org.springframework.web.multipart.support.StandardServletMultipartResolver")));
    context.close();
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:ConditionEvaluationReportTests.java   
@Test
public void negativeOuterPositiveInnerBean() throws Exception {
    AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext();
    EnvironmentTestUtils.addEnvironment(context, "test.present=true");
    context.register(NegativeOuterConfig.class);
    context.refresh();
    ConditionEvaluationReport report = ConditionEvaluationReport
            .get(context.getBeanFactory());
    Map<String, ConditionAndOutcomes> sourceOutcomes = report
            .getConditionAndOutcomesBySource();
    assertThat(context.containsBean("negativeOuterPositiveInnerBean")).isFalse();
    String negativeConfig = NegativeOuterConfig.class.getName();
    assertThat(sourceOutcomes.get(negativeConfig).isFullMatch()).isFalse();
    String positiveConfig = NegativeOuterConfig.PositiveInnerConfig.class.getName();
    assertThat(sourceOutcomes.get(positiveConfig).isFullMatch()).isFalse();
}
项目:spring-boot-concourse    文件:ConditionEvaluationReportMessage.java   
private void addLogMessage(StringBuilder message, String source,
        ConditionAndOutcomes conditionAndOutcomes) {
    message.append(String.format("%n   %s", source));
    message.append(conditionAndOutcomes.isFullMatch() ? " matched" : " did not match")
            .append(String.format("%n"));
    for (ConditionAndOutcome conditionAndOutcome : conditionAndOutcomes) {
        message.append("      - ");
        if (StringUtils.hasLength(conditionAndOutcome.getOutcome().getMessage())) {
            message.append(conditionAndOutcome.getOutcome().getMessage());
        }
        else {
            message.append(conditionAndOutcome.getOutcome().isMatch() ? "matched"
                    : "did not match");
        }
        message.append(" (");
        message.append(ClassUtils
                .getShortName(conditionAndOutcome.getCondition().getClass()));
        message.append(String.format(")%n"));
    }
}
项目:spring-boot-concourse    文件:ConditionEvaluationReportTests.java   
@Test
public void testDuplicateConditionAndOutcomes() {
    ConditionAndOutcome outcome1 = new ConditionAndOutcome(this.condition1,
            new ConditionOutcome(true, "Message 1"));
    ConditionAndOutcome outcome2 = new ConditionAndOutcome(this.condition2,
            new ConditionOutcome(true, "Message 2"));
    ConditionAndOutcome outcome3 = new ConditionAndOutcome(this.condition3,
            new ConditionOutcome(true, "Message 2"));

    assertThat(outcome1).isEqualTo(outcome1);
    assertThat(outcome1).isNotEqualTo(outcome2);
    assertThat(outcome2).isEqualTo(outcome3);

    ConditionAndOutcomes outcomes = new ConditionAndOutcomes();
    outcomes.add(this.condition1, new ConditionOutcome(true, "Message 1"));
    outcomes.add(this.condition2, new ConditionOutcome(true, "Message 2"));
    outcomes.add(this.condition3, new ConditionOutcome(true, "Message 2"));

    assertThat(getNumberOfOutcomes(outcomes)).isEqualTo(2);
}
项目:spring-boot-concourse    文件:ConditionEvaluationReportTests.java   
@Test
public void duplicateOutcomes() {
    AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(
            DuplicateConfig.class);
    ConditionEvaluationReport report = ConditionEvaluationReport
            .get(context.getBeanFactory());
    String autoconfigKey = MultipartAutoConfiguration.class.getName();

    ConditionAndOutcomes outcomes = report.getConditionAndOutcomesBySource()
            .get(autoconfigKey);
    assertThat(outcomes).isNotEqualTo(nullValue());
    assertThat(getNumberOfOutcomes(outcomes)).isEqualTo(2);

    List<String> messages = new ArrayList<String>();
    for (ConditionAndOutcome outcome : outcomes) {
        messages.add(outcome.getOutcome().getMessage());
    }
    assertThat(messages).areAtLeastOne(Matched.by(
            containsString("@ConditionalOnClass classes found: javax.servlet.Servlet,"
                    + "org.springframework.web.multipart.support.StandardServletMultipartResolver")));
    context.close();
}
项目:spring-boot-concourse    文件:ConditionEvaluationReportTests.java   
@Test
public void negativeOuterPositiveInnerBean() throws Exception {
    AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext();
    EnvironmentTestUtils.addEnvironment(context, "test.present=true");
    context.register(NegativeOuterConfig.class);
    context.refresh();
    ConditionEvaluationReport report = ConditionEvaluationReport
            .get(context.getBeanFactory());
    Map<String, ConditionAndOutcomes> sourceOutcomes = report
            .getConditionAndOutcomesBySource();
    assertThat(context.containsBean("negativeOuterPositiveInnerBean")).isFalse();
    String negativeConfig = NegativeOuterConfig.class.getName();
    assertThat(sourceOutcomes.get(negativeConfig).isFullMatch()).isFalse();
    String positiveConfig = NegativeOuterConfig.PositiveInnerConfig.class.getName();
    assertThat(sourceOutcomes.get(positiveConfig).isFullMatch()).isFalse();
}
项目:contestparser    文件:AutoConfigurationReportLoggingInitializer.java   
private void addLogMessage(StringBuilder message, String source,
        ConditionAndOutcomes conditionAndOutcomes) {
    message.append("\n   " + source);
    message.append(
            conditionAndOutcomes.isFullMatch() ? " matched\n" : " did not match\n");
    for (ConditionAndOutcome conditionAndOutcome : conditionAndOutcomes) {
        message.append("      - ");
        if (StringUtils.hasLength(conditionAndOutcome.getOutcome().getMessage())) {
            message.append(conditionAndOutcome.getOutcome().getMessage());
        }
        else {
            message.append(conditionAndOutcome.getOutcome().isMatch() ? "matched"
                    : "did not match");
        }
        message.append(" (");
        message.append(ClassUtils
                .getShortName(conditionAndOutcome.getCondition().getClass()));
        message.append(")\n");
    }

}
项目:contestparser    文件:ConditionEvaluationReportTests.java   
@Test
public void testDuplicateConditionAndOutcomes() {
    ConditionAndOutcome outcome1 = new ConditionAndOutcome(this.condition1,
            new ConditionOutcome(true, "Message 1"));
    ConditionAndOutcome outcome2 = new ConditionAndOutcome(this.condition2,
            new ConditionOutcome(true, "Message 2"));
    ConditionAndOutcome outcome3 = new ConditionAndOutcome(this.condition3,
            new ConditionOutcome(true, "Message 2"));

    assertThat(outcome1, equalTo(outcome1));
    assertThat(outcome1, not(equalTo(outcome2)));
    assertThat(outcome2, equalTo(outcome3));

    ConditionAndOutcomes outcomes = new ConditionAndOutcomes();
    outcomes.add(this.condition1, new ConditionOutcome(true, "Message 1"));
    outcomes.add(this.condition2, new ConditionOutcome(true, "Message 2"));
    outcomes.add(this.condition3, new ConditionOutcome(true, "Message 2"));

    assertThat(getNumberOfOutcomes(outcomes), equalTo(2));
}
项目:contestparser    文件:ConditionEvaluationReportTests.java   
@Test
public void duplicateOutcomes() {
    AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(
            DuplicateConfig.class);
    ConditionEvaluationReport report = ConditionEvaluationReport
            .get(context.getBeanFactory());
    String autoconfigKey = MultipartAutoConfiguration.class.getName();

    ConditionAndOutcomes outcomes = report.getConditionAndOutcomesBySource()
            .get(autoconfigKey);
    assertThat(outcomes, not(nullValue()));
    assertThat(getNumberOfOutcomes(outcomes), equalTo(2));

    List<String> messages = new ArrayList<String>();
    for (ConditionAndOutcome outcome : outcomes) {
        messages.add(outcome.getOutcome().getMessage());
    }

    Matcher<String> onClassMessage = containsString("@ConditionalOnClass "
            + "classes found: javax.servlet.Servlet,org.springframework.web.multipart.support.StandardServletMultipartResolver");
    assertThat(messages, hasItem(onClassMessage));
    context.close();
}
项目:contestparser    文件:ConditionEvaluationReportTests.java   
@Test
public void negativeOuterPositiveInnerBean() throws Exception {
    AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext();
    EnvironmentTestUtils.addEnvironment(context, "test.present=true");
    context.register(NegativeOuterConfig.class);
    context.refresh();
    ConditionEvaluationReport report = ConditionEvaluationReport
            .get(context.getBeanFactory());
    Map<String, ConditionAndOutcomes> sourceOutcomes = report
            .getConditionAndOutcomesBySource();
    assertThat(context.containsBean("negativeOuterPositiveInnerBean"),
            equalTo(false));
    String negativeConfig = NegativeOuterConfig.class.getName();
    assertThat(sourceOutcomes.get(negativeConfig).isFullMatch(), equalTo(false));
    String positiveConfig = NegativeOuterConfig.PositiveInnerConfig.class.getName();
    assertThat(sourceOutcomes.get(positiveConfig).isFullMatch(), equalTo(false));
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:AutoConfigurationReportEndpoint.java   
public Report(ConditionEvaluationReport report) {
    this.positiveMatches = new LinkedMultiValueMap<String, MessageAndCondition>();
    this.negativeMatches = new LinkedMultiValueMap<String, MessageAndCondition>();
    this.exclusions = report.getExclusions();
    for (Map.Entry<String, ConditionAndOutcomes> entry : report
            .getConditionAndOutcomesBySource().entrySet()) {
        add(entry.getValue().isFullMatch() ? this.positiveMatches
                : this.negativeMatches, entry.getKey(), entry.getValue());

    }
    if (report.getParent() != null) {
        this.parent = new Report(report.getParent());
    }
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:AutoConfigurationReportEndpoint.java   
private void add(MultiValueMap<String, MessageAndCondition> map, String source,
        ConditionAndOutcomes conditionAndOutcomes) {
    String name = ClassUtils.getShortName(source);
    for (ConditionAndOutcome conditionAndOutcome : conditionAndOutcomes) {
        map.add(name, new MessageAndCondition(conditionAndOutcome));
    }
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:ConditionEvaluationReportTests.java   
@Test
public void recordConditionEvaluations() throws Exception {
    this.outcome1 = new ConditionOutcome(false, "m1");
    this.outcome2 = new ConditionOutcome(false, "m2");
    this.outcome3 = new ConditionOutcome(false, "m3");
    this.report.recordConditionEvaluation("a", this.condition1, this.outcome1);
    this.report.recordConditionEvaluation("a", this.condition2, this.outcome2);
    this.report.recordConditionEvaluation("b", this.condition3, this.outcome3);
    Map<String, ConditionAndOutcomes> map = this.report
            .getConditionAndOutcomesBySource();
    assertThat(map.size()).isEqualTo(2);
    Iterator<ConditionAndOutcome> iterator = map.get("a").iterator();

    ConditionAndOutcome conditionAndOutcome = iterator.next();
    assertThat(conditionAndOutcome.getCondition()).isEqualTo(this.condition1);
    assertThat(conditionAndOutcome.getOutcome()).isEqualTo(this.outcome1);

    conditionAndOutcome = iterator.next();
    assertThat(conditionAndOutcome.getCondition()).isEqualTo(this.condition2);
    assertThat(conditionAndOutcome.getOutcome()).isEqualTo(this.outcome2);
    assertThat(iterator.hasNext()).isFalse();

    iterator = map.get("b").iterator();
    conditionAndOutcome = iterator.next();
    assertThat(conditionAndOutcome.getCondition()).isEqualTo(this.condition3);
    assertThat(conditionAndOutcome.getOutcome()).isEqualTo(this.outcome3);
    assertThat(iterator.hasNext()).isFalse();
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:ConditionEvaluationReportTests.java   
private int getNumberOfOutcomes(ConditionAndOutcomes outcomes) {
    Iterator<ConditionAndOutcome> iterator = outcomes.iterator();
    int numberOfOutcomesAdded = 0;
    while (iterator.hasNext()) {
        numberOfOutcomesAdded++;
        iterator.next();
    }
    return numberOfOutcomesAdded;
}
项目:spring-boot-concourse    文件:AutoConfigurationReportEndpoint.java   
public Report(ConditionEvaluationReport report) {
    this.positiveMatches = new LinkedMultiValueMap<String, MessageAndCondition>();
    this.negativeMatches = new LinkedMultiValueMap<String, MessageAndCondition>();
    this.exclusions = report.getExclusions();
    for (Map.Entry<String, ConditionAndOutcomes> entry : report
            .getConditionAndOutcomesBySource().entrySet()) {
        add(entry.getValue().isFullMatch() ? this.positiveMatches
                : this.negativeMatches, entry.getKey(), entry.getValue());

    }
    if (report.getParent() != null) {
        this.parent = new Report(report.getParent());
    }
}
项目:spring-boot-concourse    文件:AutoConfigurationReportEndpoint.java   
private void add(MultiValueMap<String, MessageAndCondition> map, String source,
        ConditionAndOutcomes conditionAndOutcomes) {
    String name = ClassUtils.getShortName(source);
    for (ConditionAndOutcome conditionAndOutcome : conditionAndOutcomes) {
        map.add(name, new MessageAndCondition(conditionAndOutcome));
    }
}
项目:spring-boot-concourse    文件:ConditionEvaluationReportTests.java   
@Test
public void recordConditionEvaluations() throws Exception {
    this.outcome1 = new ConditionOutcome(false, "m1");
    this.outcome2 = new ConditionOutcome(false, "m2");
    this.outcome3 = new ConditionOutcome(false, "m3");
    this.report.recordConditionEvaluation("a", this.condition1, this.outcome1);
    this.report.recordConditionEvaluation("a", this.condition2, this.outcome2);
    this.report.recordConditionEvaluation("b", this.condition3, this.outcome3);
    Map<String, ConditionAndOutcomes> map = this.report
            .getConditionAndOutcomesBySource();
    assertThat(map.size()).isEqualTo(2);
    Iterator<ConditionAndOutcome> iterator = map.get("a").iterator();

    ConditionAndOutcome conditionAndOutcome = iterator.next();
    assertThat(conditionAndOutcome.getCondition()).isEqualTo(this.condition1);
    assertThat(conditionAndOutcome.getOutcome()).isEqualTo(this.outcome1);

    conditionAndOutcome = iterator.next();
    assertThat(conditionAndOutcome.getCondition()).isEqualTo(this.condition2);
    assertThat(conditionAndOutcome.getOutcome()).isEqualTo(this.outcome2);
    assertThat(iterator.hasNext()).isFalse();

    iterator = map.get("b").iterator();
    conditionAndOutcome = iterator.next();
    assertThat(conditionAndOutcome.getCondition()).isEqualTo(this.condition3);
    assertThat(conditionAndOutcome.getOutcome()).isEqualTo(this.outcome3);
    assertThat(iterator.hasNext()).isFalse();
}
项目:spring-boot-concourse    文件:ConditionEvaluationReportTests.java   
private int getNumberOfOutcomes(ConditionAndOutcomes outcomes) {
    Iterator<ConditionAndOutcome> iterator = outcomes.iterator();
    int numberOfOutcomesAdded = 0;
    while (iterator.hasNext()) {
        numberOfOutcomesAdded++;
        iterator.next();
    }
    return numberOfOutcomesAdded;
}
项目:contestparser    文件:AutoConfigurationReportEndpoint.java   
public Report(ConditionEvaluationReport report) {
    this.positiveMatches = new LinkedMultiValueMap<String, MessageAndCondition>();
    this.negativeMatches = new LinkedMultiValueMap<String, MessageAndCondition>();
    this.exclusions = report.getExclusions();
    for (Map.Entry<String, ConditionAndOutcomes> entry : report
            .getConditionAndOutcomesBySource().entrySet()) {
        add(entry.getValue().isFullMatch() ? this.positiveMatches
                : this.negativeMatches, entry.getKey(), entry.getValue());

    }
    if (report.getParent() != null) {
        this.parent = new Report(report.getParent());
    }
}
项目:contestparser    文件:AutoConfigurationReportEndpoint.java   
private void add(MultiValueMap<String, MessageAndCondition> map, String source,
        ConditionAndOutcomes conditionAndOutcomes) {
    String name = ClassUtils.getShortName(source);
    for (ConditionAndOutcome conditionAndOutcome : conditionAndOutcomes) {
        map.add(name, new MessageAndCondition(conditionAndOutcome));
    }
}
项目:contestparser    文件:ConditionEvaluationReportTests.java   
@Test
public void recordConditionEvaluations() throws Exception {
    this.outcome1 = new ConditionOutcome(false, "m1");
    this.outcome2 = new ConditionOutcome(false, "m2");
    this.outcome3 = new ConditionOutcome(false, "m3");
    this.report.recordConditionEvaluation("a", this.condition1, this.outcome1);
    this.report.recordConditionEvaluation("a", this.condition2, this.outcome2);
    this.report.recordConditionEvaluation("b", this.condition3, this.outcome3);
    Map<String, ConditionAndOutcomes> map = this.report
            .getConditionAndOutcomesBySource();
    assertThat(map.size(), equalTo(2));
    Iterator<ConditionAndOutcome> iterator = map.get("a").iterator();

    ConditionAndOutcome conditionAndOutcome = iterator.next();
    assertThat(conditionAndOutcome.getCondition(), equalTo(this.condition1));
    assertThat(conditionAndOutcome.getOutcome(), equalTo(this.outcome1));

    conditionAndOutcome = iterator.next();
    assertThat(conditionAndOutcome.getCondition(), equalTo(this.condition2));
    assertThat(conditionAndOutcome.getOutcome(), equalTo(this.outcome2));
    assertThat(iterator.hasNext(), equalTo(false));

    iterator = map.get("b").iterator();
    conditionAndOutcome = iterator.next();
    assertThat(conditionAndOutcome.getCondition(), equalTo(this.condition3));
    assertThat(conditionAndOutcome.getOutcome(), equalTo(this.outcome3));
    assertThat(iterator.hasNext(), equalTo(false));
}
项目:contestparser    文件:ConditionEvaluationReportTests.java   
private int getNumberOfOutcomes(ConditionAndOutcomes outcomes) {
    Iterator<ConditionAndOutcome> iterator = outcomes.iterator();
    int numberOfOutcomesAdded = 0;
    while (iterator.hasNext()) {
        numberOfOutcomesAdded++;
        iterator.next();
    }
    return numberOfOutcomesAdded;
}