protected override void OnPasswordCharDelayChanging(CancelChangeEventArgs<int> e)
            {
                CallsToOnPasswordCharDelayChanging.Add(e);
                e.Cancel = CancelOnPasswordCharDelayChanging;

                base.OnPasswordCharDelayChanging(e);
            }
            protected override void OnUseSystemPasswordCharChanging(CancelChangeEventArgs<bool> e)
            {
                CallsToOnUseSystemPasswordCharChanging.Add(e);
                e.Cancel = CancelOnUseSystemPasswordCharChanging;

                base.OnUseSystemPasswordCharChanging(e);
            }
 public void DoesNotEqualAnObjectThatDiffersByNewValue()
 {
     var different = new CancelChangeEventArgs<int>(123, 789);
     Assert.IsFalse(CancelChangeEventArgs.Equals(different));
     Assert.IsTrue(CancelChangeEventArgs != different);
     Assert.IsFalse(CancelChangeEventArgs == different);
 }
 public void EqualsAnEquivalentObject()
 {
     var equivalent = new CancelChangeEventArgs<int>(123, 456);
     Assert.IsTrue(CancelChangeEventArgs.Equals(equivalent));
     Assert.IsTrue(CancelChangeEventArgs == equivalent);
     Assert.IsFalse(CancelChangeEventArgs != equivalent);
 }
        /// <summary>
        /// Raises the <see cref="UseSystemPasswordCharChanging"/> event with
        /// the specified <see cref="CancelChangeEventArgs{T}"/> of
        /// <see cref="bool"/>.
        /// </summary>
        /// <param name="e">A <see cref="CancelChangeEventArgs{T}"/> of
        /// <see cref="bool"/>.</param>
        /// <exception cref="ArgumentNullException"><paramref name="e"/> is
        /// <c>null</c>.</exception>>
        protected virtual void OnUseSystemPasswordCharChanging(CancelChangeEventArgs<bool> e)
        {
            if (ReferenceEquals(e, null))
            {
                throw new ArgumentNullException(nameof(e));
            }

            if (!ReferenceEquals(UseSystemPasswordCharChanging, null))
            {
                UseSystemPasswordCharChanging(this, e);
            }
        }
        /// <summary>
        /// Raises the <see cref="PasswordCharDelayChanging"/> event with the
        /// specified <see cref="CancelChangeEventArgs{T}"/> of
        /// <see cref="int"/>.
        /// </summary>
        /// <param name="e">A <see cref="CancelChangeEventArgs{T}"/> of
        /// <see cref="int"/>.</param>
        /// <exception cref="ArgumentNullException"><paramref name="e"/> is
        /// <c>null</c>.</exception>>
        protected virtual void OnPasswordCharDelayChanging(CancelChangeEventArgs<int> e)
        {
            if (ReferenceEquals(e, null))
            {
                throw new ArgumentNullException(nameof(e));
            }

            if (!ReferenceEquals(PasswordCharDelayChanging, null))
            {
                PasswordCharDelayChanging(this, e);
            }
        }
 public void HasAHashCodeDifferentFromAnObjectThatDiffersByNewValue()
 {
     var different = new CancelChangeEventArgs<int>(123, 789);
     Assert.AreNotEqual(different.GetHashCode(),
                        CancelChangeEventArgs.GetHashCode());
 }
 public void HasTheSameHashCodeAsAnEquivalentObject()
 {
     var equivalent = new CancelChangeEventArgs<int>(123, 456);
     Assert.AreEqual(equivalent.GetHashCode(),
                     CancelChangeEventArgs.GetHashCode());
 }
 public void TestInitialize()
 {
     CancelChangeEventArgs = new CancelChangeEventArgs<int>(123, 456);
 }