public void GridSorting( FilterSearchData.GridColumnsNames columnName, FilterSearchData.ToolsTypes toolType, string searchTerm) { this.App.Ui.ToolsMain.SelectToolType(toolType); this.App.Ui.ToolsMain.PerformSearch(searchTerm); this.App.Ui.ToolsMain.ClickColumnName(columnName); var sorting = this.App.Ui.ToolsMain.GetCurrentSorting(); Assert.That( sorting.Key.Equals(columnName.ToString()) && sorting.Value.Equals("ASC"), $"Sorting is incorrect. Should be ASC by '{columnName}'"); var names = this.GetDefinedIntResults(columnName); this.App.Ui.ToolsMain.ClickRandomPage(); names.AddRange(this.GetDefinedIntResults(columnName)); Assert.That(names.SequenceEqual(names.OrderBy(n => n).ToList()), "Order is wrong"); App.Ui.ToolsMain.ClickPage(1); this.App.Ui.ToolsMain.ClickColumnName(columnName); sorting = this.App.Ui.ToolsMain.GetCurrentSorting(); Assert.That(sorting.Key.Equals(columnName.ToString()) && sorting.Value.Equals("DESC")); names = this.GetDefinedIntResults(columnName); this.App.Ui.ToolsMain.ClickPage(2); #region remove zeroes names.AddRange(this.GetDefinedIntResults(columnName)); int numberOfZero = 0; if (names.Contains(0)) { foreach (var n in names) { if (n == 0) { numberOfZero++; } } for (int i = 0; i < numberOfZero; i++) { names.Remove(0); } } #endregion Assert.That(names.SequenceEqual(names.OrderByDescending(n => n).ToList()), "Order is wrong"); }
public void SelectToolType(FilterSearchData.ToolsTypes toolsType) { var elements = this.GetRawGridLineElements(); var button = this.Driver.Finds(this.toolTypeButtonLocator) .First(t => t.Text.Equals(toolsType.ToString())); if (!button.GetAttribute("class").Contains("active")) { button.Click(); this.Driver.WaitForElementStaleBool(elements.Last(), 10); } this.WaitForPageLoad(); }
public void GridSortingByName( FilterSearchData.ToolsTypes toolType, string searchTerm) { this.App.Ui.ToolsMain.SelectToolType(toolType); this.App.Ui.ToolsMain.PerformSearch(searchTerm); var sorting = this.App.Ui.ToolsMain.GetCurrentSorting(); Assert.That(sorting.Key.Equals("NAME") && sorting.Value.Equals("ASC")); var namesOriginal = this.GetNames(); var page = this.App.Ui.ToolsMain.ClickRandomPage(); namesOriginal.AddRange(this.GetNames()); if (!toolType.Equals(FilterSearchData.ToolsTypes.Holders)) { Assert.That(namesOriginal.SequenceEqual(namesOriginal.OrderBy(n => n).ToList()), "Order is wrong"); } this.App.Ui.ToolsMain.ClickColumnName(FilterSearchData.GridColumnsNames.NAME); sorting = this.App.Ui.ToolsMain.GetCurrentSorting(); Assert.That(sorting.Key.Equals("NAME") && sorting.Value.Equals("DESC")); var namesAfterSorting = this.GetNames(); this.App.Ui.ToolsMain.ClickPage(page); namesAfterSorting.AddRange(this.GetNames()); if (!toolType.Equals(FilterSearchData.ToolsTypes.Holders)) { Assert.That( namesAfterSorting.SequenceEqual(namesAfterSorting.OrderByDescending(n => n).ToList()), "Order is wrong"); } else { Assert.That( !namesAfterSorting.SequenceEqual(namesOriginal), "Order is wrong"); } }
protected void ResetFiltersTest( Action resetMethod, Dictionary <FilterSearchData.Filters, object> filters, FilterSearchData.ToolsTypes toolType, bool resetToolType = false) { this.App.Ui.ToolsMain.SelectToolType(toolType); var resultsBuforeFilteringUi = this.App.Ui.ToolsMain.GetGridRecords(); this.App.Ui.ToolsMain.PerformFiltering(filters); var resultsUi = this.App.Ui.ToolsMain.GetGridRecords(); var states = this.App.Ui.ToolsMain.GetFiltersStates(filters); foreach (var filter in filters.Keys) { Assert.AreEqual( filters[filter] == null ? filtersDropDownsAndTextFields[filter] : filters[filter].ToString(), states[filter], $"Filter {filter} in a wrong state. Actual is {states[filter]} but should be {filters[filter]}"); } resetMethod.Invoke(); var resultsUiAfterUpdate = this.App.Ui.ToolsMain.GetGridRecords(); Assert.That( resultsUi.Count != resultsUiAfterUpdate.Count && !resultsUiAfterUpdate.Contains(resultsUi.First()), "Tools Main page wasn't reset"); if (!resetToolType) { Assert.That( resultsUiAfterUpdate.Select(e => e.Name).ToList() .SequenceEqual(resultsBuforeFilteringUi.Select(e => e.Name).ToList()), "Tools Main page wasn't reset"); } else { Assert.That(this.App.Ui.ToolsMain.GetActiveToolType().Equals(FilterSearchData.ToolsTypes.Tools)); } this.CheckFiltersInitialState(filters); }
public void GridDefaultSorting(FilterSearchData.ToolsTypes toolType, string searchTerm) { this.App.Ui.ToolsMain.SelectToolType(toolType); if (searchTerm != null) { this.App.Ui.ToolsMain.PerformSearch(searchTerm); } var sorting = this.App.Ui.ToolsMain.GetCurrentSorting(); Assert.That(sorting.Key.Equals("NAME") && sorting.Value.Equals("ASC")); this.App.Ui.ToolsMain.ClickRandomPage(); sorting = this.App.Ui.ToolsMain.GetCurrentSorting(); Assert.That(sorting.Key.Equals("NAME") && sorting.Value.Equals("ASC")); }
protected void CheckEmptySearchGridTest(FilterSearchData.ToolsTypes toolType) { var expectedColumns = new List <string> { "NAME", "SIZE", "LENGTH", "QUANTITY" }; this.App.Ui.ToolsMain.SelectToolType(toolType); this.App.Ui.ToolsMain.PerformSearch("zz###"); //Not existing tool var columnNames = this.App.Ui.ToolsMain.GetGridColumnsNames(); columnNames = ServiceMethods.RemoveStringsInList(columnNames, new List <string> { "▲", "▼" }); List <string> processedNames = new List <string>(); columnNames.ForEach(e => processedNames.Add(e.ToUpper())); Assert.That(processedNames.SequenceEqual(expectedColumns)); var results = this.App.Ui.ToolsMain.GetAssembliesResults(); Assert.That(results.Count == 0, "There are shouldn't be results for not existing tool"); }
public void SelectToolType(FilterSearchData.ToolsTypes toolsType) { this.App.Pages.ToolsPages.ToolsMainPage.SelectToolType(toolsType); }