예제 #1
0
        public void Place_HaveError()
        {
            // Arrange
            var validator     = GetValidationRules();
            var unitUnderTest = new PlaceGarmentCuttingInCommand();

            // Action
            var result = validator.TestValidate(unitUnderTest);

            // Assert
            result.ShouldHaveError();
        }
예제 #2
0
        public void Place_HaveError_Date()
        {
            // Arrange
            var validator     = GetValidationRules();
            var unitUnderTest = new PlaceGarmentCuttingInCommand();

            unitUnderTest.CuttingInDate = DateTimeOffset.Now.AddDays(-7);
            unitUnderTest.PreparingDate = DateTimeOffset.Now;

            // Action
            var result = validator.TestValidate(unitUnderTest);

            // Assert
            result.ShouldHaveError();
        }
예제 #3
0
        public async Task <IActionResult> Post([FromBody] PlaceGarmentCuttingInCommand command)
        {
            try
            {
                VerifyUser();

                var order = await Mediator.Send(command);

                return(Ok(order.Identity));
            }
            catch (Exception e)
            {
                throw e;
            }
        }
        public async Task Handle_StateUnderTest_ExpectedBehavior()
        {
            // Arrange
            Guid preparingItemGuid = Guid.NewGuid();
            PlaceGarmentCuttingInCommandHandler unitUnderTest         = CreatePlaceGarmentCuttingInCommandHandler();
            CancellationToken            cancellationToken            = CancellationToken.None;
            PlaceGarmentCuttingInCommand placeGarmentCuttingInCommand = new PlaceGarmentCuttingInCommand()
            {
                RONo          = "RONo",
                Unit          = new UnitDepartment(1, "UnitCode", "UnitName"),
                CuttingInDate = DateTimeOffset.Now,
                Items         = new List <GarmentCuttingInItemValueObject>
                {
                    new GarmentCuttingInItemValueObject
                    {
                        Details = new List <GarmentCuttingInDetailValueObject>
                        {
                            new GarmentCuttingInDetailValueObject
                            {
                                PreparingItemId = preparingItemGuid,
                                Product         = new Product(1, "ProductCode", "ProductName"),
                                PreparingUom    = new Uom(1, "UomUnit"),
                                CuttingInUom    = new Uom(2, "PCS"),
                                IsSave          = true,
                            }
                        }
                    }
                },
            };

            _mockCuttingInRepository
            .Setup(s => s.Query)
            .Returns(new List <GarmentCuttingInReadModel>().AsQueryable());
            _mockPreparingItemRepository
            .Setup(s => s.Query)
            .Returns(new List <GarmentPreparingItemReadModel>
            {
                new GarmentPreparingItemReadModel(preparingItemGuid)
            }.AsQueryable());

            _mockCuttingInRepository
            .Setup(s => s.Update(It.IsAny <GarmentCuttingIn>()))
            .Returns(Task.FromResult(It.IsAny <GarmentCuttingIn>()));
            _mockCuttingInItemRepository
            .Setup(s => s.Update(It.IsAny <GarmentCuttingInItem>()))
            .Returns(Task.FromResult(It.IsAny <GarmentCuttingInItem>()));
            _mockCuttingInDetailRepository
            .Setup(s => s.Update(It.IsAny <GarmentCuttingInDetail>()))
            .Returns(Task.FromResult(It.IsAny <GarmentCuttingInDetail>()));
            _mockPreparingItemRepository
            .Setup(s => s.Update(It.IsAny <GarmentPreparingItem>()))
            .Returns(Task.FromResult(It.IsAny <GarmentPreparingItem>()));

            _MockStorage
            .Setup(x => x.Save())
            .Verifiable();

            // Act
            var result = await unitUnderTest.Handle(placeGarmentCuttingInCommand, cancellationToken);

            // Assert
            result.Should().NotBeNull();
        }
예제 #5
0
        public void Place_NotHaveError()
        {
            // Arrange
            Guid id            = Guid.NewGuid();
            var  unitUnderTest = new PlaceGarmentCuttingInCommand()
            {
                Article       = "Article",
                CutInNo       = "CutInNo",
                CuttingFrom   = "CuttingFrom",
                CuttingInDate = DateTimeOffset.Now,
                PreparingDate = DateTimeOffset.Now,
                CuttingType   = "CuttingType",
                FC            = 1,
                Price         = 1,
                RONo          = "RONo",
                Unit          = new Domain.Shared.ValueObjects.UnitDepartment()
                {
                    Id   = 1,
                    Code = "Code",
                    Name = "Name"
                },
                Items = new List <GarmentCuttingInItemValueObject>()
                {
                    new GarmentCuttingInItemValueObject()
                    {
                        Id          = id,
                        PreparingId = id,
                        SewingOutId = id,
                        SewingOutNo = "SewingOutNo",
                        UENId       = 1,
                        UENNo       = "UENNo",
                        Details     = new List <GarmentCuttingInDetailValueObject>()
                        {
                            new GarmentCuttingInDetailValueObject()
                            {
                                IsSave            = true,
                                BasicPrice        = 1,
                                CuttingInQuantity = 1,
                                CuttingInUom      = new Domain.Shared.ValueObjects.Uom()
                                {
                                    Id   = 1,
                                    Unit = "Unit"
                                },
                                DesignColor                = "DesignColor",
                                FabricType                 = "FABRIC",
                                FC                         = 1,
                                PreparingItemId            = id,
                                PreparingQuantity          = 1,
                                PreparingRemainingQuantity = 2,
                                PreparingUom               = new Domain.Shared.ValueObjects.Uom()
                                {
                                    Id   = 1,
                                    Unit = "Unit"
                                },
                                Price   = 1,
                                Product = new Domain.Shared.ValueObjects.Product()
                                {
                                    Id = 1,
                                },
                                RemainingQuantity = 1
                            }
                        }
                    }
                }
            };

            var validator = GetValidationRules();

            // Action
            var result = validator.TestValidate(unitUnderTest);

            // Assert
            result.ShouldNotHaveError();
        }