package org.togglz.core.activation; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import org.junit.Test; public class ParameterBuilderTest { @Test public void testMinimalParameter() { Parameter param = ParameterBuilder.create("uniqueId"); assertEquals(param.getName(), "uniqueId"); assertEquals(param.getLabel(), "uniqueId"); assertTrue(param.isValid("everything will match")); assertFalse(param.isOptional()); assertFalse(param.isLargeText()); assertNull(param.getDescription()); } @Test public void testParameterWithCustomName() { Parameter param = ParameterBuilder.create("uniqueId").label("My Parameter"); assertEquals(param.getName(), "uniqueId"); assertEquals(param.getLabel(), "My Parameter"); assertTrue(param.isValid("everything will match")); assertFalse(param.isOptional()); assertFalse(param.isLargeText()); assertNull(param.getDescription()); } @Test public void testOptionalParameter() { Parameter param = ParameterBuilder.create("uniqueId").label("My Parameter").optional(); assertEquals(param.getName(), "uniqueId"); assertEquals(param.getLabel(), "My Parameter"); assertTrue(param.isValid("everything will match")); assertTrue(param.isOptional()); assertFalse(param.isLargeText()); assertNull(param.getDescription()); } @Test public void testLargeTextParameter() { Parameter param = ParameterBuilder.create("uniqueId").label("My Parameter").largeText(); assertEquals(param.getName(), "uniqueId"); assertEquals(param.getLabel(), "My Parameter"); assertTrue(param.isValid("everything will match")); assertFalse(param.isOptional()); assertTrue(param.isLargeText()); assertNull(param.getDescription()); } @Test public void testParameterWithDescription() { Parameter param = ParameterBuilder.create("uniqueId").label("My Parameter").description("Some text"); assertEquals(param.getName(), "uniqueId"); assertEquals(param.getLabel(), "My Parameter"); assertTrue(param.isValid("everything will match")); assertFalse(param.isOptional()); assertFalse(param.isLargeText()); assertEquals(param.getDescription(), "Some text"); } @Test public void testParameterWithRegularExpression() { Parameter param = ParameterBuilder.create("uniqueId").matching("[a-z]+"); assertEquals(param.getName(), "uniqueId"); assertEquals(param.getLabel(), "uniqueId"); assertFalse(param.isOptional()); assertFalse(param.isLargeText()); assertNull(param.getDescription()); assertTrue(param.isValid("lowercase")); assertFalse(param.isValid("UPPERCASE")); } }