Exemplo n.º 1
0
        /// <summary>
        /// Updates the data of the postal operator
        /// </summary>
        /// <param name="postOperatorDto">Instance Dto the postal operator</param>
        public void UpdatePostOperator(PostOperatorDto postOperatorDto)
        {
            var          mapper       = new MapperConfiguration(cfg => cfg.CreateMap <PostOperatorDto, PostOperator>()).CreateMapper();
            PostOperator postOperator = mapper.Map <PostOperator>(postOperatorDto);

            var results = postOperatorsValidator.Validate(postOperator);

            if (results.IsValid)
            {
                postOperatorsRepository.Update(postOperator);
            }
            else
            {
                throw new Exception("Помилка валідації поштового оператора: " + Environment.NewLine +
                                    ValidationResultsHelper.GetValidationErrors(results));
            }
        }
        /// <summary>
        /// Returns postal operator by Id
        /// </summary>
        /// <param name="postOperatorId">PostOperator Id</param>
        /// <returns>Instance of the postal operator</returns>
        public IPostOperator GetById(int postOperatorId)
        {
            IPostOperator postOperator = new PostOperator();

            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                try
                {
                    conn.Open();
                }
                catch (SqlException)
                {
                    throw new Exception("Немає підключення до бази даних.");
                }

                SqlCommand cmd = new SqlCommand
                {
                    Connection  = conn,
                    CommandText = "dbo.sp_PostOperators_SelectById",
                    CommandType = CommandType.StoredProcedure,
                };

                cmd.Parameters.AddWithValue("@Id", postOperatorId);

                try
                {
                    using (SqlDataReader reader = cmd.ExecuteReader())
                    {
                        reader.Read();
                        postOperator.Id               = postOperatorId;
                        postOperator.Name             = reader["Name"].ToString();
                        postOperator.LinkToSearchPage = reader["LinkToSearchPage"].ToString();
                        postOperator.PathToLogoImage  = reader["PathToLogoImage"].ToString();
                        postOperator.IsActive         = bool.Parse(reader["IsActive"].ToString());
                        postOperator.Notes            = reader["Notes"].ToString();
                    }
                }
                catch (SqlException)
                {
                    throw new Exception("Помилка отримання екземпляру поштового оператора з бази даних.");
                }
            }

            return(postOperator);
        }
Exemplo n.º 3
0
        public void Add_ShouldReturn_Success()
        {
            //Arrange
            PostOperatorDto postOperatorDto = new PostOperatorDto
            {
                Name             = "Нова Пошта",
                LinkToSearchPage = "link123",
                PathToLogoImage  = "path123",
                IsActive         = true,
                Notes            = "notes 3"
            };
            PostOperator postOperator = new PostOperator
            {
                Name             = postOperatorDto.Name,
                LinkToSearchPage = postOperatorDto.LinkToSearchPage,
                PathToLogoImage  = postOperatorDto.PathToLogoImage,
                IsActive         = postOperatorDto.IsActive,
                Notes            = postOperatorDto.Notes
            };

            mockPostOperatorsRepo.Setup(po => po.Create(postOperator));
            PostOperatorService postOperatorService = new PostOperatorService(connString, mockPostOperatorsRepo.Object);

            try
            {
                // Act
                postOperatorService.Add(postOperatorDto);
                operationSucceded = true;
            }
            catch (Exception ex)
            {
                errorMessage = ex.Message + " | " + ex.StackTrace;
            }

            // Assert
            Assert.IsTrue(operationSucceded, errorMessage);
        }