public void AddShoot_PlantExists_ShootCreated() { Gramene g = new Gramene(); int plantId = g.TestAddPlant(); Assert.AreEqual(plantId, g.GetCursor()); int shootId = g.TestAddShoot(); Assert.AreEqual(shootId, g.GetCursor()); // Verification of the scale. Assert.AreEqual(g.Scale(plantId) + 1, g.Scale(shootId)); // Verification of the label. string plantNb = g.GetVertexProperties(plantId)["label"].Substring(5); Assert.AreEqual("shoot" + plantNb, g.GetVertexProperties(shootId)["label"]); // Verification of the complex. Assert.AreEqual(plantId, g.Complex(shootId)); }
public void AddRoot_PlantDoesntExist_PlantCreatedAndRootAdded() { Gramene g = new Gramene(); int rootId = g.TestAddRoot(); // Verify that the canopy is created. int canopy = rootId; while (g.Scale(canopy) != 1) { canopy = (int)g.Complex(canopy); } Assert.AreEqual(1, g.Scale(canopy)); CollectionAssert.AreEqual(new List <int>() { canopy }, g.Components(0)); // Verify that the plant is created. int plant = (int)g.Complex(rootId); Assert.AreEqual(2, g.Scale(plant)); string plantLabel = g.GetVertexProperties(plant)["label"]; Assert.AreEqual("plant0", plantLabel); // Verify that the cursor is placed on the shoot. Assert.AreEqual(rootId, g.GetCursor()); }
public void AddCanopy_NoCanopyBefore_CanopyAddedAndCursorMoved() { // Add a canopy Gramene g = new Gramene(); int canopyId = g.TestAddCanopy(); // Compare the expected scale of the canopy and the actual one. int scaleOfCanopy = g.labelsOfScales.FirstOrDefault(x => x.Value == "canopy").Key; Assert.AreEqual(1, scaleOfCanopy); Assert.AreEqual(1, g.Scale(canopyId)); // Verify that the components are correct. CollectionAssert.AreEqual(new List <int>() { canopyId }, g.Components(0)); // Verify that the cursor moved to the newly created canopy. Assert.AreEqual(canopyId, g.GetCursor()); // Verify that the label of the canopy is "canopy". Assert.AreEqual("canopy", g.GetVertexProperties(canopyId)["label"]); }
public void AddPlant_NewPlant_PlantAdded() { Gramene g = new Gramene(); Assert.AreEqual(0, g.GetCursor()); // Get the identifiers of the new plants. int firstPlant = g.TestAddPlant(); Assert.AreEqual(firstPlant, g.GetCursor()); int secondPlant = g.TestAddPlant(); int thirdPlant = g.TestAddPlant(); // Get the label of the plants. string firstLabel = g.GetVertexProperties(firstPlant)["label"]; string secondLabel = g.GetVertexProperties(secondPlant)["label"]; string thirdLabel = g.GetVertexProperties(thirdPlant)["label"]; // Make sure the labels correspond to the ones expected. Assert.AreEqual("plant0", firstLabel); Assert.AreEqual("plant1", secondLabel); Assert.AreEqual("plant2", thirdLabel); // Verify that all plants belong to scale number 2. Assert.AreEqual(2, g.Scale(firstPlant)); Assert.AreEqual(2, g.Scale(secondPlant)); Assert.AreEqual(2, g.Scale(thirdPlant)); // Verify that the complex of the plant is the canopy. Assert.AreEqual(1, g.Complex(firstPlant)); Assert.AreEqual(1, g.Complex(secondPlant)); Assert.AreEqual(1, g.Complex(thirdPlant)); }
public void Gramene_CopyOfGramene_CorrectlyCopied() { // Creation of a gramene Gramene g = new Gramene(); g.CreateBasicWheat(10); // Copy of a gramene Gramene g1 = new Gramene(g); Assert.AreEqual(g1.GetCursor(), g.GetCursor()); Assert.AreEqual(10, g1.GetLeafNumber()); }