Exemplo n.º 1
0
        private MemberDeclarationSyntax ExplicitInterfaceMember()
        {
            var mockedProperty = F.EventDeclaration(EventHandlerTypeSyntax, Symbol.Name)
                                 .WithExplicitInterfaceSpecifier(F.ExplicitInterfaceSpecifier(TypesForSymbols.ParseName(InterfaceSymbol)));

            mockedProperty = mockedProperty.AddAccessorListAccessors(F.AccessorDeclaration(SyntaxKind.AddAccessorDeclaration)
                                                                     .WithExpressionBody(F.ArrowExpressionClause(F.InvocationExpression(
                                                                                                                     F.MemberAccessExpression(SyntaxKind.SimpleMemberAccessExpression, F.IdentifierName(MemberMockName),
                                                                                                                                              F.IdentifierName("Add")))
                                                                                                                 .WithExpressionsAsArgumentList(F.IdentifierName("value"))))
                                                                     .WithSemicolonToken(F.Token(SyntaxKind.SemicolonToken))
                                                                     );

            mockedProperty = mockedProperty.AddAccessorListAccessors(F.AccessorDeclaration(SyntaxKind.RemoveAccessorDeclaration)
                                                                     .WithExpressionBody(F.ArrowExpressionClause(F.InvocationExpression(
                                                                                                                     F.MemberAccessExpression(SyntaxKind.SimpleMemberAccessExpression,
                                                                                                                                              F.IdentifierName(MemberMockName), F.IdentifierName("Remove")))
                                                                                                                 .WithExpressionsAsArgumentList(F.IdentifierName("value"))))
                                                                     .WithSemicolonToken(F.Token(SyntaxKind.SemicolonToken)));

            return(mockedProperty);
        }