public void RemovingACompany() { companyGraph = new CompanyGraph.CompanyGraph(); companyGraph.Add(VIK, new List <Company> { Kodar }); companyGraph.Add(Kodar, new List <Company> { SBTech }); companyGraph.Add(SBTech, new List <Company> { MentorMate }); companyGraph.Add(MentorMate, new List <Company> { Zdravkova }); companyGraph.Add(Zdravkova, new List <Company> { Non }); companyGraph.Remove(SBTech); companyGraph.Add(Unconnected, new List <Company> { }); Assert.AreEqual(companyGraph.AreConnectedDepthFirst(VIK, Non), false); Assert.AreEqual(companyGraph.AreConnectedBreadthFirst(VIK, Non), false); Assert.AreEqual(companyGraph.AreConnectedDepthFirstIterative(VIK, Non), false); Assert.AreEqual(companyGraph.AreConnectedDepthFirst(MentorMate, Non), true); Assert.AreEqual(companyGraph.AreConnectedBreadthFirst(MentorMate, Non), true); Assert.AreEqual(companyGraph.AreConnectedDepthFirstIterative(MentorMate, Non), true); }
public void ShortestPathIsCorrectAfterRemovingACompany() { companyGraph = new CompanyGraph.CompanyGraph(); companyGraph.Add(VIK, new List <Company> { Kodar, SBTech, MentorMate }); companyGraph.Add(Kodar, new List <Company> { Zdravkova }); companyGraph.Add(SBTech, new List <Company> { Zdravkova }); companyGraph.Add(MentorMate, new List <Company> { Zdravkova }); companyGraph.Add(Zdravkova, new List <Company> { Non }); companyGraph.Add(MentorMate, new List <Company> { Non }); companyGraph.Remove(MentorMate); List <string> shortestPath = new List <string> { Zdravkova.Name, SBTech.Name, VIK.Name }; List <string> shortestPathToNon = new List <string> { Non.Name, Zdravkova.Name, SBTech.Name, VIK.Name }; Assert.AreEqual(companyGraph.FindShortestPath(VIK, Zdravkova), shortestPath); Assert.AreEqual(companyGraph.FindShortestPath(VIK, Non), shortestPathToNon); }