private bool AssertPropertiesMatch(PrivateHealthFieldModel expectedState, PrivateHealthField actualState)
 {
     Assert.IsNotNull(actualState);
     Assert.AreEqual(expectedState.FieldName, actualState.Name);
     Assert.AreEqual(expectedState.SelectedFieldTypeId, actualState.CustomFieldTypeId);
     CollectionAssert.AreEqual(expectedState.SelectedCategories.ToList(), actualState.Categories.Select(c => c.Id).ToList());
     Assert.AreEqual(expectedState.SelectedProviderId, actualState.ProviderId);
     return true;
 }
        public void WhenCreate_ThenPublicFieldAddedWithCorrectState()
        {
            var viewModel = new PrivateHealthFieldModel
            {
                FieldName = "Test",
                SelectedFieldTypeId = 1,
                SelectedCategories = new List<int> { 1, 2 },
                SelectedProviderId = 3829
            };

            Target.Create(viewModel, User);

            Repositories.MockCustomFieldRepository.AssertWasCalled(m => m.Add(Arg<PrivateHealthField>.Matches(c => AssertPropertiesMatch(viewModel, c))));
        }
 public void InitializeTest()
 {
     Target = new PrivateHealthFieldModel();
 }
        public void GivenValidViewModel_WhenPopulateViewModel_ThenProviderListPopulated()
        {
            var expectedItems = Data.Providers.ToList();
            PrivateHealthFieldModel viewModel = new PrivateHealthFieldModel();

            Target.PopulateViewModel(viewModel);

            CollectionAssert.AreEqual(expectedItems, viewModel.Providers.Items.Cast<Provider>().ToList());
            Assert.AreEqual("Id", viewModel.Providers.DataValueField);
            Assert.AreEqual("Name", viewModel.Providers.DataTextField);
        }
 public void InitializeTest()
 {
     Target = new PrivateHealthFieldModel();
 }