Exemplo n.º 1
0
        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));
        }
Exemplo n.º 2
0
        public void CreateShouldReturnMinMaxStatFilterViewModelIfItemStatIsMinMaxValueItemStat()
        {
            var itemStat = new MinMaxValueItemStat(StatCategory.Explicit);

            StatFilterViewModel result = this.statFilterViewModelFactory.Create(itemStat, new SearchQueryRequest());

            Assert.IsInstanceOf <MinMaxStatFilterViewModel>(result);
        }
Exemplo n.º 3
0
        public void CreateShouldNotSetIsEnabledTrueIfQueryRequestDoesNotContainFilter(ItemStat itemStat)
        {
            SearchQueryRequest queryRequest = new SearchQueryRequest();

            StatFilterViewModel result = this.statFilterViewModelFactory.Create(itemStat, queryRequest);

            Assert.That(result.IsEnabled, Is.False);
        }
Exemplo n.º 4
0
        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);
        }
Exemplo n.º 5
0
        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));
        }
Exemplo n.º 6
0
        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));
        }
Exemplo n.º 7
0
        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));
        }
Exemplo n.º 8
0
        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);
        }
Exemplo n.º 9
0
        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));
        }