public void throws_informative_exception_when_no_types_defined_on_more_generic_type() { var type = new ComplexType <List <Droid> >(); var fieldType = new GenericFieldType <List <Droid> > { Name = "genericname", ResolvedType = null, Type = null, }; var exception = Should.Throw <ArgumentOutOfRangeException>(() => type.AddField(fieldType)); exception.ParamName.ShouldBe("Type"); exception.Message.ShouldStartWith("The declared field 'genericname' on 'List<Droid>' requires a field 'Type' when no 'ResolvedType' is provided."); }