コード例 #1
0
ファイル: CommandTest.cs プロジェクト: bmjoy/Regulus
        public void TestCommandLambdaRegister()
        {
            IDummy dummy = NSubstitute.Substitute.For <IDummy>();

            Command command = new Command();

            command.RegisterLambda(dummy, (d) => d.Method1());
            command.Run("method1", new string[] { });
            dummy.Received().Method1();

            command.RegisterLambda <IDummy, int, int>(dummy, (instance, a1, a2) => instance.Method2(a1, a2));
            command.Run("method2", new[] { "1", "2" });
            dummy.Received().Method2(1, 2);

            command.RegisterLambda <IDummy, int, int, float>(dummy, (instance, a1, a2) => instance.Method3(a1, a2), (result) => { });
            command.Run("method3", new[] { "3", "4" });
            dummy.Received().Method3(3, 4);
        }