anchor.diff:          @ typeNameTests
           @ reflectionTests
           @ injectTests
  -    )+    )
  
positive.code:         let y: R2 = Helper.Make [|box 10|]
          equal x { x = 5 }
          equal y { y = 10 }
  ]
  #else
  let injectTests = []
  #endif
  
  let tests =
      testList "Reflection tests" (
  
negative.code:     static member Make(values: obj[], [<Inject>] ?res: ITypeResolver<'U>) =
          let t = res.Value.ResolveType()
          FSharpValue.MakeRecord(t, values) :?> 'U
          
  type Maybe<'t> = 
      | Just of 't
      | Nothing 
  
  // The !!!NAME!!! of this type fails with somethings, I don't know
  type RecWithGenDU<'t> = { Other: 't; Value : Maybe<string> }
  // But this one works, very weird
  type GenericTestRecord<'t> = { Other: 't; Value : Maybe<string> }
  
  // helper class to extract the name of an injected type
  type Types() = 
      static member getNameOf<'t> ([<Inject>] ?resolver: ITypeResolver<'t>) : string = 
          let resolvedType = resolver.Value.ResolveType()
          resolvedType.Name
  
  let injectTests = [
      testCase "ITypeResolver can be injected" <| fun () ->
  