示例#1
0
        public async Task Should_Success_DeleteAsync()
        {
            MaterialRequestNoteRepository repositoryMrn = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            InventorySummaryRepository    inventorySummaryRepository = new InventorySummaryRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventorySummaryRepository)))
            .Returns(inventorySummaryRepository);

            InventoryMovementRepository inventoryMovementRepository = new InventoryMovementRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryMovementRepository)))
            .Returns(inventoryMovementRepository);

            InventoryDocumentRepository inventoryDocumentRepository = new InventoryDocumentRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryDocumentRepository)))
            .Returns(inventoryDocumentRepository);

            var mrn = await DataUtilMrn(repositoryMrn).GetTestData();

            serviceProvider.Setup(x => x.GetService(typeof(IMaterialRequestNoteRepository)))
            .Returns(repositoryMrn);

            MaterialDistributionNoteRepository repository = new MaterialDistributionNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(repository, repositoryMrn).GetTestData();

            var response = await repository.DeleteAsync(data.Id);

            Assert.NotEqual(0, response);
        }
示例#2
0
        public void Should_Success_ValidateNullDetailVM()
        {
            MaterialRequestNoteRepository repositoryMrn = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            InventorySummaryRepository    InventorySummaryRepository = new InventorySummaryRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventorySummaryRepository)))
            .Returns(InventorySummaryRepository);

            InventoryMovementRepository InventoryMovementRepository = new InventoryMovementRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryMovementRepository)))
            .Returns(InventoryMovementRepository);

            InventoryDocumentRepository inventoryDocumentRepository = new InventoryDocumentRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryDocumentRepository)))
            .Returns(inventoryDocumentRepository);

            serviceProvider.Setup(x => x.GetService(typeof(IMaterialRequestNoteRepository)))
            .Returns(repositoryMrn);

            MaterialDistributionNoteRepository repository = new MaterialDistributionNoteRepository(serviceProvider.Object, inventoryDbContext);
            var vm = new MaterialDistributionNoteViewModel()
            {
                MaterialDistributionNoteItems = new List <MaterialDistributionNoteItemViewModel>()
                {
                    new MaterialDistributionNoteItemViewModel()
                }
            };
            ValidationContext validationContext = new ValidationContext(vm, serviceProvider.Object, null);

            var response = vm.Validate(InventorySummaryRepository.GetByStorageAndMTR);

            Assert.True(response.Count() > 0);
        }
        public async Task Should_Fail_DeleteAsync_Null()
        {
            MaterialRequestNoteRepository repository       = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            MaterialRequestNoteRepository sampleRepository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);

            await Assert.ThrowsAnyAsync <Exception>(() => repository.DeleteAsync(0));
        }
示例#4
0
        public async Task Should_Fail_UpdateAsync()
        {
            MaterialRequestNoteRepository      repositoryMrn = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            MaterialDistributionNoteRepository repository    = new MaterialDistributionNoteRepository(getFailServiceProvider.Object, inventoryDbContext);

            await Assert.ThrowsAnyAsync <Exception>(() => repository.UpdateAsync(99, new MaterialDistributionNote()));
        }
示例#5
0
        public async Task Should_Success_UpdateIsApprove()
        {
            MaterialRequestNoteRepository repositoryMrn = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            InventorySummaryRepository    InventorySummaryRepository = new InventorySummaryRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventorySummaryRepository)))
            .Returns(InventorySummaryRepository);

            InventoryMovementRepository InventoryMovementRepository = new InventoryMovementRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryMovementRepository)))
            .Returns(InventoryMovementRepository);

            InventoryDocumentRepository inventoryDocumentRepository = new InventoryDocumentRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryDocumentRepository)))
            .Returns(inventoryDocumentRepository);

            var mrn = await DataUtilMrn(repositoryMrn).GetTestData();

            serviceProvider.Setup(x => x.GetService(typeof(IMaterialRequestNoteRepository)))
            .Returns(repositoryMrn);

            MaterialDistributionNoteRepository repository = new MaterialDistributionNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(repository, repositoryMrn).GetTestData();

            var response = repository.UpdateIsApprove(new List <int>()
            {
                data.Id
            });

            Assert.True(response);
        }
示例#6
0
        public async Task Should_Success_Read()
        {
            MaterialRequestNoteRepository repositoryMrn = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            InventorySummaryRepository    InventorySummaryRepository = new InventorySummaryRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventorySummaryRepository)))
            .Returns(InventorySummaryRepository);

            InventoryMovementRepository InventoryMovementRepository = new InventoryMovementRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryMovementRepository)))
            .Returns(InventoryMovementRepository);

            InventoryDocumentRepository inventoryDocumentRepository = new InventoryDocumentRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryDocumentRepository)))
            .Returns(inventoryDocumentRepository);

            var mrn = await DataUtilMrn(repositoryMrn).GetTestData();

            serviceProvider.Setup(x => x.GetService(typeof(IMaterialRequestNoteRepository)))
            .Returns(repositoryMrn);

            MaterialDistributionNoteRepository repository = new MaterialDistributionNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(repository, repositoryMrn).GetTestData();

            var model = repository.Read(1, 25, "{}", null, null, "{}");

            Assert.NotNull(model);
        }
示例#7
0
 public async Task Should_Fail_CreateAsync()
 {
     MaterialRequestNoteRepository      repositoryMrn = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
     MaterialDistributionNoteRepository repository    = new MaterialDistributionNoteRepository(getFailServiceProvider.Object, inventoryDbContext);
     var data = DataUtil(repository, repositoryMrn).GetNewData();
     await Assert.ThrowsAnyAsync <Exception>(() => repository.CreateAsync(data));
 }
        public async Task Should_Success_CreateAsync()
        {
            MaterialRequestNoteRepository repository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data     = DataUtil(repository).GetNewData();
            var response = await repository.CreateAsync(data);

            Assert.NotEqual(0, response);
        }
        public async Task Should_Fail_DeleteAsync()
        {
            MaterialRequestNoteRepository repository       = new MaterialRequestNoteRepository(getFailServiceProvider.Object, inventoryDbContext);
            MaterialRequestNoteRepository sampleRepository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(sampleRepository).GetTestData();

            await Assert.ThrowsAnyAsync <Exception>(() => repository.DeleteAsync(data.Id));
        }
        public async Task Should_Fail_UpdateDistributedQuantity()
        {
            MaterialRequestNoteRepository repository       = new MaterialRequestNoteRepository(getFailServiceProvider.Object, inventoryDbContext);
            MaterialRequestNoteRepository sampleRepository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(sampleRepository).GetTestData();

            Assert.ThrowsAny <Exception>(() => repository.UpdateDistributedQuantity(data.Id, data));
        }
        public async Task Should_Success_UpdateDistributedQuantity()
        {
            MaterialRequestNoteRepository repository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(repository).GetTestData();

            repository.UpdateDistributedQuantity(data.Id, data);
            Assert.True(true);
        }
        public async Task Should_Success_ReadById()
        {
            MaterialRequestNoteRepository sampleRepository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(sampleRepository).GetTestData();

            var model = await sampleRepository.ReadByIdAsync(data.Id);

            Assert.NotNull(model);
        }
        public void Should_Success_ValidateNullVM()
        {
            MaterialRequestNoteRepository sampleRepository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var vm = new MaterialsRequestNoteViewModel();
            ValidationContext validationContext = new ValidationContext(vm, serviceProvider.Object, null);
            var response = vm.Validate(validationContext);

            Assert.True(response.Count() > 0);
        }
        public async Task Should_Success_MapToViewModel()
        {
            MaterialRequestNoteRepository sampleRepository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(sampleRepository).GetTestData();

            var model = sampleRepository.MapToViewModel(data);

            Assert.NotNull(model);
        }
示例#15
0
        public void Should_Success_GetReport()
        {
            MaterialRequestNoteRepository      repositoryMrn = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            MaterialDistributionNoteRepository repository    = new MaterialDistributionNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data     = DataUtil(repository, repositoryMrn).GetTestData();
            var response = repository.GetReport(null, null, DateTime.UtcNow, 1, 25, "{}", 7);

            Assert.NotNull(response);
        }
        public async Task Should_Success_GetReport()
        {
            MaterialRequestNoteRepository repository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(repository).GetTestData();

            var response = repository.GetReport(null, null, null, null, null, null, null, 1, 25, "{}", 6);

            Assert.True(true);
        }
        public async Task Should_Success_ValidateVM()
        {
            MaterialRequestNoteRepository sampleRepository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(sampleRepository).GetTestData();

            var vm = sampleRepository.MapToViewModel(data);
            ValidationContext validationContext = new ValidationContext(vm, serviceProvider.Object, null);
            var response = vm.Validate(validationContext);

            Assert.True(response.Count() == 0);
        }
示例#18
0
        public void Should_Success_MapToModel()
        {
            MaterialRequestNoteRepository      repositoryMrn = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            MaterialDistributionNoteRepository repository    = new MaterialDistributionNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = DataUtil(repository, repositoryMrn).GetEmptyData();


            var model = repository.MapToModel(data);

            Assert.NotNull(model);
        }
        public void Should_Success_MapToModel()
        {
            MaterialRequestNoteRepository sampleRepository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = DataUtil(sampleRepository).GetEmptyData();

            data.RequestType = "AWAL";

            var model = sampleRepository.MapToModel(data);

            Assert.NotNull(model);
        }
        public async Task Should_Success_UpdateIsCompleted_False()
        {
            MaterialRequestNoteRepository repository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(repository).GetTestData();

            foreach (var item in data.MaterialsRequestNoteItems)
            {
                item.ProductionOrderIsCompleted = false;
            }
            await repository.UpdateIsCompleted(data.Id, data);

            Assert.True(true);
        }
        public async Task Should_Success_Update()
        {
            MaterialRequestNoteRepository sampleRepository = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(sampleRepository).GetTestData();

            var vm       = sampleRepository.MapToViewModel(data);
            var testData = sampleRepository.MapToModel(vm);

            testData.MaterialsRequestNoteItems.FirstOrDefault().ProductionOrderId = "3";
            testData.MaterialsRequestNoteItems.Add(new MaterialsRequestNoteItem()
            {
                Grade                      = "a",
                Length                     = 1,
                OrderQuantity              = 1,
                OrderTypeCode              = "code",
                OrderTypeId                = "1",
                OrderTypeName              = "name",
                ProductCode                = "code",
                ProductionOrderNo          = "c",
                Remark                     = "a",
                ProductId                  = "1",
                ProductionOrderId          = "1",
                ProductionOrderIsCompleted = true,
                ProductName                = "name"
            });
            var response = await sampleRepository.UpdateAsync(testData.Id, testData);

            Assert.NotEqual(0, response);

            var newData = await sampleRepository.ReadByIdAsync(data.Id);

            var vm2       = sampleRepository.MapToViewModel(newData);
            var testData2 = sampleRepository.MapToModel(vm);

            testData2.MaterialsRequestNoteItems.Clear();
            var newresponse = await sampleRepository.UpdateAsync(testData2.Id, testData2);

            Assert.NotEqual(0, newresponse);
        }
示例#22
0
        public async Task Should_Success_ValidateVM()
        {
            MaterialRequestNoteRepository repositoryMrn = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            InventorySummaryRepository    InventorySummaryRepository = new InventorySummaryRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventorySummaryRepository)))
            .Returns(InventorySummaryRepository);
            await InventorySummaryRepository.Create(new InventorySummary()
            {
                StorageName = "Warehouse Here Finishing",
                UomUnit     = "MTR",
                ProductCode = "Code",
                Quantity    = 1
            });

            InventoryMovementRepository InventoryMovementRepository = new InventoryMovementRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryMovementRepository)))
            .Returns(InventoryMovementRepository);

            InventoryDocumentRepository inventoryDocumentRepository = new InventoryDocumentRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryDocumentRepository)))
            .Returns(inventoryDocumentRepository);

            serviceProvider.Setup(x => x.GetService(typeof(IMaterialRequestNoteRepository)))
            .Returns(repositoryMrn);

            MaterialDistributionNoteRepository repository = new MaterialDistributionNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(repository, repositoryMrn).GetTestData();

            var vm = repository.MapToViewModel(data);
            ValidationContext validationContext = new ValidationContext(vm, serviceProvider.Object, null);

            var response = vm.Validate(InventorySummaryRepository.GetByStorageAndMTR);

            Assert.True(response.Count() == 0);
        }
示例#23
0
        public async Task Should_Success_CreateAsync()
        {
            MaterialRequestNoteRepository repositoryMrn = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            InventorySummaryRepository    inventorySummaryRepository = new InventorySummaryRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventorySummaryRepository)))
            .Returns(inventorySummaryRepository);

            InventoryMovementRepository inventoryMovementRepository = new InventoryMovementRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryMovementRepository)))
            .Returns(inventoryMovementRepository);

            InventoryDocumentRepository inventoryDocumentRepository = new InventoryDocumentRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryDocumentRepository)))
            .Returns(inventoryDocumentRepository);

            var mrn = await DataUtilMrn(repositoryMrn).GetTestData();

            serviceProvider.Setup(x => x.GetService(typeof(IMaterialRequestNoteRepository)))
            .Returns(repositoryMrn);

            MaterialDistributionNoteRepository repository = new MaterialDistributionNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = DataUtil(repository, repositoryMrn).GetNewData();

            foreach (var item in data.MaterialDistributionNoteItems)
            {
                item.MaterialRequestNoteId             = mrn.Id;
                item.MaterialRequestNoteCreatedDateUtc = mrn.CreatedUtc;
                item.MaterialRequestNoteCode           = mrn.Code;
            }
            var response = await repository.CreateAsync(data);

            Assert.NotEqual(0, response);
        }
 public MaterialDistributionNoteSampleData(MaterialDistributionNoteRepository repository, MaterialRequestNoteRepository materialRequestNoteRepository)
 {
     _repository = repository;
     _materialRequestNoteRepository = materialRequestNoteRepository;
 }
示例#25
0
        public async Task Should_Success_Update()
        {
            MaterialRequestNoteRepository repositoryMrn = new MaterialRequestNoteRepository(serviceProvider.Object, inventoryDbContext);
            InventorySummaryRepository    InventorySummaryRepository = new InventorySummaryRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventorySummaryRepository)))
            .Returns(InventorySummaryRepository);

            InventoryMovementRepository InventoryMovementRepository = new InventoryMovementRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryMovementRepository)))
            .Returns(InventoryMovementRepository);

            InventoryDocumentRepository inventoryDocumentRepository = new InventoryDocumentRepository(serviceProvider.Object, inventoryDbContext);

            serviceProvider.Setup(s => s.GetService(typeof(IInventoryDocumentRepository)))
            .Returns(inventoryDocumentRepository);

            var mrn = await DataUtilMrn(repositoryMrn).GetTestData();

            serviceProvider.Setup(x => x.GetService(typeof(IMaterialRequestNoteRepository)))
            .Returns(repositoryMrn);

            MaterialDistributionNoteRepository repository = new MaterialDistributionNoteRepository(serviceProvider.Object, inventoryDbContext);
            var data = await DataUtil(repository, repositoryMrn).GetTestData();

            var vm       = repository.MapToViewModel(data);
            var testData = repository.MapToModel(vm);

            testData.MaterialDistributionNoteItems.Add(new MaterialDistributionNoteItem()
            {
                MaterialDistributionNoteDetails = new List <MaterialDistributionNoteDetail>()
                {
                    new MaterialDistributionNoteDetail()
                }
            });
            testData.UnitName = "a";

            var response = await repository.UpdateAsync(testData.Id, testData);

            Assert.NotEqual(0, response);

            var newData3 = await repository.ReadByIdAsync(data.Id);

            var vm3       = repository.MapToViewModel(newData3);
            var testData3 = repository.MapToModel(vm);
            var dItem     = testData3.MaterialDistributionNoteItems.FirstOrDefault();

            dItem.MaterialDistributionNoteDetails = new List <MaterialDistributionNoteDetail>()
            {
                new MaterialDistributionNoteDetail()
                {
                }
            };
            var newResponse3 = await repository.UpdateAsync(testData3.Id, testData3);

            Assert.NotEqual(0, newResponse3);
            var newData = await repository.ReadByIdAsync(data.Id);

            var vm2       = repository.MapToViewModel(newData);
            var testData2 = repository.MapToModel(vm);

            testData2.MaterialDistributionNoteItems.Clear();
            var newResponse = await repository.UpdateAsync(testData2.Id, testData2);

            Assert.NotEqual(0, newResponse);
        }
示例#26
0
 private MaterialDistributionNoteSampleData DataUtil(MaterialDistributionNoteRepository repository, MaterialRequestNoteRepository mrnRepository)
 {
     return(new MaterialDistributionNoteSampleData(repository, mrnRepository));
 }
示例#27
0
 public MaterialRequestNoteSampleData(MaterialRequestNoteRepository materialRequestNoteRepository)
 {
     _materialRequestNoteRepository = materialRequestNoteRepository;
 }
 private MaterialRequestNoteSampleData DataUtil(MaterialRequestNoteRepository repository)
 {
     return(new MaterialRequestNoteSampleData(repository));
 }