anchor.diff:      |> should equal """
   [<Literal>]
   let private assemblyConfig() =
  -#if TRACE
  - 
  +#if TRACE 
       let x = ""
   #else
       let x = "x"
   #endif
       
       x
  -"""+"""
  +
  +[<Test>]
  +let ``should break line after single directive``() =
  +    formatSourceString false """
  +#nowarn "47"
  +namespace Internal.Utilities.Text.Lexing"""  config
  +    |> prepend newline
  +    |> should equal """
  +#nowarn "47"
  +
  +namespace Internal.Utilities.Text.Lexing
  +
  +"""
  +
  +[<Test>]
  +let ``should handle endif directives with no newline``() =
  +    formatSourceString false """
  +namespace Internal.Utilities.Diagnostic
  +
  +#if EXTENSIBLE_DUMPER
  +#if DEBUG
  +
  +type ExtensibleDumper = A | B
  +
  +#endif  
  +#endif"""  config
  +    |> prepend newline
  +    |> should equal """
  +namespace Internal.Utilities.Diagnostic
  +#if EXTENSIBLE_DUMPER
  +#if DEBUG
  +type ExtensibleDumper = A | B
  +#endif
  +
  +#endif
  +
  +
  +"""
  
positive.code: [<Literal>]
  let private assemblyConfig =
  #if DEBUG
  
  #if TRACE
   
      "DEBUG;TRACE"
  #else
      "DEBUG"
  
negative.code:     |> should equal """
  let x = 1
  #if SILVERLIGHT
  let useHiddenInitCode = false
  #else
  let useHiddenInitCode = true
  