public void CreateShouldCreateMultipleFilters() { var filters = new StatFilterViewModel[] { new MinMaxStatFilterViewModel { Id = "statId1", IsEnabled = true }, new MinMaxStatFilterViewModel { Id = "statId2", IsEnabled = false }, new MinMaxStatFilterViewModel { Id = "statId3", IsEnabled = true } }; var advancedFiltersViewModel = GetAdvancedFiltersViewModel(filters, null); SearchQueryRequest result = this.queryRequestFactory.Create(new SearchQueryRequest(), advancedFiltersViewModel) as SearchQueryRequest; Assert.NotNull(result); Assert.That(result.Query.Stats, Has.Count.EqualTo(1)); StatFilters statFilters = result.Query.Stats.First(); Assert.That(statFilters.Filters, Has.Count.EqualTo(2)); Assert.That(statFilters.Filters, Has.One.Matches <StatFilter>(f => f.Id == filters[0].Id)); Assert.That(statFilters.Filters, Has.One.Matches <StatFilter>(f => f.Id == filters[2].Id)); }
public void CreateShouldReturnMinMaxStatFilterViewModelIfItemStatIsMinMaxValueItemStat() { var itemStat = new MinMaxValueItemStat(StatCategory.Explicit); StatFilterViewModel result = this.statFilterViewModelFactory.Create(itemStat, new SearchQueryRequest()); Assert.IsInstanceOf <MinMaxStatFilterViewModel>(result); }
public void CreateShouldNotSetIsEnabledTrueIfQueryRequestDoesNotContainFilter(ItemStat itemStat) { SearchQueryRequest queryRequest = new SearchQueryRequest(); StatFilterViewModel result = this.statFilterViewModelFactory.Create(itemStat, queryRequest); Assert.That(result.IsEnabled, Is.False); }
public void CreateShouldSetIsEnabledTrueIfQueryRequestContainsFilter(ItemStat itemStat) { SearchQueryRequest queryRequest = GetQueryRequestWithStatFilter(itemStat.Id, new MinMaxFilter()); StatFilterViewModel result = this.statFilterViewModelFactory.Create(itemStat, queryRequest); Assert.That(result.IsEnabled, Is.True); }
public void CreateShouldReturnStatFilterViewModelWithText() { const string expected = "# to Maximum Life"; var itemStat = new SingleValueItemStat(GetItemStat(textWithPlaceholders: expected)); StatFilterViewModel result = this.statFilterViewModelFactory.Create(itemStat, new SearchQueryRequest()); Assert.NotNull(result); Assert.That(result.Text, Is.EqualTo(expected)); }
public void CreateShouldReturnStatFilterViewModelWithId() { const string expected = "item stat id"; var itemStat = GetItemStat(expected); StatFilterViewModel result = this.statFilterViewModelFactory.Create(itemStat, new SearchQueryRequest()); Assert.NotNull(result); Assert.That(result.Id, Is.EqualTo(expected)); }
public void CreateShouldUseTextInsteadOfTextWithPlaceholdersForItemStatWithoutValue() { const string textWithPlaceholders = "#% chance to Trigger Edict of Frost on Kill"; const string statText = "Trigger Edict of Frost on Kill"; var itemStat = new ItemStat(StatCategory.Enchant) { Text = statText, TextWithPlaceholders = textWithPlaceholders }; StatFilterViewModel result = this.statFilterViewModelFactory.Create(itemStat, new SearchQueryRequest()); Assert.NotNull(result); Assert.That(result.Text, Is.EqualTo(statText)); }
private static StatFilter CreateStatFilter(StatFilterViewModel statFilterViewModel) { var statFilter = new StatFilter { Id = statFilterViewModel.Id, Text = statFilterViewModel.Text, }; if (statFilterViewModel is MinMaxStatFilterViewModel minMaxStatFilterViewModel) { statFilter.Value = new MinMaxFilter { Min = minMaxStatFilterViewModel.Min, Max = GetMaxValue(minMaxStatFilterViewModel) }; } return(statFilter); }
public void CreateShouldCreateStatFilters() { var statFilterViewModel = new StatFilterViewModel { Id = "itemStatId", Text = "Trigger Edict of Frost on Kill", IsEnabled = true }; var advancedFiltersViewModel = GetAdvancedFiltersViewModel(new[] { statFilterViewModel }, null); SearchQueryRequest result = this.queryRequestFactory.Create(new SearchQueryRequest(), advancedFiltersViewModel) as SearchQueryRequest; Assert.NotNull(result); Assert.That(result.Query.Stats, Has.Count.EqualTo(1)); StatFilters statFilters = result.Query.Stats.First(); Assert.That(statFilters.Filters, Has.Count.EqualTo(1)); StatFilter statFilter = statFilters.Filters.First(); Assert.That(statFilter.Id, Is.EqualTo(statFilterViewModel.Id)); Assert.That(statFilter.Text, Is.EqualTo(statFilterViewModel.Text)); }