Exemple #1
0
 public void ConstructWithCycle()
 {
     using (var env = TestEnvironment.Create())
     {
         TransientTestFile entryProject = CreateProjectFile(env, 1, new[] { 2 });
         var proj2           = CreateProjectFile(env, 2, new[] { 3 });
         var proj3           = CreateProjectFile(env, 3, new[] { 1 });
         var projectsInCycle = new List <string>()
         {
             entryProject.Path, proj3.Path, proj2.Path, entryProject.Path
         };
         string expectedErrorMessage = ProjectGraph.FormatCircularDependencyError(projectsInCycle);
         Should.Throw <CircularDependencyException>(() => new ProjectGraph(entryProject.Path)).Message.ShouldContain(expectedErrorMessage.ToString());
     }
 }
Exemple #2
0
 // graph with a cycle between 2->6->7->3->2
 public void ConstructBigGraphWithCycle()
 {
     using (var env = TestEnvironment.Create())
     {
         TransientTestFile entryProject = CreateProjectFile(env, 1, new[] { 2, 3, 4 });
         var proj2 = CreateProjectFile(env, 2, new[] { 5, 6 });
         var proj3 = CreateProjectFile(env, 3, new[] { 2, 8 });
         CreateProjectFile(env, 4);
         CreateProjectFile(env, 5, new [] { 9, 10 });
         var proj6 = CreateProjectFile(env, 6, new[] { 7 });
         var proj7 = CreateProjectFile(env, 7, new[] { 3 });
         CreateProjectFile(env, 8);
         CreateProjectFile(env, 9);
         CreateProjectFile(env, 10);
         var projectsInCycle = new List <string>()
         {
             proj2.Path, proj3.Path, proj7.Path, proj6.Path, proj2.Path
         };
         var errorMessage = ProjectGraph.FormatCircularDependencyError(projectsInCycle);
         Should.Throw <CircularDependencyException>(() => new ProjectGraph(entryProject.Path)).Message.ShouldContain(errorMessage.ToString());
     }
 }