anchor.diff:                      (docEventListener :> IDisposable).Dispose()
   """ 
       //|> parseTree
  -    => [ 2, 15, 27, 63     // MyModule
  -         4, 13, 5, 10
  -         7, 14, 15, 59     // Color
  -         13, 29, 15, 59
  +    => [ (2, 15, 27, 63)  // MyModule
  +         (4, 13, 5, 10)
  +         (7, 14, 15, 59)  // Color
  +         (8, 8, 11, 9)
  +         (13, 29, 15, 59)
            (14, 19, 15, 59)
  -         (14, 31, 15, 59)
  -         17, 24, 27, 63    // MyInnerModule
  -         19, 24, 27, 63    // RecordColor
  -         25, 33, 27, 63
  +         (14, 31, 15, 59)  // MyInnerModule
  +         (17, 24, 27, 63)  // RecordColor
  +         (19, 24, 27, 63)
  +         (20, 12, 23, 13)
  +         (25, 33, 27, 63)
            (26, 23, 27, 63)
            (26, 35, 27, 63)]
       
  
positive.code:     interface IDisposable with
          member __.Dispose() =
              (docEventListener :> IDisposable).Dispose()
  """
      => [ 2, 10, 10, 55
           8, 25, 10, 55
           (9, 15, 10, 55)
           (9, 27, 10, 55)]
  
  [<Test>]
  let ``type with a do block``() =
  
negative.code:                 getOutliningRanges tree
                  |> Seq.filter (fun sr-> sr.Range.StartLine <> sr.Range.EndLine)
                  |> Seq.map (fun r ->  r.Range.StartLine, r.Range.StartColumn, r.Range.EndLine, r.Range.EndColumn)
                  |> Seq.iter (fun x -> printfn "%s" <| string x)
          | None -> failwithf "Expected there to be a parse tree for source:\n%s" source
      with _ ->
          printfn "Parse of string into AST failed\nAST:\n%+A" ast
  