public void GetDFAFinalStatesTest() { var finalStates = new HashSet <int>() { 1, 3 }; var dfaTestStates = new List <HashSet <int> >() { new HashSet <int>() { 1, 2, 3 }, new HashSet <int>() { 2, 0 }, new HashSet <int>() { 3 }, new HashSet <int>() { 1, 2 }, new HashSet <int>() { 0 } }; Assert.IsTrue(NFA.GetDFAFinalStates(dfaTestStates, finalStates).SetEquals(new HashSet <int>() { 0, 2, 3 })); }