Example #1
0
        public void TestHamilton()
        {
            var projectPath = Directory
                              .GetParent(Environment.CurrentDirectory)
                              .Parent
                              .FullName;

            var HamiltonTrueDirectory  = Path.Combine(projectPath, "Graphs", "Hamilton", "True");
            var HamiltonFalseDirectory = Path.Combine(projectPath, "Graphs", "Hamilton", "False");

            var TrueGraphs  = Directory.GetFiles(HamiltonTrueDirectory);
            var FalseGraphs = Directory.GetFiles(HamiltonFalseDirectory);

            foreach (var graph in TrueGraphs)
            {
                var Graph = GraphLoad.LoadMatrix(graph);
                Assert.IsTrue(Hamilton.IsHamilton(Graph), graph);
            }

            foreach (var graph in FalseGraphs)
            {
                var Graph = GraphLoad.LoadMatrix(graph);
                Assert.IsFalse(Hamilton.IsHamilton(Graph), graph);
            }
        }
Example #2
0
        public void TestMatrixIO()
        {
            createAppdataFolder();
            var file = Path.Combine(AppDataDirectory, "tests\\test.matrix");



            Random rand = new Random();

            for (int i = 0; i < 25; ++i)
            {
                GraphMatrix matrix = GraphGenerator.generatorGnp(1000 + rand.Next(1000), 0.5);
                GraphLoad.SaveMatrix(matrix, file);
                GraphMatrix second = GraphLoad.LoadMatrix(file);
                Assert.IsTrue(matrix.Equals(second));
            }
        }
Example #3
0
        private void LoadGraph(object sender, RoutedEventArgs e)
        {
            OpenFileDialog dlg = new OpenFileDialog();

            dlg.DefaultExt       = ".matrix";
            dlg.Filter           = "Matrix|*.matrix|List|*.list|Incidency|*.inc";
            dlg.InitialDirectory = SaveLoadWindowHelper.LoadCurrentDialogDirectory();

            bool?result = dlg.ShowDialog();

            if (result == true)
            {
                if (dlg.FileName.ToLower().EndsWith("matrix"))
                {
                    Graph.Set(GraphLoad.LoadMatrix(dlg.FileName));
                }

                else if (dlg.FileName.ToLower().EndsWith("list"))
                {
                    Graph.Set(
                        Converter.ConvertToMatrix(GraphLoad.LoadList(dlg.FileName))
                        );
                }

                else if (dlg.FileName.ToLower().EndsWith("inc"))
                {
                    Graph.Set(
                        Converter.ConvertToMatrix(GraphLoad.LoadMatrixInc(dlg.FileName))
                        );
                }

                SaveLoadWindowHelper.SaveCurrentDialogDirectory(System.IO.Path.GetDirectoryName(dlg.FileName));
            }
            else
            {
                SaveLoadWindowHelper.SaveCurrentDialogDirectory(dlg.InitialDirectory);
            }
            Graph.OnChange();
            GraphRenderer.Displayer = new CircleDisplayer();
        }