public void AddExtensionsFromFile() { // arrange var builder = new MockStitchingBuilder(); // act builder.AddExtensionsFromFile( IOPath.Combine("__resources__", "Contract.graphql")) .AddExtensionsFromFile( IOPath.Combine("__resources__", "Customer.graphql")); // assert var services = new EmptyServiceProvider(); var merger = new SchemaMerger(); var list = new List <string>(); foreach (LoadSchemaDocument item in builder.Extensions) { list.Add(SchemaSyntaxSerializer.Serialize( item.Invoke(services))); } list.MatchSnapshot(); }
public void AddSchemaFromFile() { // arrange IHttpClientFactory clientFactory = CreateRemoteSchemas(); var builder = new MockStitchingBuilder(); // act builder.AddSchemaFromFile("contract", IOPath.Combine("__resources__", "Contract.graphql")) .AddSchemaFromFile("customer", IOPath.Combine("__resources__", "Customer.graphql")); // assert var services = new DictionaryServiceProvider( typeof(IHttpClientFactory), clientFactory); var merger = new SchemaMerger(); foreach (KeyValuePair <NameString, LoadSchemaDocument> item in builder.Schemas) { merger.AddSchema(item.Key, item.Value.Invoke(services)); } SchemaSyntaxSerializer.Serialize(merger.Merge()).MatchSnapshot(); }
public void AddSchema_2() { // arrange Schema customerSchema = Schema.Create( CustomerSchemaFactory.ConfigureSchema); Schema contractSchema = Schema.Create( ContractSchemaFactory.ConfigureSchema); var builder = new MockStitchingBuilder(); // act builder.AddSchema("customer", customerSchema) .AddSchema("contract", contractSchema); // assert var services = new EmptyServiceProvider(); var merger = new SchemaMerger(); foreach (KeyValuePair <NameString, ExecutorFactory> item in builder.Executors) { ISchema schema = item.Value.Invoke(services).Schema; merger.AddSchema(item.Key, SchemaSerializer.SerializeSchema(schema)); } SchemaSyntaxSerializer.Serialize(merger.Merge()).MatchSnapshot(); }
public void AddSchemaFromString_NameIsEmpty_ArgumentNullException() { // arrange var builder = new MockStitchingBuilder(); // act Action action = () => StitchingBuilderExtensions .AddSchemaFromString(builder, new NameString(), "bar"); // assert Assert.Equal("name", Assert.Throws <ArgumentException>(action).ParamName); }
public void AddExtensionsFromFile_SchemaIsNull_ArgumentNullException( string filePath) { // arrange var builder = new MockStitchingBuilder(); // act Action action = () => StitchingBuilderExtensions .AddExtensionsFromFile(builder, filePath); // assert Assert.Equal("path", Assert.Throws <ArgumentException>(action).ParamName); }
public void AddExtensionsFromString_SchemaIsNull_ArgumentNullException( string schema) { // arrange var builder = new MockStitchingBuilder(); // act Action action = () => StitchingBuilderExtensions .AddExtensionsFromString(builder, schema); // assert Assert.Equal("extensions", Assert.Throws <ArgumentException>(action).ParamName); }
public void AddSchema_2_SchemaNameIsEmpty_ArgumentNullException() { // arrange ISchema customerSchema = CustomerSchemaFactory.Create(); var builder = new MockStitchingBuilder(); // act Action action = () => StitchingBuilderExtensions .AddSchema(builder, new NameString(), customerSchema); // assert Assert.Equal("name", Assert.Throws <ArgumentException>(action).ParamName); }
public void AddSchema_2_SchemaIsNull_ArgumentNullException() { // arrange ISchema customerSchema = CustomerSchemaFactory.Create(); var builder = new MockStitchingBuilder(); // act Action action = () => StitchingBuilderExtensions .AddSchema(builder, "foo", null); // assert Assert.Equal("schema", Assert.Throws <ArgumentNullException>(action).ParamName); }
public void AddSchemaFromString() { // arrange var builder = new MockStitchingBuilder(); // act builder.AddSchemaFromString("contract", FileResource.Open("Contract.graphql")) .AddSchemaFromString("customer", FileResource.Open("Customer.graphql")); // assert var services = new EmptyServiceProvider(); var merger = new SchemaMerger(); foreach (KeyValuePair <NameString, LoadSchemaDocument> item in builder.Schemas) { merger.AddSchema(item.Key, item.Value.Invoke(services)); } SchemaSyntaxSerializer.Serialize(merger.Merge()).MatchSnapshot(); }