anchor.diff:  ///     !! (buildDir @@ buildMode @@ "/*.Unit.Tests.dll") 
   ///         |> DotCoverMSpec 
   ///             (fun dotCoverOptions -> { dotCoverOptions with 
  -///                     Output = artifactsDir @@ "MSpecDotCover.snapshot" }) 
  +///                     Output = artifactsDir @@ "MSpecDotCoverSnapshot.dcvr" }) 
   ///             (fun mSpecOptions -> { mSpecOptions with
   ///                     Silent = true })
   let DotCoverMSpec (setDotCoverParams: DotCoverParams -> DotCoverParams) (setMSpecParams: MSpecParams -> MSpecParams) (assemblies: string seq) =
  
positive.code:               info.Arguments <- args) TimeSpan.MaxValue
      if result <> 0 then failwithf "Error running %s" toolPath
  
  /// Runs the DotCover "cover" command, using a target executable (such as NUnit or MSpec) and generates a snapshot file.
  ///
  /// ## Parameters
  ///
  ///  - `setParams` - Function used to overwrite the DotCover default parameters.
  let DotCover (setParams: DotCoverParams -> DotCoverParams) =
      let parameters = (DotCoverDefaults |> setParams)
      buildParamsAndExecute parameters buildDotCoverArgs parameters.ToolPath parameters.WorkingDir
  
  /// Runs the DotCover "merge" command. This combines dotCover snaphots into a single
  /// snapshot, enabling you to merge test coverage from multiple test running frameworks
  /// ## Parameters
  ///
  ///  - `setParams` - Function used to overwrite the DotCover merge default parameters.
  ///
  /// ## Sample
  ///
  ///     DotCoverMerge (fun p -> { p with 
  ///                         Source = [artifactsDir @@ "NUnitDotCover.snapshot"
  ///                                   artifactsDir @@ "MSpecDotCover.snapshot"]
  ///                         Output = artifactsDir @@ "DotCover.snapshot" }) 
  let DotCoverMerge (setParams: DotCoverMergeParams -> DotCoverMergeParams) =
      let parameters = (DotCoverMergeDefaults |> setParams)
      buildParamsAndExecute parameters buildDotCoverMergeArgs parameters.ToolPath parameters.WorkingDir
     
  /// Runs the DotCover "report" command. This generates a report from a DotCover snapshot
  /// ## Parameters
  ///
  ///  - `setParams` - Function used to overwrite the DotCover report default parameters.
  ///
  /// ## Sample
  ///
  ///     DotCoverReport (fun p -> { p with 
  ///                         Source = artifactsDir @@ "DotCover.snapshot"
  ///                         Output = artifactsDir @@ "DotCover.xml"
  ///                         ReportType = DotCoverReportType.Xml })
  let DotCoverReport (setParams: DotCoverReportParams -> DotCoverReportParams) =
      let parameters = (DotCoverReportDefaults |> setParams)
      buildParamsAndExecute parameters buildDotCoverReportArgs parameters.ToolPath parameters.WorkingDir
  
  /// Runs the DotCover "cover" command against the NUnit test runner.
  /// ## Parameters
  ///
  ///  - `setDotCoverParams` - Function used to overwrite the DotCover report default parameters.
  ///  - `setNUnitParams` - Function used to overwrite the NUnit default parameters.
  ///
  /// ## Sample
  
negative.code: 
      traceEndTask "DotCoverNUnit" details
  
  /// Runs the dotCover "cover" command against the MSpec test runner.
  /// ## Parameters
  ///
  ///  - `setDotCoverParams` - Function used to overwrite the dotCover report default parameters.
  ///  - `setMSpecParams` - Function used to overwrite the MSpec default parameters.
  ///
  /// ## Sample
  