public void ParseRowWithTooManyColumns() { RowData rowData = new RowData(); // It will repeat the given string up to 8000 characters nad that // will pass the maximum number of columns. IFileReader reader = new FileReaderTestImpl("ABC,", 2000 * 4); RowParser rowParser = new RowParser(",", "\r\n", string.Empty); rowParser.ParseNextRow(reader, rowData); }
public void ProcessRegularCharacterTest() { ParsingContextTestImpl context = new ParsingContextTestImpl(); ParsingState target = new ParsingState(); FileReaderTestImpl reader = new FileReaderTestImpl(50); System.Text.StringBuilder localText = new System.Text.StringBuilder(); while (!reader.IsEOF) { char nextChar = reader.GetNextChar(); localText.Append(nextChar); Assert.AreEqual(target.ProcessCharacter(context, nextChar), ParsingResult.Match); Assert.AreEqual <string>(localText.ToString(), context.CurrentText); } }
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; } }
internal static IFileReader GetReader(string text) { IFileReader target = new FileReaderTestImpl(text); return target; }
internal static IFileReader GetReader(string text) { IFileReader target = new FileReaderTestImpl(text); return(target); }
public void ProcessRegularCharacterTest() { ParsingContextTestImpl context = new ParsingContextTestImpl(); ParsingState target = new ParsingState(); FileReaderTestImpl reader = new FileReaderTestImpl(50); System.Text.StringBuilder localText = new System.Text.StringBuilder(); while (!reader.IsEOF) { char nextChar = reader.GetNextChar(); localText.Append(nextChar); Assert.AreEqual(target.ProcessCharacter(context, nextChar), ParsingResult.Match); Assert.AreEqual<string>(localText.ToString(), context.CurrentText); } }
public void ParseRowWithTooManyColumns() { RowData rowData = new RowData(); // It will repeat the given string up to 8000 characters nad that // will pass the maximum number of columns. IFileReader reader = new FileReaderTestImpl("ABC,", 2000*4); RowParser rowParser = new RowParser(",", "\r\n", string.Empty); rowParser.ParseNextRow(reader, rowData); }
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; } }