Package com.smartcodeltd.jenkinsci.plugins.buildmonitor

Source Code of com.smartcodeltd.jenkinsci.plugins.buildmonitor.BuildMonitorViewTest

package com.smartcodeltd.jenkinsci.plugins.buildmonitor;

import hudson.util.FormValidation;
import org.apache.commons.lang.StringEscapeUtils;
import org.junit.Before;
import org.junit.Test;

import static com.smartcodeltd.jenkinsci.plugins.buildmonitor.viewmodel.syntacticsugar.Loops.asFollows;
import static hudson.util.FormValidation.Kind.*;
import static org.hamcrest.CoreMatchers.containsString;
import static org.hamcrest.core.Is.is;
import static org.junit.Assert.assertThat;

public class BuildMonitorViewTest {

    private BuildMonitorView.Descriptor validator;

    @Before
    public void setUp() throws Exception {
        validator = new BuildMonitorView.Descriptor();
    }

    @Test
    public void form_validator_should_allow_valid_reg_ex_specifying_what_jobs_to_include() {
        for (String regex : asFollows(null, "", ".*", "myproject-.*")) {
            assertThat(itShouldAllow(regex), validator.doCheckIncludeRegex(regex).kind, is(OK));
        }
    }

    @Test
    public void form_validator_should_advise_how_a_regex_could_be_improved() {
        FormValidation result = validator.doCheckIncludeRegex(")");

        assertThat(result.kind, is(ERROR));
        assertThat(htmlDecoded(result.getMessage()), containsString("Unmatched closing ')'"));
    }

    private String htmlDecoded(String message) {
        return StringEscapeUtils.unescapeHtml(message);
    }

    private String itShouldAllow(String regex) {
        return "should allow " + regex;
    }
}
TOP

Related Classes of com.smartcodeltd.jenkinsci.plugins.buildmonitor.BuildMonitorViewTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.