protected override void BeforeEach() { _propertyServiceMock = new Mock <IVsProjectPropertyService>(); PackageMock.Setup(p => p.GetMefService <IVsProjectPropertyService>()).Returns(_propertyServiceMock.Object); _parsedProject = new FakeParsedProject { Name = VisualStudioProjectName }; _parsedProject.ProjectMock.Setup(p => p.ConfigurationManager.ConfigurationRowNames).Returns(new string[0]); _pickProjectPromptMock = new Mock <Func <Project> >(); _changedProperties = new List <string>(); var mockedApiManager = Mock.Of <IApiManager>( x => x.AreServicesEnabledAsync(It.IsAny <IList <string> >()) == Task.FromResult(true) && x.EnableServicesAsync(It.IsAny <IEnumerable <string> >()) == Task.FromResult(true)); _getClusterListTaskSource = new TaskCompletionSource <IList <Cluster> >(); var mockedDataSource = Mock.Of <IGkeDataSource>(ds => ds.GetClusterListAsync() == _getClusterListTaskSource.Task); _objectUnderTest = new GkeStepViewModel( mockedDataSource, mockedApiManager, _pickProjectPromptMock.Object, Mock.Of <IPublishDialog>(pd => pd.Project == _parsedProject)); _objectUnderTest.PropertyChanged += (sender, args) => _changedProperties.Add(args.PropertyName); _objectUnderTest.PublishCommand.CanExecuteChanged += (sender, args) => _canPublishChangedCount++; _startProcessMock = new Mock <Func <string, Process> >(); _objectUnderTest._startProcessOverride = _startProcessMock.Object; }
public void TestConstructor_SetsTitle() { const string expectedName = "Expected Name"; _objectUnderTest = new GkeStepViewModel(Mock.Of <IPublishDialog>(pd => pd.Project.Name == expectedName)); StringAssert.Contains(_objectUnderTest.Title, expectedName); }
public void BeforeEach() { _deployment = new GkeDeployment { Metadata = new GkeMetadata { Name = DeploymentName } }; _getClusterListTaskSource = new TaskCompletionSource <IList <Cluster> >(); _getDeploymentsSource = new TaskCompletionSource <IList <GkeDeployment> >(); _validateGcloudSource = new TaskCompletionSource <GCloudValidationResult>(); _propertyServiceMock = new Mock <IVsProjectPropertyService>(); _browserServiceMock = new Mock <IBrowserService>(); _kubectlContextMock = new Mock <IKubectlContext>(); _kubectlContextMock.Setup(kube => kube.GetDeploymentsAsync()).Returns(_getDeploymentsSource.Task); _gkeDeploymentServiceMock = new Mock <IGkeDeploymentService>(); _gkeDeploymentServiceMock .Setup( s => s.DeployProjectToGkeAsync( It.IsAny <IParsedProject>(), It.IsAny <GkeDeploymentService.Options>())) .Returns(Task.CompletedTask); PackageMock.Setup(p => p.GetMefService <IGCloudWrapper>().ValidateGCloudAsync(It.IsAny <GCloudComponent>())) .Returns(() => _validateGcloudSource.Task); PackageMock.Setup(p => p.GetMefService <IVsProjectPropertyService>()).Returns(_propertyServiceMock.Object); PackageMock.Setup(p => p.GetMefService <IBrowserService>()).Returns(_browserServiceMock.Object); PackageMock.Setup(p => p.GetMefService <IApiManager>()).Returns(Mock.Of <IApiManager>( x => x.AreServicesEnabledAsync(It.IsAny <IList <string> >()) == Task.FromResult(true) && x.EnableServicesAsync(It.IsAny <IEnumerable <string> >()) == Task.FromResult(true))); PackageMock.Setup(p => p.GetMefServiceLazy <IDataSourceFactory>()) .Returns( MockHelpers.LazyOf <IDataSourceFactory>( dsf => dsf.CreateGkeDataSource().GetClusterListAsync() == _getClusterListTaskSource.Task)); PackageMock.Setup( p => p.GetMefService <IKubectlContextProvider>() .GetKubectlContextForClusterAsync(It.IsAny <Cluster>())) .Returns(_kubectlContextMock.ToTask); PackageMock.Setup(p => p.GetMefServiceLazy <IGkeDeploymentService>()) .Returns(_gkeDeploymentServiceMock.ToLazy); _parsedProject = new FakeParsedProject { Name = VisualStudioProjectName }; _parsedProject.ProjectMock.Setup(p => p.ConfigurationManager.ConfigurationRowNames).Returns(new string[0]); _objectUnderTest = new GkeStepViewModel(Mock.Of <IPublishDialog>(pd => pd.Project == _parsedProject)); _changedProperties = new List <string>(); _objectUnderTest.PropertyChanged += (sender, args) => _changedProperties.Add(args.PropertyName); _objectUnderTest.PublishCommandAsync.CanExecuteChanged += (sender, args) => _canPublishChangedCount++; }
public void Initialize() { _mockedApiManager = new Mock <IApiManager>(); _mockedDataSource = new Mock <IGkeDataSource>(); _mockedPublishDialog = new Mock <IPublishDialog>(); _mockedProject = new Mock <IParsedProject>(); _areServicesEnabledTaskSource = new TaskCompletionSource <bool>(); _clusterListTaskSource = new TaskCompletionSource <IList <Cluster> >(); _mockedApiManager.Setup(x => x.AreServicesEnabledAsync(It.IsAny <IList <string> >())).Returns(() => _areServicesEnabledTaskSource.Task); _mockedDataSource.Setup(x => x.GetClusterListAsync()).Returns(() => _clusterListTaskSource.Task); _mockedProject.Setup(x => x.Name).Returns(ProjectId); _mockedPublishDialog.Setup(x => x.TrackTask(It.IsAny <Task>())); _mockedPublishDialog.Setup(x => x.Project).Returns(_mockedProject.Object); _objectUnderTest = GkeStepViewModel.CreateStep(_mockedDataSource.Object, _mockedApiManager.Object); }
private void OnGkeChoiceCommand() { var nextStep = GkeStepViewModel.CreateStep(); _dialog.NavigateToStep(nextStep); }