Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 4
0
        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);
        }
Ejemplo n.º 5
0
        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());
        }
Ejemplo n.º 6
0
        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);
        }
Ejemplo n.º 7
0
        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);
        }
Ejemplo n.º 8
0
        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);
        }
Ejemplo n.º 9
0
        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);
        }