コード例 #1
0
        public async Task GetPackageByTrackingCodesAsync_Most_Return_Correct_ActualStatus(byte actualStatusKey, string actualStatusValue)
        {
            var trackingCodes = new string[]
            {
                "trackingCodesTest1",
            };

            var dtos = new List <PackageDto>
            {
                getPackageDto(actualStatus: actualStatusKey)
            };

            mockPackageDao.Setup(x => x.GetPackageByTrackingCodesAsync(trackingCodes)).ReturnsAsync(dtos);

            var handler = new PackageQueryHandler(mockPackageDao.Object);

            var result = await handler.GetPackageByTrackingCodesAsync(trackingCodes);

            Assert.NotNull(result);
            Assert.Single(result);
            Assert.Equal(actualStatusValue, result[0].ActualStatus);
        }
コード例 #2
0
        public async Task GetPackageByTrackingCodesAsync_Most_Return_Correct_TypeOfControl(byte typeOfControlKey, string typeOfControlValue)
        {
            var trackingCodes = new string[]
            {
                "trackingCodesTest1",
            };

            var dtos = new List <PackageDto>
            {
                getPackageDto(typeOfControl: typeOfControlKey)
            };

            mockPackageDao.Setup(x => x.GetPackageByTrackingCodesAsync(trackingCodes)).ReturnsAsync(dtos);

            var handler = new PackageQueryHandler(mockPackageDao.Object);

            var result = await handler.GetPackageByTrackingCodesAsync(trackingCodes);

            Assert.NotNull(result);
            Assert.Single(result);
            Assert.Equal(typeOfControlValue, result[0].LastCheckpoint.TypeOfControl);
        }
コード例 #3
0
        public async Task GetPackageByTrackingCodesAsync_Most_Return_Packages()
        {
            var trackingCodes = new string[]
            {
                "trackingCodesTest1",
            };

            var dtos = new List <PackageDto>
            {
                getPackageDto()
            };

            mockPackageDao.Setup(x => x.GetPackageByTrackingCodesAsync(trackingCodes)).ReturnsAsync(dtos);

            var handler = new PackageQueryHandler(mockPackageDao.Object);

            var result = await handler.GetPackageByTrackingCodesAsync(trackingCodes);

            Assert.NotNull(result);
            Assert.Single(result);
            Assert.Equal("In Transit", result[0].ActualStatus);
            Assert.Equal("AreaToDeliver1", result[0].AreaToDeliver);
            Assert.False(result[0].HasValueToPay);
            Assert.Equal(2, result[0].Id);
            Assert.True(result[0].IsFragile);
            Assert.False(result[0].IsStoppedInCustoms);
            Assert.NotNull(result[0].LastCheckpoint);
            Assert.Equal("City1", result[0].LastCheckpoint.City);
            Assert.Equal("Country1", result[0].LastCheckpoint.Country);
            Assert.Equal("Port", result[0].LastCheckpoint.PlaceType);
            Assert.Equal("Final Check", result[0].LastCheckpoint.TypeOfControl);
            Assert.Equal(200, result[0].PackageWeight);
            Assert.Equal(400, result[0].Price);
            Assert.Equal(new DateTime(2021, 01, 02), result[0].ReceiveDate);
            Assert.Equal("S", result[0].Size);
            Assert.Equal("TrackingCode1", result[0].TrackingCode);

            mockPackageDao.VerifyAll();
        }