public void SetupTest()
        {
            // Arrange
              var properties = typeof(Order).GetProperties();
              var expected = properties.Length;

              // Act
              var fieldsSplitter = new DelimiterSeparatedValuesFieldsSplitter<Order>(delimiter: ',');
              var actual = fieldsSplitter.FieldParsers.Length;

              // Assert
              Assert.AreEqual<int>(expected, actual);
        }
        public void SplitTest()
        {
            // Arrange
              var delimiter = ',';
              var line = String.Format("10248{0} 1.10{0} Address X{0} 10/10/2010", delimiter);

              // Act
              var fieldsSplitter = new DelimiterSeparatedValuesFieldsSplitter<Order>(delimiter);
              var actual = fieldsSplitter.Split(line);

              // Assert
              var expected = new string[] { "10248", "1.10", "Address X", "10/10/2010" };
              Assert.IsTrue(expected.SequenceEqual(actual));
        }
        public void SplitDoubleQuotedTextTest()
        {
            // Arrange
              var delimiter = '|';
              var line = String.Format("10248{0}1.0{0}\"Address between double quotes\"{0}10/10/2010", delimiter);

              // Act
              var fieldsSplitter = new DelimiterSeparatedValuesFieldsSplitter<Order>(delimiter);
              var actual = fieldsSplitter.Split(line);

              // Assert
              var expected = new string[] { "10248", "1.0", "Address between double quotes", "10/10/2010" };
              Assert.IsTrue(expected.SequenceEqual(actual));
        }
Exemplo n.º 4
0
        public void LineParseUsingTabsAsDelimiterTest()
        {
            // Arrange
              var line = "Jane Doe\[email protected]\tF\t\t128\t\t1234\t\t98765\t\t1234567890\t\t1.2\t\t3.4\t\t3.1416\t\t25/12/2007\t";

              // Act
              var fieldsSplitter = new DelimiterSeparatedValuesFieldsSplitter<Foo>(delimiter: '\t');
              var lineParser = new LineParser<Foo>(fieldsSplitter);
              var parseResult = lineParser.Parse(line);

              // Assert
              Assert.IsNull(parseResult.Errors);

              var actual = parseResult.Instance;
              var expected = new Foo()
              {
            StringProperty = "Jane Doe",
            StringPropertyWithPattern = "*****@*****.**",
            CharProperty = 'F',
            NullableCharProperty = null,
            ByteProperty = 128,
            NullableByteProperty = null,
            Int16Property = 1234,
            NullableInt16Property = null,
            Int32Property = 98765,
            NullableInt32Property = null,
            Int64Property = 1234567890,
            NullableInt64Property = null,
            SingleProperty = 1.2F,
            NullableSingleProperty = null,
            DoubleProperty = 3.4,
            NullableDoubleProperty = null,
            DecimalProperty = 3.1416m,
            NullableDecimalProperty = null,
            DateTimeProperty = new DateTime(2007, 12, 25),
            NullableDateTimeProperty = null,
              };

              Assert.AreEqual<Foo>(expected, actual);
        }