package pl.edu.amu.wmi.daut.re; import java.util.ArrayList; import pl.edu.amu.wmi.daut.base.NondeterministicAutomatonByThompsonApproach; import pl.edu.amu.wmi.daut.base.AutomatonSpecification; import junit.framework.TestCase; /** * Klasa, testuje klasę BellCharacterOperator. */ public class TestBellCharacterOperator extends TestCase { /** * Konstruuje przykładowy automat, a następnie go testuje. */ public void testAutomaton() { BellCharacterOperator operator = new BellCharacterOperator(); AutomatonSpecification aut = operator.createFixedAutomaton(); NondeterministicAutomatonByThompsonApproach a = new NondeterministicAutomatonByThompsonApproach(aut); assertTrue(a.accepts(Character.toString('\7'))); assertFalse(a.accepts(Character.toString('8'))); assertFalse(a.accepts(Character.toString('c'))); assertTrue(a.accepts(Character.toString((char) 7))); assertFalse(a.accepts(Character.toString(' '))); assertFalse(a.accepts(Character.toString('\6'))); } /** * Test fabryki operatora. */ public void testFactory() { RegexpOperatorFactory factory = new BellCharacterOperator.Factory(); ArrayList<String> params = new ArrayList<String>(); assertEquals(0, factory.arity()); assertEquals(factory.createOperator(params).getClass(), new BellCharacterOperator().getClass()); } }