public void GenerateMultiLayer() { var generator = new RandomMultiLayerGenerator(); foreach (var l in Enumerable.Range(2, 10)) { foreach (var n in Enumerable.Range(2, 10)) { var network = generator.Generate(n, l, 0.55); Assert.Equal(n, network.Actors.Count()); Assert.Equal(l, network.Layers.Count()); } } }
public void TestRandom() { var random = new Random(); var generator = new RandomMultiLayerGenerator(); for (var i = 8; i < 15; i++) { var p = random.Next(6, 10) / 10.0; var l = random.Next(2, 10); var n = generator.Generate(i, l, p); var a = n.Actors; var abacus = new ABACUS(); var communities = abacus.Apply(n, n => new Louvain().Apply(n), 2); var actors = communities.SelectMany(c => c.Actors).Distinct(); Assert.Empty(a.Except(actors)); communities.ForEach(c => Assert.NotEmpty(c.Actors)); } }