private GraphQLClient BuildTestClient(string schemaSubset) { var partialSchemaProvider = new PartialSchemaProvider(); partialSchemaProvider.WithSchema(schemaSubset); var schemaValidator = new SchemaValidator(new FieldValidator(new TypeValidator(new [] { "GraphQL.Client.tests.TestTypes" }))); return(new GraphQLClient( Substitute.For <IGraphQLRequestExecutor>(), Substitute.For <IRequestBuilder>(), Substitute.For <IResultBuilder>(), partialSchemaProvider, schemaValidator)); }
private static IServiceCollection AddBaseGraphQLClientServices( this IServiceCollection services, string schema, IEnumerable <string> modelNamespaces = null) { services.AddTransient <IFieldValidator, FieldValidator>(); services.AddTransient <ISchemaValidator, SchemaValidator>(); var typeValidator = new TypeValidator(modelNamespaces ?? new List <string>()); services.AddSingleton <ITypeValidator>(typeValidator); services.AddTransient <IRequestBuilder, RequestBuilder>(); services.AddTransient <IResultBuilder, ResultBuilder>(); var schemaPrivider = new PartialSchemaProvider(); schemaPrivider.WithSchema(schema); services.AddSingleton <IPartialSchemaProvider>(schemaPrivider); return(services); }