public void HasServiceableFlagWhenArgumentPassed() { var testInstance = _testAssetsManager.CopyTestAsset("TestLibraryWithConfiguration") .WithSource(); var packCommand = new DotnetPackCommand(Log) .WithWorkingDirectory(testInstance.Path); var result = packCommand.Execute("-c", "Debug", "--serviceable"); result.Should().Pass(); var outputDir = new DirectoryInfo(Path.Combine(testInstance.Path, "bin", "Debug")); outputDir.Should().Exist() .And.HaveFile("TestLibraryWithConfiguration.1.0.0.nupkg"); var outputPackage = new FileInfo(Path.Combine(outputDir.FullName, "TestLibraryWithConfiguration.1.0.0.nupkg")); var zip = ZipFile.Open(outputPackage.FullName, ZipArchiveMode.Read); zip.Entries.Should().Contain(e => e.FullName == "TestLibraryWithConfiguration.nuspec"); var manifestReader = new StreamReader(zip.Entries.First(e => e.FullName == "TestLibraryWithConfiguration.nuspec").Open()); var nuspecXml = XDocument.Parse(manifestReader.ReadToEnd()); var node = nuspecXml.Descendants().Single(e => e.Name.LocalName == "serviceable"); Assert.Equal("true", node.Value); }
public void OutputsPackagesToConfigurationSubdirWhenOutputParameterIsNotPassed() { var testInstance = _testAssetsManager.CopyTestAsset("TestLibraryWithConfiguration") .WithSource(); var packCommand = new DotnetPackCommand(Log) .WithWorkingDirectory(testInstance.Path); var result = packCommand.Execute("-c", "Test"); result.Should().Pass(); var outputDir = new DirectoryInfo(Path.Combine(testInstance.Path, "bin", "Test")); outputDir.Should().Exist() .And.HaveFiles(new [] { "TestLibraryWithConfiguration.1.0.0.nupkg" }); }