private SourceControlPresenter CreatePresenter() { var presenter = new SourceControlPresenter(_vbe.Object, _addIn.Object, _configService.Object, _view.Object, _changesPresenter.Object, _branchesPresenter.Object, _settingsPresenter.Object, _unsyncedPresenter.Object, _folderBrowserFactory.Object, _providerFactory.Object, _failedActionView.Object, _loginView.Object); return(presenter); }
private void OnSourceControlClick(CommandBarButton Ctrl, ref bool CancelDefault) { if (_sourceControlPresenter == null) { var kernel = new StandardKernel(new SourceControlBindings()); var vbeArg = new ConstructorArgument("vbe", this.IDE); var addinArg = new ConstructorArgument("addin", this.AddIn); _sourceControlPresenter = kernel.Get <SourceControlPresenter>(vbeArg, addinArg); } _sourceControlPresenter.Show(); }
public void ChangesCurrentBranchRefreshesWhenBranchIsCheckedOut() { //arrange _configService.Setup(c => c.LoadConfiguration()) .Returns(GetDummyConfig()); SetupValidVbProject(); var changesView = new Mock <IChangesView>(); changesView.SetupProperty(v => v.CurrentBranch, "master"); var changesPresenter = new ChangesPresenter(changesView.Object); var branchesView = new Mock <IBranchesView>(); branchesView.SetupProperty(b => b.Current, "master"); var branchesPresenter = new BranchesPresenter(branchesView.Object, new Mock <ICreateBranchView>().Object, new Mock <IDeleteBranchView>().Object, new Mock <IMergeView>().Object); var provider = new Mock <ISourceControlProvider>(); provider.Setup(git => git.Checkout(It.IsAny <string>())); provider.SetupGet(git => git.CurrentBranch) .Returns(new Branch("dev", "/ref/head/dev", false, true)); branchesPresenter.Provider = provider.Object; changesPresenter.Provider = provider.Object; //purposely createing a new presenter with specific child presenters var presenter = new SourceControlPresenter(_vbe.Object, _addIn.Object, _configService.Object, _view.Object, changesPresenter, branchesPresenter, _settingsPresenter.Object, _unsyncedPresenter.Object, _folderBrowserFactory.Object, _providerFactory.Object, _failedActionView.Object, _loginView.Object); //act branchesView.Object.Current = "dev"; branchesView.Raise(b => b.SelectedBranchChanged += null, new EventArgs()); //assert Assert.AreEqual("dev", changesView.Object.CurrentBranch); }