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); } }
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)); } }
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(); }