public void TestMapEngineMultipleLinesWithSameClass()
        {
            var lines = new List <string>()
            {
                "03/22 08:51:06 INFO   :...read_physical_netif: index #0, interface VLINK1 has address 129.1.1.1, ifidx 0 ",
                "03/22 08:51:06 INFO: ...read_physical_netif: index #1, interface TR1 has address 9.37.65.139, ifidx 1",
                "03/22 08:52:06 INFO: ...read_physical_netif: index #1, interface TR1 has address 9.37.65.138, ifidx 1",
                "03/22 08:52:06 INFO: ...read_physical_netif: index #1, interface TR1 has address 9.37.65.139, ifidx 1"
            };
            var mapEngine = new MapEngine(lines);
            var mapped    = mapEngine.Execute();

            Assert.IsNotNull(mapped);
            Assert.AreEqual(mapped.Count(), 2);
            var firstNetwork  = mapped.ElementAt(0).Key;
            var secondNetwork = mapped.ElementAt(1).Key;

            Assert.AreEqual(firstNetwork, "129.1.1");
            Assert.AreEqual(secondNetwork, "9.37.65");
            var firstNetworkComputers  = mapped.ElementAt(0).Value;
            var secondNetworkComputers = mapped.ElementAt(1).Value;

            Assert.AreEqual(firstNetworkComputers.Count(), 1);
            Assert.AreEqual(secondNetworkComputers.Count(), 2);
            var firstNetworkComputer = firstNetworkComputers.ElementAt(0).Key;

            Assert.AreEqual(firstNetworkComputer, "1");
            var secondNetworkComputer139 = secondNetworkComputers.ElementAt(0).Key;

            Assert.AreEqual(secondNetworkComputer139, "139");
            var secondNetworkComputer138 = secondNetworkComputers.ElementAt(1).Key;

            Assert.AreEqual(secondNetworkComputer138, "138");
            var firstNetworkComputerLines = firstNetworkComputers.ElementAt(0).Value;

            Assert.AreEqual(firstNetworkComputerLines.Count(), 1);
            Assert.AreEqual(firstNetworkComputerLines.ElementAt(0), 0);
            var secondNetworkComputer139Lines = secondNetworkComputers.ElementAt(0).Value;

            Assert.AreEqual(secondNetworkComputer139Lines.Count(), 2);
            Assert.AreEqual(secondNetworkComputer139Lines.ElementAt(0), 1);
            Assert.AreEqual(secondNetworkComputer139Lines.ElementAt(1), 3);
            var secondNetworkComputer138Lines = secondNetworkComputers.ElementAt(1).Value;

            Assert.AreEqual(secondNetworkComputer138Lines.Count(), 1);
            Assert.AreEqual(secondNetworkComputer138Lines.ElementAt(0), 2);
        }