Inheritance: System.Windows.Controls.Button
 public void ActivityDesignerButton_Construct_CommandObjectIsInstantiatedAndIsValidIsSetToTrue()
 {
     var button = new ActivityDesignerButton();
     Assert.IsNotNull(button.Command);
     Assert.IsTrue(button.IsValid);
     Assert.IsFalse(button.IsValidatedBefore);
     Assert.IsFalse(button.IsClosedAfter);
 }
        static void VerifyExecution(bool isValidatedBefore, bool isClosedAfter, bool isValid, int validationErrorCount, ICommand customCommand)
        {
            var validatonErrors = new List<IErrorInfo>();
            for(var i = 0; i < validationErrorCount; i++)
            {
                validatonErrors.Add(new ErrorInfo { Message = "Error " + i });
            }

            var mockDataContext = new Mock<ITestDataContext>();
            mockDataContext.SetupGet(v => v.IsValid).Returns(isValid);

            var button = new ActivityDesignerButton
            {
                DataContext = mockDataContext.Object,
                IsValidatedBefore = isValidatedBefore,
                IsClosedAfter = isClosedAfter,
                CustomCommand = customCommand
            };

            button.Command.Execute(null);
            Assert.AreEqual(isValid, button.IsValid);
        }