public void Test_can_resolve_meta_data_property_type(string propertyName, PropertyDataType expectedResult)
        {
            // Arrange
            PropertyDataTypeResolver resolver = new PropertyDataTypeResolver(null);

            // Act
            bool successfullyResolvedProperty =
                resolver.TryResolve(propertyName, out PropertyDataType resolvedPropertyDataType);

            // Assert
            successfullyResolvedProperty.Should().BeTrue();
            resolvedPropertyDataType.ShouldBeEquivalentTo(expectedResult);
        }
        public void Test_when_property_type_cannot_be_resolved_should_return_false()
        {
            // Arrange
            ContentType contentType = new ContentType();

            contentType.PropertyDefinitions.Add(new PropertyDefinition
            {
                Name = "TestProperty",
                Type = new PropertyDefinitionType(1, PropertyDataType.Boolean, "Boolean")
            });

            PropertyDataTypeResolver resolver = new PropertyDataTypeResolver(contentType);

            // Act
            bool successfullyResolvedProperty =
                resolver.TryResolve("ThisPropertyDoesntExist", out PropertyDataType resolvedPropertyDataType);

            // Assert
            successfullyResolvedProperty.Should().BeFalse();
            resolvedPropertyDataType.ShouldBeEquivalentTo(PropertyDataType.String);
        }
        public void Test_can_resolve_property_type()
        {
            // Arrange
            const string           propertyName     = "TestProperty";
            const PropertyDataType propertyDataType = PropertyDataType.Boolean;

            ContentType contentType = new ContentType();

            contentType.PropertyDefinitions.Add(new PropertyDefinition
            {
                Name = propertyName,
                Type = new PropertyDefinitionType(1, propertyDataType, "Boolean")
            });

            PropertyDataTypeResolver resolver = new PropertyDataTypeResolver(contentType);

            // Act
            bool successfullyResolvedProperty =
                resolver.TryResolve(propertyName, out PropertyDataType resolvedPropertyDataType);

            // Assert
            successfullyResolvedProperty.Should().BeTrue();
            resolvedPropertyDataType.ShouldBeEquivalentTo(propertyDataType);
        }