public void SplitAndIgnoreFollowing() { ILineParser lineParser = Data.SplitOn("-").Ignore(2).AndFollowing().Join(" "); AssertWillParse(lineParser, "A B", "A-B-C", "A-B-C-D", "A-B-C-D-E"); AssertNoChange(lineParser, "A", "A-B", "C", "C D E"); }
private void AssertWillParse(ILineParser parser, string expected, params string[] args) { foreach (string line in args) { Assert.That(parser.Parse(0, line), Is.EqualTo(expected), line); } }
public void ReadEvaluatePrintLoop_WithNullParser_ThrowsArgumentNullException() { IRunTimeEnvironment rte = MakeRunTimeEnvironment("PRINT \"Windows\";"); ILineParser parser = null; var repl = new ReadEvaluatePrintLoop(rte, parser); }
public void IgnoreStartAndTrim() { ILineParser lineParser = Data.IgnoreStart("Testing:").Trim(); AssertWillParse(lineParser, "Data", "Testing:Data", "Testing: Data ", "Testing:Data ", "Testing: Data"); AssertWillParse(lineParser, "", "Testing:", "Testing: ", "Testing: "); }
public void IgnoreBeforeColumn() { ILineParser lineParser = Comment.IgnoreBefore(3); AssertWillParse(lineParser, "Two", "OneTwo", "On Two", "O Two", " Two"); AssertWillParse(lineParser, "", "", "A", "On"); }
public void ReadEvaluatePrintLoop_WithNullRte_ThrowsArgumentNullException() { IRunTimeEnvironment rte = null; ILineParser parser = MakeParser(); var repl = new ReadEvaluatePrintLoop(rte, parser); }
/// <summary> /// Constructs an instance of INIFile with a custom line parser /// </summary> /// <param name="path"></param> /// <param name="customLineParser"></param> public INIFile( string path, ILineParser customLineParser) { CustomLineParser = customLineParser; Init(path, ParseStrategies.Custom); }
private void AssertNoChange(ILineParser matcher, params string[] args) { foreach (string line in args) { Assert.That(matcher.Parse(0, line), Is.EqualTo(line), line); } }
public void SplitAndSelect() { ILineParser lineParser = Data.SplitOn("-").Select(0, 1).Join(" "); AssertWillParse(lineParser, "A B", "A-B-C-D", "A-B", "A-B-C"); AssertNoChange(lineParser, "A", "C", "C D E"); }
public void SplitFindAndIgnoreFollowing() { ILineParser lineParser = Data.SplitOn("-").Find("B").Ignore(1).AndFollowing().Join(" "); AssertWillParse(lineParser, "A B", "A-B-C", "A-B-C-D", "A-B-C-D-E"); AssertNoChange(lineParser, "A", "A-B", "C", "C D E"); AssertNoChange(lineParser, "A-D-C-B"); // B + 1 is out of range }
public LineHookerResponseController(IImgurClient iimgurClient, IAlbumEndpoint iAlbumEndpoint, ILineParser lineParser, ILineClientManager lineClientManager, IImgUrlParser imgUrlParser) { _iImgurClient = iimgurClient; _iAlbumEndpoint = iAlbumEndpoint; _lineParser = lineParser; _lineClientManager = lineClientManager; _imgUrlParser = imgUrlParser; }
public void SplitAndIgnore() { ILineParser lineParser = Data.SplitOn("-").Ignore(0, 1).Join(" "); AssertWillParse(lineParser, "C D", "A-B-C-D", "AA-BB-C-D"); AssertWillParse(lineParser, "C", "A-B-C", "AA-BB-C"); AssertNoChange(lineParser, "A", "C", "C D E"); }
public TransactionRepository(string filePathToTransactions, IFileReader fileReader, ILineParser <Transaction> transactionParser) { _filePathToTransactions = filePathToTransactions; _fileReader = fileReader; _transactionParser = transactionParser; }
public LineParserMap(ILineParser defaultParser) { if (defaultParser == null) { throw new ArgumentNullException("Default Parser REQUIERED"); } std = defaultParser; }
public PoFileParser(IFileHelper fileHelper, ILineParser lineParser, ISegmentSettings defaultSegmentSettings, IParagraphUnitFactory paragraphUnitFactory, IEntryBuilder entryBuilder) { _fileHelper = fileHelper; _lineParser = lineParser; _segmentSettings = defaultSegmentSettings; _paragraphUnitFactory = paragraphUnitFactory; _entryBuilder = entryBuilder; }
public PoFileWriter(IFileHelper fileHelper, ISegmentReader segmentReader, ILineParser lineParser, IEntryBuilder entryBuilder) { _fileHelper = fileHelper; _segmentReader = segmentReader; _lineParser = lineParser; _entryBuilder = entryBuilder; }
public void SplitFindAndSelect() { ILineParser lineParser = Data.SplitOn("-").Find("B").Select(0, 1).Join(" "); AssertWillParse(lineParser, "B C", "A-B-C-D", "A-D-B-C", "B-C"); AssertNoChange(lineParser, "A", "C", "C D E"); AssertNoChange(lineParser, "A-D-C-B"); // B + 1 is out of range }
public void RemoveSpaces() { ILineParser lineParser = Data.RemoveSpaces(); AssertWillParse(lineParser, "One Two", "One Two", "One Two", " One Two ", " One Two"); AssertWillParse(lineParser, ".", "."); AssertNoChange(lineParser, "One", "there is no dot", "dot", ","); }
public void IgnoreBefore2CharsIncludeMarker() { ILineParser lineParser = Comment.IgnoreBefore("./").IncludeMarker(); AssertWillParse(lineParser, "./Data", "TEsting./Data", "./Data", "Testing ./Data"); AssertWillParse(lineParser, "./", "./", "Data./"); AssertNoChange(lineParser, "Data", "there is no dot", "dot", ",", ".", "/", "/.", ""); }
public void IgnoreStart() { ILineParser lineParser = Data.IgnoreStart("Testing:"); AssertNoChange(lineParser, null, "", "TESTING: ", "Testin", " Testing", "testing", "Ending with Testing"); AssertWillParse(lineParser, "Data", "Testing:Data"); AssertWillParse(lineParser, "", "Testing:"); }
public void IgnoreAfterIncludeMarker() { ILineParser lineParser = Data.IgnoreAfter(".").IncludeMarker(); AssertWillParse(lineParser, "Data.", "Data.Testing", "Data.", "Data. Testing. ", "Data. Testing"); AssertWillParse(lineParser, ".", ".", "."); AssertNoChange(lineParser, "Data", "there is no dot", "dot", ",", ""); }
public void IgnoreBefore() { ILineParser lineParser = Comment.IgnoreBefore(".").ExcludeMarker(); AssertWillParse(lineParser, "Data", "TEsting.Data", ".Data", "Testing .Data"); AssertWillParse(lineParser, "", ".", "", "Data."); AssertNoChange(lineParser, "Data", "there is no dot", "dot", ","); }
protected SingleLineParser(string name, ILineMatcher lineMatcher, ILineParser dataParser, ILineParser commentParser, IImpliedModelParser[] impliedModelParsers, ModelFactoryDelegate modelFactory) { this.name = name; this.lineMatcher = lineMatcher; this.dataParser = dataParser; this.commentParser = commentParser; this.impliedModelParsers = impliedModelParsers; this.modelFactory = modelFactory; }
/// <summary> /// Initializes a new <see cref="LineTextParser"/> instance with the <paramref name="lineParser"/> /// </summary> /// <param name="lineParser">A <see cref="ILineParser"/> instance used to extract words from individual lines of content</param> public LineTextParser([NotNull] ILineParser lineParser) { if (lineParser == null) { throw new ArgumentNullException("lineParser"); } this.lineParser = lineParser; UseAsync = false; }
public LogContext(string fileName, ILineParser parser) { _formattingRuleManager = new FormattingRuleManager(); _filteringRuleManager = new FilteringRuleManager(); _searcher = new Searcher(this); _parser = parser; _logProvider = new FilterLogProvider(new LogFileCache(new LogFile(fileName)), _filteringRuleManager); }
public bool TryParse(string solutionFile, out SolutionFile result) { Validate.IsNotNull(solutionFile, nameof(solutionFile)); SolutionFileBuilder sfb = new SolutionFileBuilder(); result = null; string[] strArray = solutionFile.Split(new string[2] { "\n", "\r\n" }, StringSplitOptions.RemoveEmptyEntries); sfb.SetLineCount(strArray.Length); sfb.SetSizeInChars(solutionFile.Length); ILineParser lineParser1 = null; bool needMoreLines = false; foreach (string str in strArray) { string line = str.Trim(); if (lineParser1 == null) { foreach (ILineParser lineParser2 in lineParsers) { if (lineParser2.TryParseLine(line, sfb, out needMoreLines)) { if (needMoreLines) { lineParser1 = lineParser2; } break; } } } else if (lineParser1.TryParseLine(line, sfb, out needMoreLines)) { if (!needMoreLines) { lineParser1 = null; } } else { sfb.SetIsValid(false); break; } } if (needMoreLines) { sfb.SetIsValid(false); } result = sfb.Build(); return(result.IsValid); }
/// <summary> /// Initializes an instance of <see cref="FileProgramRepository"/> class with specified parser. /// </summary> /// <param name="parser">The line-based parser.</param> public FileProgramRepository(ILineParser parser) { if (parser == null) { throw new ArgumentNullException("parser"); } this.parser = parser; }
protected SingleLineParser(string name, ILineMatcher lineMatcher, ILineParser dataParser, ILineParser commentParser, IImpliedModelParser[] impliedModelParsers, ModelFactoryDelegate modelFactory) { this.name = name; this.lineMatcher = lineMatcher; this.dataParser = dataParser; this.commentParser = commentParser; this.impliedModelParsers = impliedModelParsers; this.modelFactory = modelFactory; }
protected ImpliedModelParser(string name, ILineMatcher lineMatcher, ILineParser modelParser, ILineParser impliedParser, ModelFactoryDelegate modelFactory, ModelFactoryDelegate impliedFactory) { this.name = name; this.lineMatcher = lineMatcher; this.modelParser = modelParser; this.impliedParser = impliedParser; this.modelFactory = modelFactory; this.impliedFactory = impliedFactory; }
public void TruncateAt() { ILineParser lineParser = Data.TruncateAtColumn(3); AssertWillParse(lineParser, "One", "One", "OneTwo", "One Two"); AssertWillParse(lineParser, "On", "On"); AssertWillParse(lineParser, "O", "O"); AssertWillParse(lineParser, "O ", "O Two", "O "); }
public void SplitFindAndSelectFollowing() { ILineParser lineParser = Data.SplitOn("-").Find("B").Select(1).AndFollowing().Join(" "); AssertWillParse(lineParser, "C D E", "A-B-C-D-E"); AssertWillParse(lineParser, "C D", "A-B-C-D"); AssertWillParse(lineParser, "C", "A-B-C"); AssertNoChange(lineParser, "A", "A-B"); AssertNoChange(lineParser, "C", "C D E"); }
protected ImpliedModelParser(string name, ILineMatcher lineMatcher, ILineParser modelParser, ILineParser impliedParser, ModelFactoryDelegate modelFactory, ModelFactoryDelegate impliedFactory) { this.name = name; this.lineMatcher = lineMatcher; this.modelParser = modelParser; this.impliedParser = impliedParser; this.modelFactory = modelFactory; this.impliedFactory = impliedFactory; }
public UrlMapParser() { _urls = new List<ParsedUrl>(); _urlParts = new List<ParsedUrlPart>(); _lineParser = new PrioritizedLineParser(new ILineParser[] { new BlankLineSkipper(), new UsingLineParser(), new NamespaceLineParser(), new UrlLineParser() }); }
protected SingleLineParser(string name, ILineMatcher lineMatcher, ILineParser dataParser) : this(name, lineMatcher, dataParser, Comment.IgnoreAll(), null, StringModel.Factory) { }
private void AssertWillParse(ILineParser parser, string expected, params string[] args) { foreach (string line in args) { Assert.That(parser.Parse(0,line), Is.EqualTo(expected), line); } }
private void AssertNoChange(ILineParser matcher, params string[] args) { foreach (string line in args) { Assert.That(matcher.Parse(0,line), Is.EqualTo(line), line); } }
public ILineParser OnLineNumber(int lineNo, ILineParser lineParser) { lineDictionary.Add(lineNo, lineParser); return this; }
public static ILineParser OnLine(int lineNo, ILineParser lineParser) { return new LineParser().OnLineNumber(lineNo, lineParser); }
protected SingleLineParser(string name, ILineMatcher lineMatcher, ILineParser dataParser, ILineParser commentParser) : this(name, lineMatcher, dataParser, commentParser, null, StringModel.Factory) { }