Пример #1
0
        public void Throws_if_no_mapping_for_the_value_exists()
        {
            // Arrange
            MappingHandler.AddMapping <string, string>(source => "a string mapper");

            // Act
            Func <Task <bool> > convertAction = async() => await MappingHandler.ConvertAsync <bool>("a string value to a bool converter");

            //Assert
            convertAction.Should().Throw <Exception>("because bool has no mapping");
        }
Пример #2
0
        public async Task Returns_null_given_null_despite_mapping_producing_value()
        {
            // Arrange
            MappingHandler.AddMapping <string, string>(source => "not null");

            // Act
            var result = await MappingHandler.ConvertAsync <string>(null);

            //Assert
            result.Should().Be(null);
        }
Пример #3
0
        public async Task Can_convert_primitive_type()
        {
            // Arrange
            MappingHandler.AddMapping <int, bool>(source => source > 0);

            // Act
            var result = await MappingHandler.ConvertAsync <bool>(1);

            //Assert
            result.Should().Be(true);
        }
Пример #4
0
        public async Task Can_add_optional_additional_async_conversion_after_convert()
        {
            // Arrange
            MappingHandler.AddMapping <int, int>(source => source + 2);

            // Act
            var result = await MappingHandler.ConvertAsync <int>(1, withTwoAdded => Task.FromResult(withTwoAdded * 3));

            //Assert
            result.Should().Be(9);
        }
Пример #5
0
 public static Task <TTo> ConvertAsync <TTo>(this object instance, Func <TTo, Task <TTo> > afterMapping = null) => MappingHandler.ConvertAsync(instance, afterMapping);