public void DefaultViewModelSerializer_EnumInCollection() { var oldViewModel = new EnumCollectionTestViewModel() { Property1 = TestEnum.Third, Children = new List <EnumTestViewModel>() { new EnumTestViewModel() { Property1 = TestEnum.First }, new EnumTestViewModel() { Property1 = TestEnum.Second }, new EnumTestViewModel() { Property1 = TestEnum.Third } } }; context.ViewModel = oldViewModel; serializer.BuildViewModel(context); var result = context.GetSerializedViewModel(); result = UnwrapSerializedViewModel(result); result = WrapSerializedViewModel(result); var newViewModel = new EnumCollectionTestViewModel() { Children = new List <EnumTestViewModel>() }; context.ViewModel = newViewModel; serializer.PopulateViewModel(context, result); Assert.IsFalse(result.Contains(typeof(TestEnum).FullName)); Assert.AreEqual(oldViewModel.Property1, newViewModel.Property1); Assert.AreEqual(oldViewModel.Children[0].Property1, newViewModel.Children[0].Property1); Assert.AreEqual(oldViewModel.Children[1].Property1, newViewModel.Children[1].Property1); Assert.AreEqual(oldViewModel.Children[2].Property1, newViewModel.Children[2].Property1); }
public void DefaultViewModelSerializer_EnumInCollection() { var oldViewModel = new EnumCollectionTestViewModel() { Property1 = TestEnum.Third, Children = new List<EnumTestViewModel>() { new EnumTestViewModel() { Property1 = TestEnum.First }, new EnumTestViewModel() { Property1 = TestEnum.Second }, new EnumTestViewModel() { Property1 = TestEnum.Third } } }; context.ViewModel = oldViewModel; serializer.BuildViewModel(context); var result = context.GetSerializedViewModel(); result = UnwrapSerializedViewModel(result); result = WrapSerializedViewModel(result); var newViewModel = new EnumCollectionTestViewModel() { Children = new List<EnumTestViewModel>() }; context.ViewModel = newViewModel; serializer.PopulateViewModel(context, result); Assert.IsFalse(result.Contains(typeof(TestEnum).FullName)); Assert.AreEqual(oldViewModel.Property1, newViewModel.Property1); Assert.AreEqual(oldViewModel.Children[0].Property1, newViewModel.Children[0].Property1); Assert.AreEqual(oldViewModel.Children[1].Property1, newViewModel.Children[1].Property1); Assert.AreEqual(oldViewModel.Children[2].Property1, newViewModel.Children[2].Property1); }