Exemple #1
0
        public void AddSupplier_ShouldReturn_Success()
        {
            // Arrange
            SuppliersModel supplier = new SuppliersModel
            {
                Name     = "New supplier",
                Link     = "Suppliers link1",
                Currency = "Eur",
                Notes    = "some notes for supplier1"
            };

            fakeSuppliersRepository.Setup(a => a.Add(supplier));
            suppliersService = new SuppliersService(fakeSuppliersRepository.Object);
            SuppliersDtoModel supplierDto = new SuppliersDtoModel()
            {
                Name     = supplier.Name,
                Link     = supplier.Link,
                Currency = supplier.Currency,
                Notes    = supplier.Notes
            };

            try
            {
                // Act
                suppliersService.AddSupplier(supplierDto);
                operationSucceeded = true;
            }
            catch (Exception ex)
            {
                errorMessage = ex.Message + " | " + ex.StackTrace;
            }

            // Assert
            Assert.IsTrue(operationSucceeded, errorMessage);
        }
        public void SetupSuppliersDetailForEdit_ShouldReturn_Success()
        {
            // Arrange
            SuppliersDtoModel suppliersDto = new SuppliersDtoModel
            {
                Id       = 1,
                Name     = "supplier",
                Link     = "link",
                Currency = "USD",
                Notes    = "notes"
            };
            Mock <IStoreFacade> fakeFacadeService = new Mock <IStoreFacade>();

            fakeFacadeService.Setup(s => s.GetSupplierById(1)).Returns(suppliersDto);
            SuppliersDetailPresenter suppliersDetailPresenter = new SuppliersDetailPresenter(
                new SuppliersDetailUC(new ErrorMessageView()), fakeFacadeService.Object);
            bool   operationSucceeded = false;
            string errorMessage       = "";

            try
            {
                // Act
                suppliersDetailPresenter.SetupSuppliersDetailForEdit(1);
                operationSucceeded = true;
            }
            catch (Exception ex)
            {
                errorMessage = ex.Message + " | " + ex.StackTrace;
            }

            // Assert
            Assert.IsTrue(operationSucceeded, errorMessage);
        }
Exemple #3
0
        private void SubscribeToEvents()
        {
            suppliersDetailUC.SaveSuppliersDetailEventRaised += (sender, modelDictionary) =>
            {
                SuppliersDtoModel supplierDto = new SuppliersDtoModel()
                {
                    Id       = modelDictionary.ModelDictionary["Id"] == "" ? 0 : int.Parse(modelDictionary.ModelDictionary["Id"]),
                    Name     = modelDictionary.ModelDictionary["Name"],
                    Link     = modelDictionary.ModelDictionary["Link"],
                    Currency = modelDictionary.ModelDictionary["Currency"],
                    Notes    = modelDictionary.ModelDictionary["Notes"]
                };
                if (supplierDto.Id > 0)
                {
                    facade.UpdateSupplier(supplierDto);
                }
                else
                {
                    facade.AddSupplier(supplierDto);
                }

                EventHelper.RaiseEvent(this, SaveSupplierClickEventRaised, new EventArgs());
            };

            suppliersDetailUC.CancelSuppliersDetailEventRaised += (sender, e) => EventHelper.RaiseEvent(this, CancelClickEventRaised, new EventArgs());
        }
Exemple #4
0
        /// <summary>
        /// Налаштування форми вводу даних для редагування існуючого постачальника
        /// </summary>
        /// <param name="id">id існуючого постачальника</param>
        public void SetupSuppliersDetailForEdit(int id)
        {
            SuppliersDtoModel           supplierDto     = facade.GetSupplierById(id);
            Dictionary <string, string> modelDictionary = BuildModelDictionary(supplierDto);

            suppliersDetailUC.SetupControls(modelDictionary);
            EventHelper.RaiseEvent(this, ReadyToShowSuppliersDetailEventRaised, new EventArgs());
        }
Exemple #5
0
        private Dictionary <string, string> BuildModelDictionary(SuppliersDtoModel supplierDto)
        {
            var modelDictionary = new Dictionary <string, string>()
            {
                { "Id", supplierDto.Id.ToString() },
                { "Name", supplierDto.Name },
                { "Link", supplierDto.Link },
                { "Currency", supplierDto.Currency },
                { "Notes", supplierDto.Notes }
            };

            return(modelDictionary);
        }
Exemple #6
0
        public void GetSupplierById_ShouldReturn_NotNull()
        {
            // Arrange
            fakeSuppliersRepository.Setup(a => a.GetById(1)).Returns(new SuppliersModel());
            suppliersService = new SuppliersService(fakeSuppliersRepository.Object);
            SuppliersDtoModel supplierDto = null;

            try
            {
                // Act
                supplierDto = suppliersService.GetSupplierById(1);
            }
            catch (Exception ex)
            {
                errorMessage = ex.Message + " | " + ex.StackTrace;
            }

            // Assert
            Assert.IsNotNull(supplierDto, errorMessage);
        }
Exemple #7
0
        private void SubscribeToEvents()
        {
            suppliersUC.AddNewSupplierEventRaised += (sender, e) => suppliersDetailPresenter.SetupSuppliersDetailForAdd();

            suppliersUC.EditSupplierEventRaised += (sender, e) =>
            {
                SuppliersDtoModel supplierDto = (SuppliersDtoModel)bindingSource.Current;
                suppliersDetailPresenter.SetupSuppliersDetailForEdit(supplierDto.Id);
            };

            suppliersUC.DeleteSupplierEventRaised += (sender, e) =>
            {
                SuppliersDtoModel supplier = (SuppliersDtoModel)bindingSource.Current;
                deleteConfirmView.ShowDeleteConfirmMessageView("Видалення постачальника",
                                                               $"Підтвердіть видалення постачальника: { supplier.Name }.", supplier.Id, "SuppliersUC");
            };

            suppliersUC.LinkToSearchChangedInUCEventRaised += (sender, modelDictionary) =>
                                                              EventHelper.RaiseEvent(this, LinkToSearchChangedEventRaised, modelDictionary);

            suppliersUC.SortSuppliersByBindingPropertyNameEventRaised += (sender, sortParameters) =>
                                                                         OnSortSuppliersByBindingPropertyNameEventRaised(sender, sortParameters);
        }
Exemple #8
0
 /// <summary>
 /// Оновлює постачальника
 /// </summary>
 /// <param name="supplierDto">Екземпляр постачальника</param>
 public void UpdateSupplier(SuppliersDtoModel supplierDto) => suppliersService.UpdateSupplier(supplierDto);
Exemple #9
0
 /// <summary>
 /// Додає постачальника
 /// </summary>
 /// <param name="supplierDto">Екземпляр постачальника</param>
 public void AddSupplier(SuppliersDtoModel supplierDto) => suppliersService.AddSupplier(supplierDto);