Пример #1
0
        public async Task Grouping_MultipleVersions_MultipleMethods()
        {
            // arrange
            var service = SetupForGetEncounterDetails();

            var conditionValues = PokeApiHelpers.ConditionValues(0).ToList();

            var version1    = PokeApiHelpers.NamedResourceNavigation <Version>("version1", "url1");
            var maxChance1  = 1;
            var method1     = PokeApiHelpers.NamedResourceNavigation <EncounterMethod>("method1", "url1");
            var encounters1 = PokeApiHelpers.Encounters(2, conditionValues, method1);
            var ved1        = new VersionEncounterDetail
            {
                Version          = version1,
                MaxChance        = maxChance1,
                EncounterDetails = encounters1.ToList()
            };

            var maxChance2  = 2;
            var method2     = PokeApiHelpers.NamedResourceNavigation <EncounterMethod>("method2", "url2");
            var encounters2 = PokeApiHelpers.Encounters(3, conditionValues, method2);
            var ved2        = new VersionEncounterDetail
            {
                Version          = version1,
                MaxChance        = maxChance2,
                EncounterDetails = encounters2.ToList()
            };

            var version2 = PokeApiHelpers.NamedResourceNavigation <Version>("version2", "url2");
            var ved3     = new VersionEncounterDetail
            {
                Version          = version2,
                MaxChance        = maxChance1,
                EncounterDetails = encounters1.ToList()
            };

            var ved4 = new VersionEncounterDetail
            {
                Version          = version2,
                MaxChance        = maxChance2,
                EncounterDetails = encounters2.ToList()
            };

            var versionEncounterDetails = new[] { ved1, ved2, ved3, ved4 };

            // act
            var entries = await service.GetEncounterDetails(versionEncounterDetails);

            var entryList = entries.ToList();

            // assert
            Assert.That(entryList.Count, Is.EqualTo(2));

            foreach (var entry in entryList)
            {
                Assert.That(entry.Data.Length, Is.EqualTo(2));
            }
        }
Пример #2
0
        public async Task Grouping_MultipleVersions()
        {
            // arrange
            var service = SetupForGetEncounterDetails();

            var version1    = PokeApiHelpers.NamedResourceNavigation <Version>("version1", "url1");
            var maxChance1  = 1;
            var encounters1 = PokeApiHelpers.Encounters(2);
            var ved1        = new VersionEncounterDetail
            {
                Version          = version1,
                MaxChance        = maxChance1,
                EncounterDetails = encounters1.ToList()
            };

            var version2    = PokeApiHelpers.NamedResourceNavigation <Version>("version2", "url2");
            var maxChance2  = 2;
            var encounters2 = PokeApiHelpers.Encounters(2);
            var ved2        = new VersionEncounterDetail
            {
                Version          = version2,
                MaxChance        = maxChance2,
                EncounterDetails = encounters2.ToList()
            };

            var maxChance3  = 3;
            var encounters3 = PokeApiHelpers.Encounters(2);
            var ved3        = new VersionEncounterDetail
            {
                Version          = version2,
                MaxChance        = maxChance3,
                EncounterDetails = encounters3.ToList()
            };

            var versionEncounterDetails = new[] { ved1, ved2, ved3 };

            // act
            var entries = await service.GetEncounterDetails(versionEncounterDetails);

            var entryList = entries.ToList();

            // assert
            Assert.That(entryList.Count, Is.EqualTo(2));
        }