Ejemplo n.º 1
0
        public void CanLockProperties()
        {
            LockablePerson p = new LockablePerson();

            p.Name = "Somename";

            p.Lock("Name");

            Assert.IsTrue(p.IsLocked("Name"));
        }
Ejemplo n.º 2
0
        public void CannotModifyLockedProperty()
        {
            LockablePerson p = new LockablePerson();

            p.Name = "Somename";

            p.Lock("Name");

            p.Name = "AnotherName";

            Assert.AreEqual("Somename", p.Name, "The name of the person has been locked and should not have been changed.");
        }
Ejemplo n.º 3
0
        public void AttemptToModifyLockedPropertyIsReported()
        {
            LockablePerson p = new LockablePerson();

            p.LockedPropertyChangeAttempt += new EventHandler <LockedPropertyChangedAttemptEventArgs> (OnLockedPropertyChangeAttempt);

            p.Name = "Frederik";

            p.Lock("Name");

            p.Name = "test";

            Assert.IsTrue(_lockedPropertyChangeAttemptEventHandlerEntered, "The attempt to modify the locked property is not reported.");
        }
Ejemplo n.º 4
0
        public void CanModifyUnlockedProperty()
        {
            LockablePerson p = new LockablePerson();

            p.Name = "Somename";

            p.Lock("name");

            p.Unlock("name");

            p.Name = "anothername";

            Assert.AreEqual("anothername", p.Name, "The name of the person should have been modified, since it is no longer locked.");
        }