anchor.diff:          helper.SetUpProjectAndCurrentDocument(VirtualProjectProvider(buffer, fileName), fileName)
           let classifier = helper.GetClassifier(buffer)
           testEvent classifier.ClassificationChanged "Timed out before classification changed" timeout <| fun _ ->
  -            helper.ClassificationSpansOf(buffer, classifier)
  -            |> Seq.toList
  -            |> assertEqual
  -                [ { Classification = "FSharp.Function"; Span = (2, 5) => (2, 18) }
  -                  { Classification = "FSharp.Operator"; Span = (2, 26) => (2, 26) }
  -                  { Classification = "FSharp.Operator"; Span = (2, 22) => (2, 22) }
  -                  { Classification = "FSharp.Operator"; Span = (3, 23) => (3, 23) }
  -                  { Classification = "FSharp.ReferenceType"; Span = (3, 25) => (3, 35) }
  -                  { Classification = "FSharp.ValueType"; Span = (3, 37) => (3, 39) } 
  -                  { Classification = "FSharp.MutableVar"; Span = (4, 13) => (4, 24) }
  -                  { Classification = "FSharp.Operator"; Span = (4, 26) => (4, 26) }
  -                  { Classification = "FSharp.PatternCase"; Span = (5, 7) => (5, 19) }
  -                  { Classification = "FSharp.Operator"; Span = (5, 27) => (5, 27) } 
  -                  { Classification = "FSharp.PatternCase"; Span = (5, 29) => (5, 32) }
  -                  { Classification = "FSharp.Operator"; Span = (6, 7) => (6, 7) }
  -                  { Classification = "FSharp.Quotation"; Span = (6, 9) => (6, 19) } 
  -                  { Classification = "FSharp.Operator"; Span = (6, 14) => (6, 14) }
  -                  { Classification = "FSharp.Module"; Span = (7, 8) => (7, 14) } 
  -                  { Classification = "FSharp.Operator"; Span = (7, 16) => (7, 16) }
  -                  { Classification = "FSharp.Operator"; Span = (8, 11) => (8, 11) }] 
  +        let actual = helper.ClassificationSpansOf(buffer, classifier) |> Seq.toList
  +        let expected =
  +            [ { Classification = "FSharp.Function"; Span = (2, 5) => (2, 18) }
  +              { Classification = "FSharp.Operator"; Span = (2, 22) => (2, 22) }
  +              { Classification = "FSharp.Operator"; Span = (2, 26) => (2, 26) }
  +              { Classification = "FSharp.Operator"; Span = (3, 23) => (3, 23) }
  +              { Classification = "FSharp.ReferenceType"; Span = (3, 25) => (3, 35) }
  +              { Classification = "FSharp.ValueType"; Span = (3, 37) => (3, 39) } 
  +              { Classification = "FSharp.MutableVar"; Span = (4, 13) => (4, 24) }
  +              { Classification = "FSharp.Operator"; Span = (4, 26) => (4, 26) }
  +              { Classification = "FSharp.PatternCase"; Span = (5, 7) => (5, 19) }
  +              { Classification = "FSharp.Operator"; Span = (5, 27) => (5, 27) } 
  +              { Classification = "FSharp.PatternCase"; Span = (5, 29) => (5, 32) }
  +              { Classification = "FSharp.Operator"; Span = (6, 7) => (6, 7) }
  +              { Classification = "FSharp.Quotation"; Span = (6, 9) => (6, 19) } 
  +              { Classification = "FSharp.Operator"; Span = (6, 14) => (6, 14) }
  +              { Classification = "FSharp.Module"; Span = (7, 8) => (7, 14) } 
  +              { Classification = "FSharp.Operator"; Span = (7, 16) => (7, 16) }
  +              { Classification = "FSharp.Operator"; Span = (8, 11) => (8, 11) }] 
  +        CollectionAssert.AreEquivalent(expected, actual)
   
       [<Test>]
       let ``should be able to get classification spans for unused items``() = 
  
positive.code: 
          // second event is raised when all spans, including Unused are ready
          testEvent classifier.ClassificationChanged "Timed out before classification changed" timeout <| fun _ ->
              helper.ClassificationSpansOf(buffer, classifier)
              |> Seq.toList
              |> assertEqual
                  [ { Classification = "FSharp.Unused"; Span = (2, 6) => (2, 11) };
                    { Classification = "FSharp.Unused"; Span = (3, 6) => (3, 31) };
                    { Classification = "FSharp.Unused"; Span = (4, 14) => (4, 14) } ]
          File.Delete(fileName)
          
  
  
negative.code:                   { Classification = "FSharp.Function"; Span = (7, 59, 7, 67) }
                    { Classification = "FSharp.Operator"; Span = (7, 71, 7, 72) } 
                    { Classification = "FSharp.Function"; Span = (7, 74, 7, 79) } ]
              CollectionAssert.AreEquivalent(expected, actual)
  