示例#1
0
        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();
        }
示例#2
0
 private static void AddSchemasFromExecutors(
     IDictionary <NameString, DocumentNode> schemas,
     IEnumerable <IRemoteExecutorAccessor> accessors)
 {
     foreach (IRemoteExecutorAccessor accessor in accessors)
     {
         schemas[accessor.SchemaName] =
             SchemaSerializer.SerializeSchema(
                 accessor.Executor.Schema);
     }
 }
示例#3
0
 public DocumentNode ToDocument(bool includeSpecScalars = false) =>
 SchemaSerializer.SerializeSchema(this, includeSpecScalars);