示例#1
0
        public void Separators_SetValid_GetReturnsExpected(string[] separators)
        {
            var reader = new StringSplitCellValueReader(new ColumnNameValueReader("ColumnName"))
            {
                Separators = separators
            };

            Assert.Same(separators, reader.Separators);
        }
示例#2
0
        public void Ctor_CellReader()
        {
            var innerReader = new ColumnNameValueReader("ColumnName");
            var reader      = new StringSplitCellValueReader(innerReader);

            Assert.Same(innerReader, reader.CellReader);

            Assert.Equal(StringSplitOptions.None, reader.Options);
            Assert.Equal(new string[] { "," }, reader.Separators);
        }
        public void WithSeparators_EmptySeparators_ThrowsArgumentException()
        {
            var cellValuesReader = new StringSplitCellValueReader(new ColumnNameValueReader("Column"));
            var elementPipeline  = new ValuePipeline <string>();
            CreateElementsFactory <string> createElementsFactory = elements => elements;
            var propertyMap = new ManyToOneEnumerableMap <string>(cellValuesReader, elementPipeline, createElementsFactory);

            Assert.Throws <ArgumentException>("value", () => propertyMap.WithSeparators(new char[0]));
            Assert.Throws <ArgumentException>("value", () => propertyMap.WithSeparators(new List <char>()));
            Assert.Throws <ArgumentException>("value", () => propertyMap.WithSeparators(new string[0]));
            Assert.Throws <ArgumentException>("value", () => propertyMap.WithSeparators(new List <string>()));
        }
        public void WithSeparators_IEnumerableString_Success(IEnumerable <string> separators)
        {
            var cellValuesReader = new StringSplitCellValueReader(new ColumnNameValueReader("Column"));
            var elementPipeline  = new ValuePipeline <string>();
            CreateElementsFactory <string> createElementsFactory = elements => elements;
            var propertyMap = new ManyToOneEnumerableMap <string>(cellValuesReader, elementPipeline, createElementsFactory);

            Assert.Same(propertyMap, propertyMap.WithSeparators(separators));

            StringSplitCellValueReader valueReader = Assert.IsType <StringSplitCellValueReader>(propertyMap.CellValuesReader);

            Assert.Equal(separators, valueReader.Separators);
        }
        public void WithSeparators_ParamsChar_Success(IEnumerable <char> separators)
        {
            char[] separatorsArray = separators.ToArray();

            var cellValuesReader = new StringSplitCellValueReader(new ColumnNameValueReader("Column"));
            var elementPipeline  = new ValuePipeline <string>();
            CreateElementsFactory <string> createElementsFactory = elements => elements;
            var propertyMap = new ManyToOneEnumerableMap <string>(cellValuesReader, elementPipeline, createElementsFactory);

            Assert.Same(propertyMap, propertyMap.WithSeparators(separatorsArray));

            CharSplitCellValueReader valueReader = Assert.IsType <CharSplitCellValueReader>(propertyMap.CellValuesReader);

            Assert.Same(separatorsArray, valueReader.Separators);
        }
示例#6
0
        public void Separators_SetEmpty_ThrowsArgumentException()
        {
            var reader = new StringSplitCellValueReader(new ColumnNameValueReader("ColumnName"));

            Assert.Throws <ArgumentException>("value", () => reader.Separators = new string[0]);
        }