public async Task RemoveHiddenFeaturesAsync() { var stylesProviders = new UITestStyleValuesProvider(); var viewModel = new MainViewModel(null, stylesProviders); var context = new UserSelectionContext(GenContext.CurrentLanguage, TestPlatform); viewModel.Initialize(context); await viewModel.OnTemplatesAvailableAsync(); var firstPageTemplate = GetTemplate(viewModel.StepsViewModels[TemplateType.Page].Groups, TestPageWithServiceDependencies); var secondPageTemplate = GetTemplate(viewModel.StepsViewModels[TemplateType.Page].Groups, TestSecondPageWithServiceDependencies); var numOfDependencies = firstPageTemplate.Dependencies?.Count(); await AddTemplateAsync(viewModel, firstPageTemplate); await AddTemplateAsync(viewModel, secondPageTemplate); var userSelection = viewModel.UserSelection.GetUserSelection(); Assert.Equal(3, userSelection.Pages.Count); Assert.Equal(numOfDependencies, userSelection.Services.Count); DeleteTemplate(TemplateType.Page, viewModel.UserSelection, 2); userSelection = viewModel.UserSelection.GetUserSelection(); Assert.Equal(2, userSelection.Pages.Count); Assert.Equal(numOfDependencies, userSelection.Services.Count); DeleteTemplate(TemplateType.Page, viewModel.UserSelection, 1); userSelection = viewModel.UserSelection.GetUserSelection(); viewModel.UnsubscribeEventHandlers(); Assert.Single(userSelection.Pages); Assert.Equal(numOfDependencies, userSelection.Services.Count + 1); }
public async Task ResolveDependenciesAndLicensesAsync() { var stylesProviders = new UITestStyleValuesProvider(); var viewModel = new MainViewModel(null, stylesProviders); var context = new UserSelectionContext(GenContext.CurrentLanguage, TestPlatform); viewModel.Initialize(context); await viewModel.OnTemplatesAvailableAsync(); var userSelection = viewModel.UserSelection.GetUserSelection(); Assert.Single(userSelection.Pages); Assert.Empty(userSelection.Features); Assert.Equal(2, viewModel.UserSelection.Licenses.Count); var pageWithDependenciesTemplate = GetTemplate(viewModel.StepsViewModels[TemplateType.Page].Groups, TestPageWithDependencies); var numOfDependencies = pageWithDependenciesTemplate.Dependencies?.Count(); await AddTemplateAsync(viewModel, pageWithDependenciesTemplate); userSelection = viewModel.UserSelection.GetUserSelection(); viewModel.UnsubscribeEventHandlers(); Assert.Equal(2, userSelection.Pages.Count); Assert.Equal(numOfDependencies, userSelection.Features.Count); Assert.Equal(3, viewModel.UserSelection.Licenses.Count); }
public async Task UpdateHomePageAsync() { var stylesProviders = new UITestStyleValuesProvider(); var viewModel = new MainViewModel(null, stylesProviders); var context = new UserSelectionContext(GenContext.CurrentLanguage, TestPlatform); viewModel.Initialize(context); await viewModel.OnTemplatesAvailableAsync(); await AddTemplateAsync(viewModel, GetTemplate(viewModel.StepsViewModels[TemplateType.Page].Groups, TestPage)); var userSelection = viewModel.UserSelection.GetUserSelection(); Assert.True(userSelection.Pages[0].Name == MainPageName); Assert.True(userSelection.Pages[1].Name == TestPageName); Assert.True(userSelection.HomeName == MainPageName); var pages = viewModel.UserSelection.Groups.First(g => g.TemplateType == TemplateType.Page); pages.EnableOrdering(null); pages.SelectedItem = pages.Items[1]; pages.MoveUpCommand.Execute(null); userSelection = viewModel.UserSelection.GetUserSelection(); viewModel.UnsubscribeEventHandlers(); Assert.True(userSelection.Pages[0].Name == TestPageName); Assert.True(userSelection.Pages[1].Name == MainPageName); Assert.True(userSelection.HomeName == TestPageName); }
public async Task CanNotRemoveHomePageAsync() { var stylesProviders = new UITestStyleValuesProvider(); var viewModel = new MainViewModel(null, stylesProviders); var context = new UserSelectionContext(GenContext.CurrentLanguage, TestPlatform); viewModel.Initialize(context); await viewModel.OnTemplatesAvailableAsync(); DeleteTemplate(TemplateType.Page, viewModel.UserSelection, 0); var userSelection = viewModel.UserSelection.GetUserSelection(); viewModel.UnsubscribeEventHandlers(); Assert.Single(userSelection.Pages); }
public async Task WinUiProjectLoadStepsAsync() { var stylesProviders = new UITestStyleValuesProvider(); var viewModel = new MainViewModel(null, stylesProviders); var context = new UserSelectionContext(GenContext.CurrentLanguage, Platforms.WinUI); context.AddAppModel(AppModels.Desktop); viewModel.Initialize(context); await viewModel.OnTemplatesAvailableAsync(); viewModel.UnsubscribeEventHandlers(); Assert.True(viewModel.ProjectType.Items.Any()); Assert.True(viewModel.Framework.Items.Any()); Assert.True(viewModel.StepsViewModels[TemplateType.Feature].Groups.Any()); }
public async Task RemoveTemplateWithHiddenDependencyAsync() { var stylesProviders = new UITestStyleValuesProvider(); var viewModel = new MainViewModel(null, stylesProviders); var context = new UserSelectionContext(GenContext.CurrentLanguage, TestPlatform); viewModel.Initialize(context); await viewModel.OnTemplatesAvailableAsync(); await AddTemplateAsync(viewModel, GetTemplate(viewModel.StepsViewModels[TemplateType.Service].Groups, TestService)); var userSelection = viewModel.UserSelection.GetUserSelection(); Assert.Equal(3, userSelection.Services.Count); DeleteTemplate(TemplateType.Service, viewModel.UserSelection, 2); userSelection = viewModel.UserSelection.GetUserSelection(); viewModel.UnsubscribeEventHandlers(); Assert.True(userSelection.Services.Count == 1); }
public async Task WinUiProjectLoadDefaultStepsAsync() { // Default configuration: Blank, None var stylesProviders = new UITestStyleValuesProvider(); var viewModel = new MainViewModel(null, stylesProviders); var context = new UserSelectionContext(GenContext.CurrentLanguage, Platforms.WinUI); context.AddAppModel(AppModels.Desktop); viewModel.Initialize(context); await viewModel.OnTemplatesAvailableAsync(); viewModel.UnsubscribeEventHandlers(); var userSelection = viewModel.UserSelection.GetUserSelection(); Assert.Equal(DefaultProjectType, userSelection.Context.ProjectType); Assert.Equal(DefaultFramework, userSelection.Context.FrontEndFramework); Assert.Empty(userSelection.Pages); Assert.Empty(userSelection.Services); Assert.Empty(userSelection.Testing); }
public async Task UwpProjectLoadDefaultStepsAsync() { // Default configuration: SplitView, MvvmToolkit, Blank page var stylesProviders = new UITestStyleValuesProvider(); var viewModel = new MainViewModel(null, stylesProviders); var context = new UserSelectionContext(GenContext.CurrentLanguage, Platforms.Uwp); viewModel.Initialize(context); await viewModel.OnTemplatesAvailableAsync(); viewModel.UnsubscribeEventHandlers(); var userSelection = viewModel.UserSelection.GetUserSelection(); Assert.Equal(DefaultProjectType, userSelection.Context.ProjectType); Assert.Equal(DefaultFramework, userSelection.Context.FrontEndFramework); Assert.Equal(DefaultPage, userSelection.Pages.First().TemplateId); Assert.Empty(userSelection.Features); Assert.Empty(userSelection.Services); Assert.Empty(userSelection.Testing); }
public async Task ProjectInitUpdatedConfigurationAsync() { var stylesProviders = new UITestStyleValuesProvider(); var viewModel = new MainViewModel(null, stylesProviders); var context = new UserSelectionContext(GenContext.CurrentLanguage, TestPlatform); viewModel.Initialize(context); await viewModel.OnTemplatesAvailableAsync(); var userSelection = viewModel.UserSelection.GetUserSelection(); Assert.Equal(TestProjectType, userSelection.Context.ProjectType); Assert.Equal(TestFramework, userSelection.Context.FrontEndFramework); Assert.Equal(TestPage, userSelection.Pages.First().TemplateId); await SetProjectTypeAsync(viewModel, TestSecondProjectType); userSelection = viewModel.UserSelection.GetUserSelection(); viewModel.UnsubscribeEventHandlers(); Assert.Equal(TestSecondProjectType, userSelection.Context.ProjectType); Assert.Equal(TestSecondPage, userSelection.Pages.First().TemplateId); }