error[E0277]: the trait bound `Test: GraphQLObject<__S>` is not satisfied
  --> fail/union/trait_non_object_variant.rs:11:28
   |
11 |     fn a(&self) -> Option<&Test>;
   |                            ^^^^ the trait `GraphQLObject<__S>` is not implemented for `Test`
   |
   = help: the following other types implement trait `GraphQLObject<S>`:
             `&T` implements `GraphQLObject<S>`
             `Arc<T>` implements `GraphQLObject<S>`
             `Argument<'a, S>` implements `GraphQLObject<S>`
             `Box<T>` implements `GraphQLObject<S>`
             `EnumValue` implements `GraphQLObject<__S>`
             `SchemaType<'a, S>` implements `GraphQLObject<S>`
             `juniper::meta::Field<'a, S>` implements `GraphQLObject<S>`
             `juniper::schema::model::DirectiveType<'a, S>` implements `GraphQLObject<S>`
             `juniper::schema::model::TypeType<'a, S>` implements `GraphQLObject<S>`