public void CreateSourcePropertyResolver() { // arrange var context = new Mock <IResolverContext>(MockBehavior.Strict); context.Setup(t => t.Parent <FooType>()) .Returns(new FooType()); context.Setup(t => t.RequestAborted) .Returns(CancellationToken.None); var fieldMember = new FieldMember( "type", "field", typeof(FooType).GetProperty("BarProperty")); var descriptor = new SourceResolverDescriptor( typeof(FooType), fieldMember); // act var resolverBuilder = new ResolverBuilder(); resolverBuilder.AddDescriptor(descriptor); ResolverBuilderResult result = resolverBuilder.Build(); // assert Assert.Collection(result.Resolvers, r => { Assert.Equal("type", r.TypeName); Assert.Equal("field", r.FieldName); Assert.NotNull(r.Resolver); object resolvedResult = r.Resolver( context.Object).Result; Assert.Equal("Hello World Property", resolvedResult); }); }
public void AsyncSourceMethodGenerator_GenerateWithTwoArgument() { // arrange var fieldMember = new FieldMember( "Foo", "bar", GetMethod <GeneratorTestDummy>("GetFooAsync", 2)); var descriptor = new SourceResolverDescriptor(fieldMember); // act var source = new StringBuilder(); var generator = new AsyncSourceMethodGenerator(); string result = generator.Generate("abc", descriptor); // assert result.Snapshot(); }
public void SyncSourceMethodGenerator_GenerateWithOneArgument() { // arrange var fieldMember = new FieldMember( "Foo", "bar", GetMethod <GeneratorTestDummy>("GetFoo", 1)); var descriptor = new SourceResolverDescriptor(fieldMember); // act var source = new StringBuilder(); var generator = new SyncSourceMethodGenerator(); string result = generator.Generate("abc", descriptor); // assert Assert.Equal(Snapshot.Current(), Snapshot.New(result)); }
public void SourcePropertyGenerator_Generate() { // arrange var fieldMember = new FieldMember( "Foo", "bar", GetProperty()); var descriptor = new SourceResolverDescriptor(fieldMember); // act var source = new StringBuilder(); var generator = new SourcePropertyGenerator(); string result = generator.Generate("abc", descriptor); // assert Assert.Equal(Snapshot.Current(), Snapshot.New(result)); }