public void BuildAllTargetFrameworksGetsSourceFiles() { // Given StringWriter log = new StringWriter(); ProjectAnalyzer analyzer = GetProjectAnalyzer(@"SdkMultiTargetingProject\SdkMultiTargetingProject.csproj", log); // When AnalyzerResults results = analyzer.BuildAllTargetFrameworks(); // Then results.Count.ShouldBe(2); results.TargetFrameworks.ShouldBe(new[] { "net462", "netstandard2.0" }, true, log.ToString()); results["net462"].GetSourceFiles().Select(x => Path.GetFileName(x).Split('.').Reverse().Take(2).Reverse().First()).ShouldBe(new[] { "Class1", "AssemblyAttributes", "AssemblyInfo" }, true, log.ToString()); results["netstandard2.0"].GetSourceFiles().Select(x => Path.GetFileName(x).Split('.').Reverse().Take(2).Reverse().First()).ShouldBe(new[] { "Class2", "AssemblyAttributes", "AssemblyInfo" }, true, log.ToString()); }
public void SdkProjectWithPackageReferenceGetsReferences() { // Given StringWriter log = new StringWriter(); ProjectAnalyzer analyzer = GetProjectAnalyzer(@"SdkNetStandardProjectWithPackageReference\SdkNetStandardProjectWithPackageReference.csproj", log); // When IReadOnlyList <string> references = analyzer.BuildAllTargetFrameworks().First().GetReferences(); // Then references.ShouldNotBeNull(log.ToString()); references.ShouldContain(x => x.EndsWith("NodaTime.dll"), log.ToString()); }
public void GetsReferences(string projectFile) { // Given StringWriter log = new StringWriter(); ProjectAnalyzer analyzer = GetProjectAnalyzer(projectFile, log); // When IReadOnlyList <string> references = analyzer.BuildAllTargetFrameworks().First().GetReferences(); // Then references.ShouldNotBeNull(log.ToString()); references.ShouldContain(x => x.EndsWith("mscorlib.dll"), log.ToString()); }
public void DesignTimeBuildsProject(string projectFile) { // Given StringWriter log = new StringWriter(); ProjectAnalyzer analyzer = GetProjectAnalyzer(projectFile, log); // When DeleteProjectDirectory(projectFile, "obj"); DeleteProjectDirectory(projectFile, "bin"); AnalyzerResults results = analyzer.BuildAllTargetFrameworks(); // Then results.Count.ShouldBeGreaterThan(0, log.ToString()); results.First().ProjectInstance.ShouldNotBeNull(log.ToString()); }
public void GetsSourceFiles(string projectFile) { // Given StringWriter log = new StringWriter(); ProjectAnalyzer analyzer = GetProjectAnalyzer(projectFile, log); // When IReadOnlyList <string> sourceFiles = analyzer.BuildAllTargetFrameworks().First().GetSourceFiles(); // Then sourceFiles.ShouldNotBeNull(log.ToString()); sourceFiles.Select(x => Path.GetFileName(x).Split('.').TakeLast(2).First()).ShouldBe(new[] { "Class1", "AssemblyAttributes", "AssemblyInfo" }, true, log.ToString()); }