anchor.diff:  nuget A 1.0
   nuget B
   nuget C 1.0
  -nuget D 1.0""" |> DependenciesFile.FromSource
  +nuget D 1.0
  +nuget E prerelease
  +nuget F simplify:never""" |> DependenciesFile.FromSource
   
   let projects0 = [
  -    ReferencesFile.FromLines [|"A";"B";"C";"D"|]
  +    ReferencesFile.FromLines [|"A";"B";"C";"D";"E";"F"|]
       ReferencesFile.FromLines [|"B";"C copy_local: true"; "D" |] ] |> List.zip [dummyProjectFile(); dummyProjectFile()]
   
   [<Test>]
  
positive.code:     A (1.0)
        B (1.0)
        C (1.0)
      B (1.0)
      C (1.0)
      D (1.0)
        B (1.0)
        C (1.0)""" |> (fun x -> LockFile.Parse("", toLines x)) |> Some
  
  let depFile0 = """
  source http://www.nuget.org/api/v2
  
negative.code:         failwith (String.concat Environment.NewLine (msgs |> List.map string))
      | Chessie.ErrorHandling.Ok((_,after),_) ->
          let depFile,refFiles = after.DependenciesFile, after.Projects |> List.map snd
          depFile.Groups.[Constants.MainDependencyGroup].Packages |> List.map (fun p -> p.Name) |> shouldEqual [PackageName"A";PackageName"C";PackageName"D";PackageName"E";PackageName"F"]
          refFiles.Head.Groups.[Constants.MainDependencyGroup].NugetPackages |> shouldEqual [PackageInstallSettings.Default("A"); PackageInstallSettings.Default("D")]
          refFiles.Tail.Head.Groups.[Constants.MainDependencyGroup].NugetPackages |> shouldEqual [{ PackageInstallSettings.Default("C") with Settings = {PackageInstallSettings.Default("C").Settings with CopyLocal = Some true}}; PackageInstallSettings.Default("D")]
  
  