public void OnClickCreateStashButtonFiresCreateStashButtonCommandEvents() { var page = new Mock <ITeamExplorerBase>(); var wrapper = new Mock <IGitStashWrapper>(); var results = new Mock <IGitStashResults>(); results.Setup(r => r.Success).Returns(true); wrapper.Setup(w => w.SaveStash(It.IsAny <IGitStashSaveOptions>())) .Returns(results.Object) .Verifiable(); RecommendedActionsViewModel vm = new RecommendedActionsViewModel(wrapper.Object, page.Object); ICommand command = vm.CreateStashButtonCommand; AutoResetEvent waitHandle = new AutoResetEvent(false); bool clickeventWasDispatched = false; vm.PropertyChanged += (sender, args) => { if (args.PropertyName == "CreateStashButtonCommand") { clickeventWasDispatched = true; } if (clickeventWasDispatched) { waitHandle.Set(); } }; command.Execute(null); waitHandle.WaitOne(5000); Assert.IsTrue(clickeventWasDispatched); }
public void StashAllSetsProperties() { var page = new Mock <ITeamExplorerBase>(); var wrapper = new Mock <IGitStashWrapper>(); IList <IGitStash> gitStashes = new List <IGitStash>(); var gitStash = new Mock <IGitStash>(); gitStash.Setup(s => s.Index).Returns(0); gitStash.Setup(s => s.Message).Returns("test"); gitStashes.Add(gitStash.Object); wrapper.Setup(w => w.Stashes).Returns(gitStashes); RecommendedActionsViewModel vm = new RecommendedActionsViewModel(wrapper.Object, page.Object); vm.StashAll = true; Assert.IsFalse(vm.StashKeepIndex); Assert.IsFalse(vm.StashUntracked); }
public void OnClickCreateStashButtonCallsSave() { var page = new Mock <ITeamExplorerBase>(); var wrapper = new Mock <IGitStashWrapper>(); var results = new Mock <IGitStashResults>(); results.Setup(r => r.Success).Returns(true); AutoResetEvent waitHandle = new AutoResetEvent(false); wrapper.Setup(w => w.SaveStash(It.IsAny <IGitStashSaveOptions>())) .Returns(results.Object) .Callback(() => waitHandle.Set()) .Verifiable(); RecommendedActionsViewModel vm = new RecommendedActionsViewModel(wrapper.Object, page.Object); vm.CreateStashButtonCommand.Execute(null); waitHandle.WaitOne(5000); wrapper.Verify(w => w.SaveStash(It.IsAny <IGitStashSaveOptions>())); }
private void TestVmFiresEvent(Action <IGitStashWrapper> eventExpression, EventArgs args, string PropertyName) { var wrapper = new Mock <IGitStashWrapper>(); var page = new Mock <ITeamExplorerBase>(); RecommendedActionsViewModel vm = new RecommendedActionsViewModel(wrapper.Object, page.Object); AutoResetEvent waitHandle = new AutoResetEvent(false); bool eventWasDispatched = false; vm.PropertyChanged += (s, a) => { if (a.PropertyName == PropertyName) { eventWasDispatched = true; } if (eventWasDispatched) { waitHandle.Set(); } }; wrapper.Raise(eventExpression, args); waitHandle.WaitOne(5000); Assert.IsTrue(eventWasDispatched); }
public void StashAllFiresStashUntrackedEvent() { var page = new Mock <ITeamExplorerBase>(); var wrapper = new Mock <IGitStashWrapper>(); RecommendedActionsViewModel vm = new RecommendedActionsViewModel(wrapper.Object, page.Object); AutoResetEvent waitHandle = new AutoResetEvent(false); bool clickeventWasDispatched = false; vm.PropertyChanged += (sender, args) => { if (args.PropertyName == "StashUntracked") { clickeventWasDispatched = true; } if (clickeventWasDispatched) { waitHandle.Set(); } }; vm.StashAll = true; waitHandle.WaitOne(5000); Assert.IsTrue(clickeventWasDispatched); }
public RecommendedActionsControl(RecommendedActionsViewModel recommendedActionsViewModel) { this.DataContext = recommendedActionsViewModel; InitializeComponent(); }