Example #1
0
        // [Test, TestCaseSource(typeof(TestCaseFactory), "PrimMSTCases")]
        public void CanLoadGraphs(string inputFile, string outputFile)
        {
            (var info, var graph) = MSTLoader.LoadData(inputFile);
            var count = File.ReadAllLines(inputFile).Count();

            Assert.AreEqual(count, graph.Count + 1);
        }
Example #2
0
        // [Test, TestCaseSource(typeof(TestCaseFactory), "PrimMSTCases")]
        public void CanGenerateGraphs(string inputFile, string outputFile)
        {
            (var info, var data) = MSTLoader.LoadData(inputFile);
            var graph = MSTLoader.GenerateGraph(data);

            Assert.AreEqual(info.Nodes, graph.Count);
        }
Example #3
0
        static void Main(string[] args)
        {
            (var info, var data) = MSTLoader.LoadData("prim_data.txt");
            var graph = MSTLoader.GenerateGraph(data);

            (var length, var path) = MSTLoader.CalculateMST(graph);
            Console.WriteLine(length);
        }
Example #4
0
        // [Test, TestCaseSource(typeof(TestCaseFactory), "PrimMSTCases")]
        public void CanCalculateMST(string inputFile, string outputFile)
        {
            (var info, var data) = MSTLoader.LoadData(inputFile);
            var graph = MSTLoader.GenerateGraph(data);

            (var length, var path) = MSTLoader.CalculateMST(graph);
            var actual = File.ReadLines(outputFile).WhereNotNull().Select(long.Parse);

            Assert.AreEqual(actual.First(), length);
        }