示例#1
0
        public void GivenNotRequiredEmptyValue_WhenMapping_ItIsSetToDefaultValue()
        {
            var parsingStrategyProvider = new Mock <IProvideParsingStrategy>();

            var mapper = new ValueMapper(parsingStrategyProvider.Object);

            var columnMapping = new NameColumnMapping(string.Empty, string.Empty, string.Empty, null, null, null, false, null);

            var result = mapper.Map(
                value: string.Empty,
                propertyType: typeof(int),
                rowIndex: 0,
                columnMapping: columnMapping);

            result.IsSuccess.Should().BeTrue();
            result.Value.Should().Be(string.Empty);
        }
示例#2
0
        public void GivenInvalidValue_WhenParsingFails_FailureIsReturned()
        {
            var value = "foo";
            var parsingStrategyProvider = new Mock <IProvideParsingStrategy>();

            parsingStrategyProvider.Setup(v => v.Parse(typeof(int), value.ToString(), string.Empty)).Returns(Result.Fail <object, string>("Parsing failed"));

            var mapper = new ValueMapper(parsingStrategyProvider.Object);

            var columnMapping = new NameColumnMapping(string.Empty, string.Empty, string.Empty, null, null, null, false, null);

            var result = mapper.Map(
                value: value,
                propertyType: typeof(int),
                rowIndex: 0,
                columnMapping: columnMapping);

            result.IsFailure.Should().BeTrue();
        }
示例#3
0
        public void GivenValidValue_WhenParsingIsSuccesful_ItSucceeds()
        {
            var value = 50;
            var parsingStrategyProvider = new Mock <IProvideParsingStrategy>();

            parsingStrategyProvider.Setup(v => v.Parse(typeof(int), value.ToString(), string.Empty)).Returns(Result.Ok <object, string>(value));

            var mapper = new ValueMapper(parsingStrategyProvider.Object);

            var columnMapping = new NameColumnMapping(string.Empty, string.Empty, string.Empty, null, null, null, false, null);

            var result = mapper.Map(
                value: value.ToString(),
                propertyType: typeof(int),
                rowIndex: 0,
                columnMapping: columnMapping);

            result.IsSuccess.Should().BeTrue();
            result.Value.Should().Be(value);
        }
示例#4
0
        public void GivenRequiredEmptyValue_WhenMapping_ValidationFails()
        {
            var parsingStrategyProvider = new Mock <IProvideParsingStrategy>();

            var mapper = new ValueMapper(parsingStrategyProvider.Object);

            var columnMapping = new NameColumnMapping(
                string.Empty,
                string.Empty,
                string.Empty,
                new List <IParsingRule> {
                new RequiredRule()
            },
                null, null, false, null);

            var result = mapper.Map(
                value: string.Empty,
                propertyType: typeof(int),
                rowIndex: 0,
                columnMapping: columnMapping);

            result.IsFailure.Should().BeTrue();
        }