public void GetAllOnContactNumberRepository()
        {
            //Arrange
            ContactNumberRepository contactNumberRepository = new ContactNumberRepository(_config);

            //Act
            List<ContactNumber> contactNumbers = contactNumberRepository.GetAll().ToList();

            //Assert
            CollectionAssert.AreEqual(_contactNumbers, contactNumbers);

            contactNumberRepository.Dispose();
        }
        public void DeleteOnContactNumberRepository()
        {
            //Arrange
            ContactNumberRepository contactNumberRepository = new ContactNumberRepository(_config);

            var contactNumberToDelete = _contactNumbers[4];

            //Act
            contactNumberRepository.Delete(contactNumberToDelete.Id);

            ContactNumber contactNumber = contactNumberRepository.Get(contactNumberToDelete.Id);

            //Assert
            Assert.IsNull(contactNumber);
        }
        public void DeleteOnContactRepository()
        {
            //Arrange
            ContactNumberRepository contactNumberRepository = new ContactNumberRepository(_config);
            ContactRepository contactRepository = new ContactRepository(_config, contactNumberRepository);

            var contactToDelete = _contacts[4];

            //Act
            contactRepository.Delete(contactToDelete.Id);

            Contact contact = contactRepository.Get(contactToDelete.Id);

            //Assert
            Assert.IsNull(contact);

            //Assert all contact Numbers for this contact have also been removed
            var contactNumbers = contactNumberRepository.GetAll().Where(cn => cn.ContactId == contactToDelete.Id).ToList();

            Assert.AreEqual(0, contactNumbers.Count);
        }
        public void CreateOnContactNumberRepository()
        {
            //Arrange
            ContactNumberRepository contactNumberRepository = new ContactNumberRepository(_config);

            var contactNumberToCreate = new ContactNumber
            {
                ContactId = new Guid("cc772bf2-40bd-4b25-9e3a-0e80b1a63383"),
                Description = "Mobile",
                TelephoneNumber = "0123456789"
            };

            //Act
            Guid id = contactNumberRepository.Create(contactNumberToCreate);

            ContactNumber contactNumber = contactNumberRepository.Get(id);

            //Assert
            Assert.AreEqual(contactNumber, contactNumberToCreate);
            Assert.IsNotNull(id);

            contactNumberRepository.Dispose();
        }
        public void GetOnContactNumberRepository()
        {
            //Arrange
            ContactNumberRepository contactNumberRepository = new ContactNumberRepository(_config);

            //Act
            ContactNumber contactNumber = contactNumberRepository.Get(new Guid("9a005b3e-d9ec-4e08-aefa-589ab5e00bfa"));

            //Assert
            Assert.AreEqual(_contactNumbers[0], contactNumber);

            contactNumberRepository.Dispose();
        }
        public void UpdateOnContactNumberRepository()
        {
            //Arrange
            ContactNumberRepository contactNumberRepository = new ContactNumberRepository(_config);

            var contactNumberToUpdate = _contactNumbers[3];
            contactNumberToUpdate.Description = "Mobile" + "Updated";
            contactNumberToUpdate.TelephoneNumber = "0123456789" + "Updated";

            //Act
            contactNumberRepository.Update(contactNumberToUpdate);

            ContactNumber contactNumber = contactNumberRepository.Get(contactNumberToUpdate.Id);

            //Assert
            Assert.AreEqual(contactNumber, contactNumberToUpdate);

            contactNumberRepository.Dispose();
        }