public void Given_site_exists__and_non_employee_in_distribution_list_when_GetAccidentRecordNotificationMembers_called_Then_nonemployee_returned_in_site_distribution_list()
        {
            //Given
            var site = new SiteStructureElementForTesting();
            site.Id = 112312312L; // , ClientId = 123123, SiteId = 745435};

            string nonEmployeeEmail = "*****@*****.**";
            string nonEmployeeName = "Norman Notemployedhere";

            var accidentRecordNotificationMembers = new List<AccidentRecordNotificationMember>();
            accidentRecordNotificationMembers.Add(
                new AccidentRecordNotificationNonEmployeeMember()
                {                    
                    NonEmployeeEmail = nonEmployeeEmail,
                    NonEmployeeName = nonEmployeeName
                });

            site.ProtectedAccidentRecordNotificationMembers = accidentRecordNotificationMembers;

            var target = CreateSiteService();
            _siteAddressRepository.Setup(x => x.GetById(site.Id))
                .Returns(() => site);

            //When
            var result = target.GetAccidentRecordNotificationMembers(site.Id);

            //Then            
            Assert.AreEqual(1, result.Count);

            Assert.AreEqual(nonEmployeeName, result[0].FullName());
            Assert.AreEqual(nonEmployeeEmail, result[0].Email());
        }
        public void Given_site_exists_when_GetAccidentRecordNotificationMembers_Then_does_not_return_deleted_employees()
        {
            var site = new SiteStructureElementForTesting();
            site.Id = 112312312L; // , ClientId = 123123, SiteId = 745435};
            var accidentRecordNotificationMembers = new List<AccidentRecordNotificationMember>();
            accidentRecordNotificationMembers.Add(new AccidentRecordNotificationEmployeeMember() { Employee = new Employee() });
            accidentRecordNotificationMembers.Add(new AccidentRecordNotificationEmployeeMember() { Employee = new Employee() });
            accidentRecordNotificationMembers.Add(new AccidentRecordNotificationEmployeeMember() { Employee = new Employee() { Deleted = true } });

            site.ProtectedAccidentRecordNotificationMembers = accidentRecordNotificationMembers;

            var target = CreateSiteService();
            _siteAddressRepository.Setup(x => x.GetById(site.Id))
                .Returns(() => site);

            //When
            var result = target.GetAccidentRecordNotificationMembers(site.Id);

            //Then
            Assert.That(result.Count, Is.EqualTo(2));
        }