示例#1
0
 public static GetInstructorByIdRequest ConvertInstructorId(this CreateInstructorAccountRequest request)
 {
     return(new GetInstructorByIdRequest
     {
         InstructorId = request.Id
     });
 }
示例#2
0
 public static InstructorData ConvertToInstructorData(this CreateInstructorAccountRequest request)
 {
     return(new InstructorData
     {
         Id = request.Id,
         FullName = request.FullName,
         Email = request.Email,
         Bio = request.Bio,
         Language = request.Language
     });
 }
        public HttpResponseMessage CreateInstructorAccount([FromBody] CreateInstructorAccountRequest request)
        {
            var response = _service.CreateNewInstructor(request);

            if (response)
            {
                return(Request.CreateResponse <bool>(HttpStatusCode.OK, response));
            }
            else
            {
                return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Failed to create new instructor"));
            }
        }
示例#4
0
        public void CreateInstructorAccountUnHappy()
        {
            var request = new CreateInstructorAccountRequest
            {
                Id       = 12,
                FullName = "Tommy Leins",
                Email    = "*****@*****.**",
                Bio      = "Senior Andoid Developer",
                Language = "Kotlin"
            };

            var ex = Xunit.Assert.Throws <Exception>(() => service.CreateInstructorAccount(request));

            Xunit.Assert.Equal("The instructor id is existing", ex.Message);
        }
示例#5
0
        public void CreateInstructorAccount()
        {
            var request = new CreateInstructorAccountRequest
            {
                Id       = 12,
                FullName = "Tommy Leins",
                Email    = "*****@*****.**",
                Bio      = "Senior Andoid Developer",
                Language = "Kotlin"
            };

            var res = service.CreateInstructorAccount(request);

            Xunit.Assert.True(res);
        }
        public bool CreateInstructorAccount(CreateInstructorAccountRequest request)
        {
            string sql = @"INSERT INTO Instructor (Id,FullName,Email,Bio,Language) VALUES (@Id,@FullName,@Email,@Bio,@Language)";
            int    result;
            var    parameters = new { request.Id, request.FullName, request.Email, request.Bio, request.Language };

            using (var con = GetSqlConnection())
            {
                using (var transaction = con.BeginTransaction())
                {
                    if (GetInstructorById(request.ConvertInstructorId()).Instructor == null)
                    {
                        result = con.Execute(sql, parameters, transaction: transaction);
                    }
                    else
                    {
                        throw new Exception("The instructor id is existing");
                    }
                    transaction.Commit();
                }
            }
            return(result == 1);
        }
示例#7
0
        public bool CreateNewInstructor(CreateInstructorAccountRequest request)
        {
            ValidateUserData(request.ConvertToInstructorData());

            return(_dbService.CreateInstructorAccount(request));
        }