public MemberListViewModelInstanceTest()
        {
            IList<MatchGenerator.Model.IPerson> inputMemberData = new List<MatchGenerator.Model.IPerson>();

            Instance = (MemberListViewModel)MemberListViewModel.CreateMemberListViewModel(inputMemberData);

            MembersFieldMocks = new List<Mock<IMemberListItemViewModel>>
            {
                new Mock<IMemberListItemViewModel>(),
                new Mock<IMemberListItemViewModel>(),
                new Mock<IMemberListItemViewModel>(),
                new Mock<IMemberListItemViewModel>(),
                new Mock<IMemberListItemViewModel>(),
                new Mock<IMemberListItemViewModel>()
            };
            int count = 0;
            foreach (Mock<IMemberListItemViewModel> mock in MembersFieldMocks)
            {
                mock.SetupProperty(vm => vm.IsChecked, count % 2 == 1);
                count++;
            }
        }
        public void ConstructorTest()
        {
            // Arrange
            var input = new ObservableCollection<IPerson>();

            // Act
            MemberListViewModel actualResult = new MemberListViewModel(input);

            // Assert
            object actualModel = actualResult.GetPrivateField(MemberListViewModelMember.Model);
            Assert.Same(input, actualModel);
        }
        public void MembersGetTest()
        {
            // Arrange
            var personData = new ObservableCollection<IPerson>
            {
                new Mock<IPerson>().Object,
                new Mock<IPerson>().Object,
                new Mock<IPerson>().Object
            };
            IList<IMemberListItemViewModel> membersFieldValue = new List<IMemberListItemViewModel>();
            Instance.SetPrivateField(MemberListViewModelMember.MembersField, membersFieldValue);

            // Act
            var target = new MemberListViewModel(personData);
            IList<IMemberListItemViewModel> actualReturn = target.Members;

            // Assert
            IList<IPerson> actualPeople = actualReturn.Select(vm => vm.Model).ToList();
            Assert.True(!personData.Except(actualPeople).Any() && !actualPeople.Except(personData).Any());
        }