public void SerializablePropertyValueAccessorSetWithComplexFieldsTest(ISerializer serializer)
        {
            // Arrange
            var fieldInfo     = typeof(EntityWithSerializableField).GetField(nameof(EntityWithSerializableField.DecimalValue));
            var valueAccessor = new SerializableValueAccessor <EntityWithSerializableField>(fieldInfo, serializer);
            var entity        = new EntityWithSerializableField();

            // Act
            valueAccessor.SetValue(entity, new EntityProperty(serializer.Serialize(5)));

            // Assert
            Assert.Equal(5, entity.DecimalValue);
        }
        public void SerializablePropertyValueAccessorSetWithComplexPropertiesTest(ISerializer serializer)
        {
            // Arrange
            PropertyInfo propertyInfo  = typeof(EntityWithSerializableProperty).GetProperty(nameof(EntityWithSerializableProperty.SerializableEntity));
            var          valueAccessor = new SerializableValueAccessor <EntityWithSerializableProperty>(propertyInfo, serializer);
            var          entity        = new EntityWithSerializableProperty();

            // Act
            valueAccessor.SetValue(entity, new EntityProperty(serializer.Serialize(new SerializableEntity()
            {
                DecimalValue = 5
            })));

            // Assert
            Assert.Equal(5, entity.SerializableEntity.DecimalValue);
        }