Esempio n. 1
0
        public void SyncSourceMethodGenerator_GenerateWithTwoArgument()
        {
            // arrange
            FieldResolverArgumentDescriptor argumentDescriptor1 =
                FieldResolverArgumentDescriptor.Create("a",
                                                       FieldResolverArgumentKind.Argument,
                                                       typeof(string));

            FieldResolverArgumentDescriptor argumentDescriptor2 =
                FieldResolverArgumentDescriptor.Create("b",
                                                       FieldResolverArgumentKind.Argument,
                                                       typeof(int));

            MethodInfo method = typeof(GeneratorTestDummy).GetMethods()
                                .Single(t => t.Name == "GetFoo" && t.GetParameters().Length == 2);
            FieldResolverDescriptor descriptor = FieldResolverDescriptor
                                                 .CreateSourceMethod(new FieldReference("Foo", "bar"),
                                                                     method.ReflectedType, method, false,
                                                                     new[] { argumentDescriptor1, argumentDescriptor2 });

            // act
            StringBuilder             source    = new StringBuilder();
            SyncSourceMethodGenerator generator = new SyncSourceMethodGenerator();
            string result = generator.Generate("abc", descriptor);

            // assert
            Assert.Equal(Snapshot.Current(), Snapshot.New(result));
        }
        public void SyncSourceMethodGenerator_GenerateWithTwoArgument()
        {
            // arrange
            var fieldMember = new FieldMember(
                "Foo", "bar",
                GetMethod <GeneratorTestDummy>("GetFoo", 2));

            var descriptor = new SourceResolverDescriptor(fieldMember);

            // act
            var    source    = new StringBuilder();
            var    generator = new SyncSourceMethodGenerator();
            string result    = generator.Generate("abc", descriptor);

            // assert
            result.MatchSnapshot();
        }
        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));
        }
Esempio n. 4
0
        public void SyncSourceMethodGenerator_GenerateWithoutArguments()
        {
            // arrange
            MethodInfo method = typeof(GeneratorTestDummy).GetMethods()
                                .Single(t => t.Name == "GetFoo" && t.GetParameters().Length == 0);
            FieldResolverDescriptor descriptor = FieldResolverDescriptor
                                                 .CreateSourceMethod(new FieldReference("Foo", "bar"),
                                                                     method.ReflectedType, method, false,
                                                                     Enumerable.Empty <FieldResolverArgumentDescriptor>());

            // act
            StringBuilder             source    = new StringBuilder();
            SyncSourceMethodGenerator generator = new SyncSourceMethodGenerator();
            string result = generator.Generate("abc", descriptor);

            // assert
            Assert.Equal(Snapshot.Current(), Snapshot.New(result));
        }