예제 #1
0
        public async Task <IActionResult> UpdateLawyerDetails(LawyerDetailsModel lawyerModel)
        {
            if (ModelState.IsValid == false)
            {
                return(ValidationProblem());
            }

            await _lawyersService.UpdateAsync(lawyerModel);

            return(NoContent());
        }
예제 #2
0
        private static LawyerDetailsModel GetSampleData_Details(int lawyerId)
        {
            var result = new LawyerDetailsModel
            {
                LawyerId       = lawyerId,
                LawyerFullname = "ABC",
                LawyerEmail    = "*****@*****.**",
                LawyerAddress  = "Earth",
                LawyerPhone    = "1234"
            };

            return(result);
        }
예제 #3
0
        public async Task <ActionResult <LawyerDetailsModel> > GetLawyerDetails(int lawyerId)
        {
            if (lawyerId < 0)
            {
                return(UnprocessableEntity($"Invalid LawyerId: {lawyerId}"));
            }
            LawyerDetailsModel lawyerDetails = await _lawyersService.RetrieveAsync(lawyerId);

            if (lawyerDetails is null)
            {
                return(NotFound());
            }
            return(Ok(lawyerDetails));
        }
예제 #4
0
        public async Task UpdateAsync(LawyerDetailsModel lawyerModel)
        {
            var sqlModel = new SqlParamsModel
            {
                Sql        = "pkg_lawyers.p_update_lawyer",
                Parameters = new OracleDynamicParameters()
            };

            sqlModel.Parameters.Add("pi_lawyer_id", lawyerModel.LawyerId, dbType: OracleMappingType.Int32, ParameterDirection.Input);
            sqlModel.Parameters.Add("pi_lawyer_email", lawyerModel.LawyerEmail, dbType: OracleMappingType.Varchar2, ParameterDirection.Input);
            sqlModel.Parameters.Add("pi_lawyer_fullname", lawyerModel.LawyerFullname, dbType: OracleMappingType.Varchar2, ParameterDirection.Input);
            sqlModel.Parameters.Add("pi_lawyer_phone", lawyerModel.LawyerPhone, dbType: OracleMappingType.Varchar2, ParameterDirection.Input);
            sqlModel.Parameters.Add("pi_lawyer_address", lawyerModel.LawyerAddress, dbType: OracleMappingType.Varchar2, ParameterDirection.Input);

            await _dataAccess.ExecuteAsync(sqlModel);
        }
예제 #5
0
        public async Task GetLawyerDetails_NotFound()
        {
            // Arrange
            int lawyerId = 1;
            LawyerDetailsModel expected = null;

            _mockLawyersService.RetrieveAsync(lawyerId).Returns(expected);

            // Act
            ActionResult <LawyerDetailsModel> response = await _sut.GetLawyerDetails(lawyerId);

            // Assert
            await _mockLawyersService.Received(1).RetrieveAsync(lawyerId);

            Assert.IsType <NotFoundResult>(response.Result);
        }
예제 #6
0
        public async Task GetLawyerDetails_Valid()
        {
            // Arrange
            int lawyerId = 1;
            LawyerDetailsModel expected = GetSampleData_Details(lawyerId);

            _mockLawyersService.RetrieveAsync(lawyerId).Returns(expected);

            // Act
            ActionResult <LawyerDetailsModel> response = await _sut.GetLawyerDetails(lawyerId);

            // Assert
            await _mockLawyersService.Received(1).RetrieveAsync(lawyerId);

            var createdAtActionResult = Assert.IsType <OkObjectResult>(response.Result);
            LawyerDetailsModel actual = (LawyerDetailsModel)createdAtActionResult.Value;

            Assert.True(actual is not null);
            Assert.Equal(expected.LawyerId, actual.LawyerId);
            Assert.Equal(expected.LawyerFullname, actual.LawyerFullname);
            Assert.Equal(expected.LawyerEmail, actual.LawyerEmail);
            Assert.Equal(expected.LawyerAddress, actual.LawyerAddress);
            Assert.Equal(expected.LawyerPhone, actual.LawyerPhone);
        }
예제 #7
0
 public Task <HttpResponseMessage> UpdateLawyerAsync(LawyerDetailsModel lawyerDetails)
 {
     return(_http.PutAsJsonAsync(lawyerBaseUrl, lawyerDetails));
 }