anchor.diff:                      // Since the PublishToNuget step "succeeded", we no longer revert the changelog from that point on
                       Assert.``CHANGELOG does not contain Unreleased section``
                       ]
  -                "-n GitHubReleaseFail --githubUsername TestAccount", [
  +                testCase, "-n GitHubReleaseFail --githubUsername TestAccount", [
                       Effect.``setup for release tests``
                       Effect.``disable publishToNuget function`` // Simulates success, since it would fail due to NUGET_API being unset
                       Effect.``make build function fail`` "githubRelease"
  
positive.code:         testList "samples" [
              do setup ()
              yield! [
                  "-n MyCoolLib --githubUsername CoolPersonNo2", [
                      yield! projectStructureAsserts
                      Assert.``project can build target`` "DotnetPack"
                      Assert.``project can build target`` "BuildDocs"
                      ]
                  // test for dashes in name https://github.com/dotnet/templating/issues/1168#issuecomment-364592031
                  "-n fsharp-data-sample --githubUsername CoolPersonNo2", [
                      yield! projectStructureAsserts
                      Assert.``project can build target`` "DotnetPack"
                      ]
                  "-n MyCoolApp --githubUsername CoolPersonNo2 --outputType Console", [
                      yield! projectStructureAsserts
                      Assert.``project can build target`` "CreatePackages"
                      ]
                  // Test that CHANGELOG.md is not modified during build failures,
                  // *unless* at least one step has pushed a release to the outside world.
                  "-n DotnetRestoreFail --githubUsername TestAccount", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let dotnetRestore"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  "-n AssemblyInfoFail --githubUsername TestAccount", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let generateAssemblyInfo"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  "-n DotnetBuildFail --githubUsername TestAccount", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let dotnetBuild"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  "-n DotnetTestFail --githubUsername TestAccount", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let dotnetTest"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  // "-n CoverageReportFail --githubUsername TestAccount", [
                  //     Effect.``setup for release tests``
                  //     Effect.``make build function fail`` "let generateCoverageReport"
                  //     Assert.``CHANGELOG contains Unreleased section``
                  //     Assert.``build target with failure expected`` "Release"
                  //     Assert.``CHANGELOG contains Unreleased section``
                  //     ]
                  "-n DotnetPackFail --githubUsername TestAccount", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let dotnetPack"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  // "-n SourceLinkTestFail --githubUsername TestAccount", [
                  //     Effect.``setup for release tests``
                  //     Effect.``make build function fail`` "let sourceLinkTest"
                  //     Assert.``CHANGELOG contains Unreleased section``
                  //     Assert.``build target with failure expected`` "Release"
                  //     Assert.``CHANGELOG contains Unreleased section``
                  //     ]
                  "-n PublishToNugetFail --githubUsername TestAccount", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let publishToNuget"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  "-n PublishToNugetSuccess --githubUsername TestAccount", [
                      Effect.``setup for release tests``
                      Effect.``disable publishToNuget function`` // Simulates success, since it would fail due to NUGET_API being unset
                      Assert.``CHANGELOG contains Unreleased section``
  
negative.code:                     Assert.``CHANGELOG does not contain Unreleased section``
                      ]
  
                  testCase, "-n DotnetRestoreFail --githubUsername TestAccount --outputType Console", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let dotnetRestore"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  testCase, "-n AssemblyInfoFail --githubUsername TestAccount --outputType Console", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let generateAssemblyInfo"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  testCase, "-n DotnetBuildFail --githubUsername TestAccount --outputType Console", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let dotnetBuild"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  testCase, "-n DotnetTestFail --githubUsername TestAccount --outputType Console", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let dotnetTest"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  // testCase,"-n CoverageReportFail --githubUsername TestAccount --outputType Console", [
                  //     Effect.``setup for release tests``
                  //     Effect.``make build function fail`` "let generateCoverageReport"
                  //     Assert.``CHANGELOG contains Unreleased section``
                  //     Assert.``build target with failure expected`` "Release"
                  //     Assert.``CHANGELOG contains Unreleased section``
                  //     ]
                  testCase, "-n CreatePackagesFail --githubUsername TestAccount --outputType Console", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let createPackages"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  testCase, "-n GitReleaseFail --githubUsername TestAccount --outputType Console", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let gitRelease"
                      Assert.``CHANGELOG contains Unreleased section``
                      Assert.``build target with failure expected`` "Release"
                      Assert.``CHANGELOG contains Unreleased section``
                      ]
                  testCase, "-n GitHubReleaseFail --githubUsername TestAccount --outputType Console", [
                      Effect.``setup for release tests``
                      Effect.``make build function fail`` "let githubRelease"
                      Effect.``disable pushing in gitRelease function``
  