/// <summary>
 /// Converts practitioner DAL model to practitioner API model, and adds api urls instead of ids
 /// </summary>
 /// <param name="practitioner">Practitioner to convert</param>
 /// <returns>Converted practitioner</returns>
 private Practitioner BuildPractitioner(API.DAL.Models.Practitioner practitioner)
 {
     return(new Practitioner
     {
         Id = practitioner.Id,
         Clinic = practitioner.ClinicId != 0 ? ApiHelper.BuildClinicURL(practitioner.ClinicId) : null,
         FirstName = practitioner.FirstName,
         LastName = practitioner.LastName,
         PhoneNo = practitioner.PhoneNo,
         Email = practitioner.Email
     });
 }
 /// <summary>
 /// Creates a new practitioner
 /// </summary>
 /// <param name="practitioner">The practitioner that is being created</param>
 // POST: api/Practitioner
 public IHttpActionResult Post([FromBody] API.DAL.Models.Practitioner practitioner)
 {
     try
     {
         _practitionerRepository.Create(practitioner);
     }
     catch (DataAccessException)
     {
         return(NotFound());
     }
     return(Ok());
 }
Example #3
0
        public void PractitionerLoginFail()
        {
            //Arrange
            string practitionerEmailGood    = "*****@*****.**";
            string practitionerPasswordGood = "password";
            string practitionerPasswordBad  = "badpassword";

            var mock         = new Mock <IPractitionerRepository>();
            var practitioner = new API.DAL.Models.Practitioner
            {
                Id           = 2,
                PersonTypeId = 2,
                ClinicId     = 1,
                FirstName    = "Admin",
                LastName     = "Jensen",
                PhoneNo      = "22222222",
                Email        = "*****@*****.**",
                PasswordHash = "password",
            };

            mock.Setup(x => x.IsAuthorized(practitionerEmailGood, practitionerPasswordGood)).Returns(practitioner);
            var practitionerController = new PractitionerController(mock.Object);
            var expectedPractitioner   = mock.Object.IsAuthorized(practitionerEmailGood, practitionerPasswordBad);

            LoginInfo login = new LoginInfo();

            login.Email    = practitionerEmailGood;
            login.Password = practitionerPasswordBad;

            //Act
            var actionResult = practitionerController.Login(login);
            var result       = actionResult as OkNegotiatedContentResult <API.Models.Practitioner>;

            //Assert
            Assert.IsNull(expectedPractitioner);
            Assert.IsNull(result);
        }
 public void Put([FromBody] API.DAL.Models.Practitioner practitioner)
 {
     _practitionerRepository.Update(practitioner);
 }