示例#1
0
        public void CreatePatientContact_NullPatient_ThrowsArgumentException()
        {
            var patientContactRepository = new Mock <IPatientContactRepository> ();
            var patientContactFactory    = new PatientContactFactory(
                patientContactRepository.Object);

            patientContactFactory.CreatePatientContact(null, "Fred", "Smith");
        }
示例#2
0
        public void DestroyPatientContact_GivenANullPatientContact_ThrowsArgumentException()
        {
            var patientContactRepository = new Mock <IPatientContactRepository> ();
            var patientContactFactory    = new PatientContactFactory(
                patientContactRepository.Object);

            patientContactFactory.DestroyPatientContact(null);
        }
示例#3
0
        public void CreatePatientContact_NullLastName_ThrowsArgumentException()
        {
            var patientContactRepository = new Mock <IPatientContactRepository> ();
            var patientContactFactory    = new PatientContactFactory(
                patientContactRepository.Object);

            var patient = new Mock <Patient> ();

            patientContactFactory.CreatePatientContact(patient.Object, "Fred", null);
        }
示例#4
0
        public void CreatePatientContact_GivenValidArguments_CreatesContact()
        {
            using (var serviceLocatorFixture = new ServiceLocatorFixture())
            {
                // Setup
                SetupServiceLocatorFixture(serviceLocatorFixture);
                var patientContactRepository = new Mock <IPatientContactRepository> ();
                var patientContactFactory    = new PatientContactFactory(patientContactRepository.Object);

                var patient = new Mock <Patient> ();

                PatientContact patientContact = patientContactFactory.CreatePatientContact(patient.Object, "Fred", "Smith");

                Assert.IsNotNull(patientContact);
            }
        }
示例#5
0
        public void CreatePatientContact_GivenValidArguments_ContactIsEditable()
        {
            using (var serviceLocatorFixture = new ServiceLocatorFixture())
            {
                // Setup
                SetupServiceLocatorFixture(serviceLocatorFixture);
                var patientContactRepository = new Mock <IPatientContactRepository>();
                var patientContactFactory    = new PatientContactFactory(
                    patientContactRepository.Object);

                var patient = new Mock <Patient>();

                PatientContact patientContact = patientContactFactory.CreatePatientContact(
                    patient.Object, "Fred", "Smith");

                patientContact.ReviseNote("some note");
            }
        }
示例#6
0
        public void CreatePatientContact_GivenValidArguments_ContactIsPersistent()
        {
            using (var serviceLocatorFixture = new ServiceLocatorFixture())
            {
                // Setup
                SetupServiceLocatorFixture(serviceLocatorFixture);
                bool isPersistent = false;

                var patientContactRepository = new Mock <IPatientContactRepository> ();
                patientContactRepository.Setup(p => p.MakePersistent(It.IsAny <PatientContact> ())).Callback(() => isPersistent = true);
                var patientContactFactory = new PatientContactFactory(patientContactRepository.Object);

                var patient = new Mock <Patient> ();

                patientContactFactory.CreatePatientContact(patient.Object, "Fred", "Smith");

                Assert.IsTrue(isPersistent);
            }
        }
示例#7
0
        public void DestroyPatientContact_GivenAPatientContact_ContactIsTransient()
        {
            bool isTransient = false;

            var patientContactRepository = new Mock <IPatientContactRepository> ();

            patientContactRepository
            .Setup(p => p.MakeTransient(It.IsAny <PatientContact> ()))
            .Callback(() => isTransient = true);
            var patientContactFactory = new PatientContactFactory(
                patientContactRepository.Object);

            var patient        = new Mock <Patient> ();
            var patientContact = new Mock <PatientContact> ();

            patientContact.Setup(p => p.Patient).Returns(patient.Object);

            patientContactFactory.DestroyPatientContact(patientContact.Object);

            Assert.IsTrue(isTransient);
        }