public void ToStringTest() { MetaTransition metaTransition = new MetaTransition( EnumerateHelper.Sequence( new Label(new SingleLabel('e')), new Label(new SingleLabel('r')) ), EnumerateHelper.Sequence( new Label(new SingleLabel('e')), new Label(new SingleLabel('r')) ), 'a', EnumerateHelper.Sequence( new Label(new SingleLabel('e')), new Label(new SingleLabel('r')) ) ); Assert.AreEqual("δ([{e_null} {r_null} q_1 ... q_2], a) -> [ {e_null} {r_null}], q_1 ... q_2 : {e_null} {r_null}", metaTransition.ToString()); }
public void CctorTest_Ok() { IEnumerable <Label> expectedMetaCurrentRequiredStates = EnumerateHelper.Sequence( new Label(new SingleLabel('a')), new Label(new SingleLabel('b')), new Label(new SingleLabel('c')) ); IEnumerable <Label> expectedMetaCurrentOptionalStates = EnumerateHelper.Sequence( new Label(new SingleLabel('d')), new Label(new SingleLabel('e')), new Label(new SingleLabel('f')), new Label(new SingleLabel('j')) ); IEnumerable <Label> expectedMetaNextStates = EnumerateHelper.Sequence( new Label(new SingleLabel('f')), new Label(new SingleLabel('j')) ); char expectedSymbol = 's'; MetaTransition metaTransition = new MetaTransition( expectedMetaCurrentRequiredStates, expectedMetaCurrentOptionalStates, expectedSymbol, expectedMetaNextStates); Assert.AreEqual(expectedSymbol, metaTransition.Symbol); CollectionAssert.AreEquivalent(expectedMetaCurrentRequiredStates, metaTransition.CurrentRequiredStates); CollectionAssert.AreEquivalent(expectedMetaCurrentOptionalStates, metaTransition.CurrentOptionalStates); CollectionAssert.AreEquivalent(expectedMetaNextStates, metaTransition.NextStates); }