private object RegisterUnregisterHandler()
		{
			var person = new PersonNotify();
			var executed = false;
			person.PropertyChanged += person.Extend().Register<PropertyChangedEventHandler>((s, e) => executed = true);
			executed.Should("The executed variable changed before the event was raised.").Be.False();

			person.Name = "Test";
			executed.Should("The event registered using the Register extension method was not raised.").Be.True();

			executed = false;
			person.Extend().Unregister("PropertyChanged");
			person.Name = "Test2";
			// ReSharper disable once ConditionIsAlwaysTrueOrFalse
			executed.Should("The event was not unregistered from the Unregister extension method.").Be.False();

			return person;
		}
Exemplo n.º 2
0
        private object RegisterUnregisterHandler()
        {
            var person   = new PersonNotify();
            var executed = false;

            person.PropertyChanged += person.Extend().Register <PropertyChangedEventHandler>((s, e) => executed = true);
            executed.Should().BeFalse("The executed variable changed before the event was raised.");

            person.Name = "Test";
            executed.Should().BeTrue("The event registered using the Register extension method was not raised.");

            executed = false;
            person.Extend().Unregister("PropertyChanged");
            person.Name = "Test2";
            // ReSharper disable once ConditionIsAlwaysTrueOrFalse
            executed.Should().BeFalse("The event was not unregistered from the Unregister extension method.");

            return(person);
        }