48 lines
1.8 KiB
Java
48 lines
1.8 KiB
Java
package jmri.jmrit.logixng.actions;
|
|
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
|
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
|
import static org.junit.jupiter.api.Assertions.assertThrows;
|
|
import static org.junit.jupiter.api.Assertions.assertTrue;
|
|
|
|
import java.util.Locale;
|
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
import jmri.NamedBean;
|
|
import jmri.jmrit.logixng.AbstractBaseTestBase;
|
|
import jmri.jmrit.logixng.DigitalActionBean;
|
|
|
|
/**
|
|
* Base class for classes that tests DigitalAction
|
|
*/
|
|
public abstract class AbstractDigitalActionTestBase extends AbstractBaseTestBase {
|
|
|
|
public abstract NamedBean createNewBean(String systemName);
|
|
|
|
@Test
|
|
public void testBadSystemName() {
|
|
IllegalArgumentException e = assertThrows( IllegalArgumentException.class, () -> {
|
|
// Create a bean with bad system name. This must throw an exception
|
|
NamedBean bean = createNewBean("IQ111");
|
|
// We should never get here.
|
|
assertNotNull( bean, "Bean is not null");
|
|
});
|
|
assertEquals( "system name is not valid: IQ111", e.getMessage(), "Exception is correct");
|
|
}
|
|
|
|
@Test
|
|
public void testBundle() {
|
|
assertEquals( "Memory", Bundle.getMessage("ActionMemory_Short"), "strings are equal");
|
|
assertEquals( "Set memory IM1 to null", Bundle.getMessage("ActionMemory_Long_Null", "IM1"), "strings are equal 2");
|
|
assertEquals( "Memory", Bundle.getMessage(Locale.CANADA, "ActionMemory_Short"), "strings are equal 3");
|
|
assertEquals( "Set memory IM1 to null", Bundle.getMessage(Locale.CANADA, "ActionMemory_Long_Null", "IM1"), "strings are equal 4");
|
|
}
|
|
|
|
@Test
|
|
public void testGetBeanType() {
|
|
assertTrue( "Digital action".equals(((DigitalActionBean)_base).getBeanType()), "String matches");
|
|
}
|
|
|
|
}
|