private void ExecuteCommandCheckingReason(string expectedReason, VDI vdi) { MigrateVirtualDiskCommand cmd = new MigrateVirtualDiskCommand(mw, new List<SelectedItem> { new SelectedItem(vdi) }); Dictionary<SelectedItem, string> reasons = cmd.GetCantExecuteReasons(); Assert.IsNotEmpty(reasons, "Reasons found for " + vdi.name_label); Assert.IsFalse(cmd.CanExecute(), "Command can execute for " + vdi.name_label); Assert.AreEqual(expectedReason, reasons.First().Value, "Reason as expected for " + vdi.name_label); }