anchor.diff:              TimeOut = TimeSpan.FromMinutes 20.
               ToolPath = "./packages/test/NUnit.ConsoleRunner/tools/nunit3-console.exe"
               OutputDir = "TestResults.xml" })
  -
  -)
  -
  -// For each test project file, generate a new "RunTest_Xyz" which
  -// runs the test (to process them sequentially which is needed in Travis)
  -// for name in testProjects do
  -//     let taskName = sprintf "RunTest_%s" name
  -//     Target taskName <| fun () ->
  -//         !! (sprintf "tests/*/bin/Release/%s.dll" name)
  -//         |> NUnit3 (fun p ->
  -//             { p with
  -//                 ShadowCopy = true
  -//                 TimeOut = TimeSpan.FromMinutes 20.
  -//                 ToolPath = "./packages/test/NUnit.ConsoleRunner/tools/nunit3-console.exe"
  -//                 OutputDir = "TestResults.xml" })
  -//     taskName ==> "RunTests" |> ignore
  -//     "BuildTests" ==> taskName |> ignore
  +)
   
   // --------------------------------------------------------------------------------------
   // Build a NuGet package
  
positive.code: // --------------------------------------------------------------------------------------
  
  Target "BuildTests" (fun _ ->
      {   BaseDirectory = __SOURCE_DIRECTORY__
          Includes = ["FSharp.Formatting.sln"]
          Excludes = []
      }   |> MSBuildRelease "" "Build"
          |> ignore
  
      { BaseDirectory = __SOURCE_DIRECTORY__
        Includes = ["tests/*/files/FsLib/FsLib.sln"]
        Excludes = [] }
      |> MSBuildDebug "" "Build"
      |> ignore
  
      { BaseDirectory = __SOURCE_DIRECTORY__
        Includes = ["tests/*/files/crefLib/crefLib.sln"]
        Excludes = [] }
      |> MSBuildDebug "" "Build"
      |> ignore
  
      { BaseDirectory = __SOURCE_DIRECTORY__
        Includes = ["tests/*/files/csharpSupport/csharpSupport.sln"]
        Excludes = [] }
      |> MSBuildDebug "" "Build"
      |> ignore
  
      { BaseDirectory = __SOURCE_DIRECTORY__
        Includes = ["tests/*/files/TestLib/TestLib.sln"]
        Excludes = [] }
      |> MSBuildDebug "" "Build"
      |> ignore
  )
  
  open Fake.Testing
  
  let testProjects =
    [ "FSharp.CodeFormat.Tests"; "FSharp.Literate.Tests";
      "FSharp.Markdown.Tests"; "FSharp.MetadataFormat.Tests" ]
  
  let testAssemblies =
      [   "FSharp.CodeFormat.Tests"; "FSharp.Literate.Tests";
          "FSharp.Markdown.Tests"; "FSharp.MetadataFormat.Tests" ]
      |> List.map (fun asm -> sprintf "tests/%s/bin/Release/%s.dll" asm asm)
  
  Target "RunTests" (fun _ ->
      testAssemblies
  
negative.code:   CreateCSharpAssemblyInfo "src/Common/AssemblyInfo.cs" info
  )
  
  
  // Clean build results
  // --------------------------------------------------------------------------------------
  
  Target "Clean" (fun _ ->
      !! "bin"
  