Exemple #1
0
        protected internal MethodMockBuilder MockMethod(string name, IEnumerable<Type> genericArgs, IEnumerable<object> args)
        {
            var settings = MockSettings.Next();
            var method = new MethodMockBuilder(settings, new MockBuilder(settings, TestSettings), genericArgs, args);

            MockMethod(name, method);

            return method;
        }
Exemple #2
0
        public void Invoke_Void_NoValidMock_Strict()
        {
            // arrange
            var arg = new object();
            var method = new MethodMockBuilder(null, new[]
            {
                Dx.Args<object>(a =>
                {
                    Assert.AreEqual(a, arg);
                    return false;
                })
            });

            var values = new MockBuilder();
            ((dynamic)values).abc = new MethodGroup(method);

            var subject = new ObjectBase(DxSettings.GlobalSettings, values, true);

            // act
            // assert
            Assert.Throws(typeof(InvalidMockException), () =>
                subject.Invoke("abc", new[] { new MethodArg<object>(arg, string.Empty) }));
        }
Exemple #3
0
        public void Invoke_NonVoid_VoidMethod_RefType()
        {
            // arrange
            var ok = false;
            var arg = new object();
            var method = new MethodMockBuilder(null, new[]
            {
                Dx.Args<object>(a =>
                {
                    ok = true;
                    return true;
                })
            });

            var values = new MockBuilder();
            ((dynamic)values).abc = new MethodGroup(method);

            var subject = new ObjectBase(DxSettings.GlobalSettings, values);

            // act
            // assert
            var output = subject.Invoke<int>("abc", new[] { new MethodArg<object>(arg, string.Empty) });
            Assert.AreEqual(output, 0);
            Assert.IsTrue(ok);
        }
Exemple #4
0
        public void Invoke_Void_NoValidMock_NonStrict()
        {
            // arrange
            var ok = false;
            var arg = new object();
            var method = new MethodMockBuilder(null, new[]
            {
                Dx.Args<object>(a =>
                {
                    ok = true;
                    Assert.AreEqual(a, arg);
                    return false;
                })
            });

            var values = new MockBuilder();
            ((dynamic)values).abc = new MethodGroup(method);

            var subject = new ObjectBase(DxSettings.GlobalSettings, values);

            // act
            // assert
            subject.Invoke("abc", new[] { new MethodArg<object>(arg, string.Empty) });
            Assert.IsTrue(ok);
        }
Exemple #5
0
        public void Invoke_NonVoid_Null()
        {
            // arrange
            var ok = false;
            var arg = new object();
            object returnVal = null;
            var method = new MethodMockBuilder(null, new[]
            {
                Dx.Args<object>(a =>
                {
                    ok = true;
                    return a == arg;
                })
            });
            (method as dynamic).DxReturns(returnVal);

            var values = new MockBuilder();
            ((dynamic)values).abc = new MethodGroup(method);

            var subject = new ObjectBase(DxSettings.GlobalSettings, values);

            // act
            // assert
            var output = subject.Invoke<object>("abc", new[] { new MethodArg<object>(arg, string.Empty) });
            Assert.AreEqual(returnVal, output);
            Assert.IsTrue(ok);
        }