예제 #1
0
        public void CanCallMethod()
        {
            var container = MakeContainer();

            container.Bind <CallTestClassInject>();
            var cls = new CallTestClass();

            var result = container.Call(cls, "GetNumber");

            Assert.AreEqual(2, result);
        }
예제 #2
0
        public void CheckIllegalCallMethodParam()
        {
            var container = MakeContainer();

            container.Bind <CallTestClassInject>();
            var cls = new CallTestClass();

            var result = container.Call(cls, "GetNumber", "illegal param");

            Assert.AreEqual(2, result);

            result = container.Call(cls, "GetNumber", null);
            Assert.AreEqual(2, result);
        }
예제 #3
0
        public void CheckIllegalCallMethod()
        {
            var container = MakeContainer();

            container.Bind <CallTestClassInject>();
            var cls = new CallTestClass();

            Assert.Throws <ArgumentNullException>(() =>
            {
                container.Call(null, "GetNumber");
            });

            Assert.Throws <ArgumentNullException>(() =>
            {
                container.Call(cls, "GetNumberIllegal");
            });
        }