コード例 #1
0
    public void ProcessesVisitorTypes(Type type)
    {
        var forMethod = forMethodGeneric.MakeGenericMethod(type);
        var substitute = (IMessageSinkMessage)forMethod.Invoke(null, new object[] { new object[0] });
        var visitor = new SpyTestMessageVisitor();

        visitor.OnMessage(substitute);

        Assert.Collection(visitor.Calls,
            msg => Assert.Equal(type.Name, msg)
        );
    }
コード例 #2
0
    public void ProcessesVisitorTypes(Type type)
    {
        var forMethod  = forMethodGeneric.MakeGenericMethod(type);
        var substitute = (IMessageSinkMessage)forMethod.Invoke(null, new object[] { new object[0] });
        var visitor    = new SpyTestMessageVisitor();

        visitor.OnMessage(substitute);

        Assert.Collection(visitor.Calls,
                          msg => Assert.Equal(type.Name, msg)
                          );
    }
コード例 #3
0
    public void ProcessesVisitorTypes(Type type)
    {
        var forMethodGeneric = typeof(Substitute).GetMethods().Single(m => m.Name == "For" && m.IsGenericMethodDefinition && m.GetGenericArguments().Length == 1);
        var forMethod = forMethodGeneric.MakeGenericMethod(type);
        var substitute = (IMessageSinkMessage)forMethod.Invoke(null, new object[] { new object[0] });
        var visitor = new SpyTestMessageVisitor();

        visitor.OnMessage(substitute);

        Assert.Collection(visitor.Calls,
            msg => Assert.Equal(type.Name, msg)
        );
    }