Example #1
0
        public void  ShouldReportAllProjectsAsync()
        {
            using (var workspace = MSBuildWorkspace.Create())
            {
                var sln    = workspace.OpenSolutionAsync("..\\..\\..\\..\\..\\Docs.sln").Result;
                var walker = new SolutionWalker();

                var got = new Progress();
                walker.Walk(sln, got, got);

                Xunit.Assert.Equal(
                    new string[] { "Docs.Interfaces", "Docs.Api", "Docs.Client" },
                    got.Projects.Select(p => p.Name).ToArray());
            }
        }
Example #2
0
        public void  ShouldReportAllProjectDependenciesAsync()
        {
            using (var workspace = MSBuildWorkspace.Create())
            {
                var sln = workspace.OpenSolutionAsync("..\\..\\..\\..\\..\\Docs.sln").Result;

                var walker = new SolutionWalker();

                var got = new Progress();
                walker.Walk(sln, got, got);

                Xunit.Assert.Equal(
                    new string[][] {
                    new string[] { "Docs.Api", "Docs.Interfaces" },
                    new string[] { "Docs.Client", "Docs.Api" },
                    new string[] { "Docs.Client", "Docs.Interfaces" },
                },
                    got.DepensOn
                    .Select(p => new string[] { p.Item1.Name, p.Item2.Name })
                    .OrderBy(k => string.Join('+', k))
                    .ToArray());
            }
        }