public void UninitializedParserTest() { FieldParser parser = FieldParser.BuildParserWithTwoDelimitersAndQualifier(",", "\r\n", "\""); Assert.AreEqual <bool>(false, parser.RowDelimiterMatch); Assert.AreEqual <string>(string.Empty, parser.CurrentText); }
private static void TestEmbeddedQualifiers(string textToParse, string[] expectedFields) { IFileReader reader = FileReaderTest.GetReader(textToParse); FieldParser parser = FieldParser.BuildParserWithTwoDelimitersAndQualifier(",", "\r\n", "\""); foreach (string fieldData in expectedFields) { VerifySuccessfulFieldParsing(parser, reader, fieldData); } Assert.AreEqual(reader.IsEOF, true); }
public void ParseDelimitedFieldsMultiCharacterDelimiterQualifiersError() { IFileReader reader = FileReaderTest.GetReader("A,.,\"B,C,D\",.1,2,3,.,4,\r\na,.,b"); FieldParser parser = FieldParser.BuildParserWithTwoDelimitersAndQualifier(",.,", "\r\n", "\""); VerifySuccessfulFieldParsing(parser, reader, "A"); VerifySuccessfulFieldParsing(parser, reader, "B,C,D,.1,2,3"); VerifySuccessfulLastRowFieldParsing(parser, reader, "4,"); VerifySuccessfulFieldParsing(parser, reader, "a"); VerifyFieldParsing(parser, reader, "b"); Assert.AreEqual(reader.IsEOF, true); }
public void DelimitedFieldsWithQualifiersErrorTest() { IFileReader reader = FileReaderTest.GetReader("\"A\",\"B\",\"C\" \r\n\"1\",\"2\" ,3"); FieldParser parser = FieldParser.BuildParserWithTwoDelimitersAndQualifier(",", "\r\n", "\""); VerifySuccessfulFieldParsing(parser, reader, "A"); VerifySuccessfulFieldParsing(parser, reader, "B"); VerifySuccessfulFieldParsing(parser, reader, "C "); VerifySuccessfulFieldParsing(parser, reader, "1"); VerifySuccessfulFieldParsing(parser, reader, "2 "); VerifyFieldParsing(parser, reader, "3"); Assert.AreEqual(reader.IsEOF, true); }
public void ParsingBufferOverflowTest() { IFileReader reader = new FileReaderTestImpl("abcdefghjklmn", 100000); FieldParser parser = FieldParser.BuildParserWithTwoDelimitersAndQualifier(",", "\r\n", "\""); RowParsingContextTestImpl rowParsingContext = new RowParsingContextTestImpl(); try { parser.ParseNext(reader, rowParsingContext); } catch (ParsingBufferOverflowException ex) { Assert.AreEqual <int>(0, ex.ColumnIndex); throw ex; } }
public void ParseDelimitedQualifiedFieldsTest() { IFileReader reader = FileReaderTest.GetReader("A,\"B,C\r\n1\",2,3\r\n1,2,3,\"4\""); FieldParser parser = FieldParser.BuildParserWithTwoDelimitersAndQualifier(",", "\r\n", "\""); VerifySuccessfulFieldParsing(parser, reader, "A"); VerifySuccessfulFieldParsing(parser, reader, "B,C\r\n1"); VerifySuccessfulFieldParsing(parser, reader, "2"); VerifySuccessfulLastRowFieldParsing(parser, reader, "3"); VerifySuccessfulFieldParsing(parser, reader, "1"); VerifySuccessfulFieldParsing(parser, reader, "2"); VerifySuccessfulFieldParsing(parser, reader, "3"); VerifyFieldParsing(parser, reader, "4"); Assert.AreEqual(reader.IsEOF, true); }
public void BadArgumentsTest8() { FieldParser parser = FieldParser.BuildParserWithTwoDelimitersAndQualifier(",", "\r\n", string.Empty); }