public void Enumerator_WhenEnumerates1Tuple_ReturnsSelf() { //Arrange var tuple = new Tuple(new Tuple(null), new Fact(1), null); //Act var target = tuple.ToArray(); //Assert Assert.AreEqual(1, target.Length); Assert.AreEqual(tuple.RightFact, target[0]); }
/// <summary> /// A mock example of how a structure recognition job might be processed. SplitDocumentInParts and IsAccurateMatch could be combined to work in one single method. /// </summary> /// <param name="scannedDocument"></param> /// <returns></returns> public Tuple <DocumentElement, string>[] MockRecognizeStructure(byte[] scannedDocument) { Dictionary <int, string> parts = SplitDocumentInParts(scannedDocument); Tuple <DocumentElement, string>[] result = new Tuple <DocumentElement, string> [parts.Count]; foreach (KeyValuePair <int, string> part in parts) { foreach (DocumentElement de in Enum.GetValues(typeof(DocumentElement))) { if (IsAccurateMatch(part, de)) { result[part.Key] = new Tuple <DocumentElement, string>(de, part.Value); } } } return(result.ToArray()); }
public void Enumerator_WhenEnumeratesNTuple_WalksTuplesInOrder() { //Arrange var tuple0 = new Tuple(null); var tuple1 = new Tuple(tuple0, new Fact(1), null); var tuple2 = new Tuple(tuple1, new Fact(2), null); var tuple3 = new Tuple(tuple2, new Fact(3), null); //Act var target = tuple3.ToArray(); //Assert Assert.AreEqual(3, target.Length); Assert.AreEqual(tuple1.RightFact, target[0]); Assert.AreEqual(tuple2.RightFact, target[1]); Assert.AreEqual(tuple3.RightFact, target[2]); }