public void Generate(int nodeCount, int edgeCount, bool directed) { //Arrange RandomGeneratorMatrix<double> rgg = new RandomGeneratorMatrix<double>(); rgg.NodeCount = nodeCount; rgg.EdgeCount = edgeCount; rgg.IsDirected = directed; //Act IMatrix<double> result = rgg.Generate(Guid.NewGuid()) as IMatrix<double>; //Assert int nonZeroEdgeCount = 0; if (directed) nonZeroEdgeCount = result.CountRegionNonZeros(MatrixRegion.All); else nonZeroEdgeCount = result.CountRegionNonZeros(MatrixRegion.UpperTriangle); Assert.NotNull(result); Assert.Equal(nodeCount, result.NodeCount); //Assert.Equal(nonZeroEdgeCount, result.EdgeCount); Assert.Equal(directed, result.IsDirected); }
public static IMatrix<double> GenerateMatrix(int n, int m, bool directed) { RandomGeneratorMatrix<double> rgg = new RandomGeneratorMatrix<double>(); rgg.NodeCount = n; rgg.EdgeCount = m; rgg.AllowSelfLoops = AllowSelfLoops; rgg.IsDirected = directed; IMatrix<double> net = rgg.Generate(Guid.NewGuid()) as IMatrix<double>; net.Name = string.Copy(Name); return net; }