示例#1
0
        public void SetValueToDifferentType()
        {
            var obj = new BaObject(true, new { Str = "", Base = new MyBaseObject(), Derived = new MyDerivedObject() });

            Assert.That.Throws <InvalidOperationException>(() => { obj["Str"] = 123; });
            obj["Base"] = new MyDerivedObject();
            Assert.That.Throws <InvalidOperationException>(() => { obj["Derived"] = new MyBaseObject(); });
        }
        public void MatchesAnyInvocationOnTargetDoesNotIncludesMethodsDeclaredOnObject()
        {
            var target = new MyDerivedObject();

            var objectMethodInvocation =
                new Invocation(target, typeof(object).GetMethod("ToString"), null, new object[0], null, 0);

            var invocationMatcher = InvocationMatcher.ForAnyInvocationOn(target);

            Assert.IsFalse(invocationMatcher.Matches(objectMethodInvocation));
        }