package hudson.plugins.sitemonitor; import hudson.plugins.sitemonitor.SiteMonitorValidator; import hudson.util.FormValidation; import junit.framework.TestCase; public class SiteMonitorValidatorTest extends TestCase { private SiteMonitorValidator validator; public void setUp() { validator = new SiteMonitorValidator(); } public void testValidateUrlWithValidUrlAndHttpProtocolShouldGiveOk() { FormValidation validation = validator .validateUrl("http://hudson-ci.org"); assertEquals(FormValidation.Kind.OK, validation.kind); } public void testValidateUrlWithValidUrlAndHttpsProtocolShouldGiveOk() { FormValidation validation = validator .validateUrl("https://hudson-ci.org"); assertEquals(FormValidation.Kind.OK, validation.kind); } public void testValidateUrlWithInvalidUrlShouldGiveError() { FormValidation validation = validator.validateUrl("://hudson-ci.org"); assertEquals(FormValidation.Kind.ERROR, validation.kind); } public void testValidateUrlWithEmptyValueShouldGiveOk() { FormValidation validation = validator.validateUrl(""); assertEquals(FormValidation.Kind.OK, validation.kind); } public void testValidateUrlWithInvalidProtocolShouldGiveError() { FormValidation validation = validator.validateUrl("ftp://hudson-ci.org"); assertEquals(FormValidation.Kind.ERROR, validation.kind); } public void testValidateTimeoutWithNumericValueShouldGiveOk() { FormValidation validation = validator.validateTimeout("300"); assertEquals(FormValidation.Kind.OK, validation.kind); } public void testValidateTimeoutWithNonNumericValueShouldGiveError() { FormValidation validation = validator.validateTimeout("abc^&@%!#"); assertEquals(FormValidation.Kind.ERROR, validation.kind); } public void testValidateTimeoutWithEmptyValueShouldGiveError() { FormValidation validation = validator.validateTimeout(""); assertEquals(FormValidation.Kind.ERROR, validation.kind); } public void testValidateResponseCodesWithValidResponseCodesShouldGiveOk() { FormValidation validation = validator.validateResponseCodes("200,304"); assertEquals(FormValidation.Kind.OK, validation.kind); } public void testValidateResponseCodesWithValidResponseCodesHavingLeadingTrailingSpacesShouldGiveOk() { FormValidation validation = validator .validateResponseCodes("200 ,304, 500,400"); assertEquals(FormValidation.Kind.OK, validation.kind); } public void testValidateResponseCodesWithEmptyValueShouldGiveOk() { FormValidation validation = validator.validateResponseCodes(""); assertEquals(FormValidation.Kind.OK, validation.kind); } public void testValidateResponseCodesWithInvalidResponseCodesShouldGiveError() { FormValidation validation = validator.validateResponseCodes("b200,304"); assertEquals(FormValidation.Kind.ERROR, validation.kind); } }