示例#1
0
        public void RaiseEvent()
        {
            IWithEvents eventHolder = MockRepository.Mock <IWithEvents>();

            eventHolder.SetUnexpectedBehavior(UnexpectedCallBehaviors.BaseOrDefault);

            eventHolder.ExpectEvent(x => x.Blah += null)
            .IgnoreArguments();

            eventHolder.Expect(x => x.RaiseEvent())
            .DoInstead(new System.Threading.ThreadStart(delegate()
            {
                eventHolder.Raise(x => x.Blah += null,
                                  new object[] { this, EventArgs.Empty });
            }));

            IEventSubscriber eventSubscriber = MockRepository.Mock <IEventSubscriber>();

            eventSubscriber.SetUnexpectedBehavior(UnexpectedCallBehaviors.BaseOrDefault);
            eventSubscriber.Expect(x => x.Hanlder(this, EventArgs.Empty));

            eventHolder.Blah += new EventHandler(eventSubscriber.Hanlder);
            eventHolder.RaiseEvent();

            eventHolder.VerifyExpectations();
            eventSubscriber.VerifyExpectations();
        }
示例#2
0
        public void BetterErrorMessageOnIncorrectParametersCount()
        {
            IWithEvents events = MockRepository.Mock <IWithEvents>();

            events.ExpectEvent(x => x.Blah += null)
            .IgnoreArguments();

            events.Blah += delegate { };

            Assert.Throws <InvalidOperationException>(
                () => events.Raise(x => x.Blah += null, new object[0]));
        }
示例#3
0
        public void RaiseEventUsingExtensionMethod()
        {
            IWithEvents eventHolder = (IWithEvents)mocks.Stub(typeof(IWithEvents));
            bool        called      = false;

            eventHolder.Blah += delegate {
                called = true;
            };

            eventHolder.Raise(stub => stub.Blah += null, this, EventArgs.Empty);

            Assert.True(called);
        }
示例#4
0
        public void RaiseEventUsingExtensionMethod()
        {
            IWithEvents eventHolder = MockRepository.Mock <IWithEvents>();

            bool called = false;

            eventHolder.Blah += delegate
            {
                called = true;
            };

            eventHolder.Raise(stub => stub.Blah += null, EventArgs.Empty);

            Assert.True(called);
        }
示例#5
0
        public void BetterErrorMessageOnIncorrectParameters()
        {
            IWithEvents events = MockRepository.Mock <IWithEvents>();

            events.SetUnexpectedBehavior(UnexpectedCallBehaviors.BaseOrDefault);

            events.ExpectEvent(x => x.Blah += null)
            .IgnoreArguments();

            events.Blah += delegate { };

            Assert.Throws <InvalidOperationException>(
                () => events.Raise(x => x.Blah += null,
                                   new object[] { "", 1 }));
        }
示例#6
0
        public void RaiseEventUsingExtensionMethod()
        {
            IWithEvents eventHolder = MockRepository.Mock <IWithEvents>();

            eventHolder.SetUnexpectedBehavior(UnexpectedCallBehaviors.BaseOrDefault);

            bool called = false;

            eventHolder.Blah += delegate
            {
                called = true;
            };

            eventHolder.Raise(stub => stub.Blah += null, EventArgs.Empty);

            Assert.True(called);
        }
示例#7
0
        public void UsingEventRaiserFromExtensionMethod()
        {
            IWithEvents eventHolder = MockRepository.Mock <IWithEvents>();

            eventHolder.StubEvent(x => x.Blah += null);

            bool called = false;

            eventHolder.Blah += delegate
            {
                called = true;
            };

            eventHolder.Raise(x => x.Blah += null, EventArgs.Empty);

            Assert.True(called);
            eventHolder.VerifyAllExpectations();
        }
示例#8
0
        public void UsingEventRaiserCreate()
        {
            IWithEvents eventHolder = MockRepository.Mock <IWithEvents>();

            eventHolder.SetUnexpectedBehavior(UnexpectedCallBehaviors.BaseOrDefault);

            eventHolder.ExpectEvent(x => x.Blah += null);

            bool called = false;

            eventHolder.Blah += delegate
            {
                called = true;
            };

            eventHolder.Raise(x => x.Blah += null, EventArgs.Empty);

            Assert.True(called);
            eventHolder.VerifyExpectations();
        }