Beispiel #1
0
        public async Task <CargoCatalogItemsEM> GetAvailableParams()
        {
            await Task.Delay(1000);

            var result = new CargoCatalogItemsEM
            {
                Brands = new List <CatalogItemEM>
                {
                    new CatalogItemEM {
                        Name = "Toyota", Value = 1
                    },
                    new CatalogItemEM {
                        Name = "Nissan", Value = 2
                    },
                    new CatalogItemEM {
                        Name = "BMW", Value = 3
                    },
                },

                Weights = new List <CatalogItemEM>
                {
                    new CatalogItemEM {
                        Name = "1 т", Value = 1000
                    },
                    new CatalogItemEM {
                        Name = "2 т", Value = 2000
                    },
                    new CatalogItemEM {
                        Name = "3 т", Value = 3000
                    }
                },

                Kinds = new List <CatalogItemEM>
                {
                    new CatalogItemEM {
                        Name = "Мотоцикл", Value = 1
                    },
                    new CatalogItemEM {
                        Name = "Автомобиль", Value = 2
                    },
                    new CatalogItemEM {
                        Name = "Лодка", Value = 3
                    }
                }
            };

            return(result);
        }
        public async Task GetAvailableParams()
        {
            var priority             = RequestPriority.UserInitiated;
            var externalCatalogItems = new CargoCatalogItemsEM();
            var domainCatalogItems   = new CargoCatalogItemsDM();

            Suite.CargoAPIMock
            .Setup(m => m.GetAvailableParams())
            .ReturnsAsync(externalCatalogItems);

            Suite.MappingServiceMock
            .Setup(m => m.Map <CargoCatalogItemsDM>(externalCatalogItems))
            .Returns(domainCatalogItems);

            var items = await Suite.CargoRepository.GetAvailableParams(priority);

            Suite.CargoAPIMock
            .Verify(m => m.GetAvailableParams(), Times.Once);

            Suite.MappingServiceMock
            .Verify(m => m.Map <CargoCatalogItemsDM>(externalCatalogItems), Times.Once);

            Assert.Equal(domainCatalogItems, items);
        }