public void CheckVerseExpanding(string originalVerse, int versesCount, string[] notFoundVerses, params string[] verses) { if (notFoundVerses == null) { notFoundVerses = new string[0]; } var actualVerse = _versePointerFactory.CreateVersePointer(originalVerse); _verseCorrectionService.CheckAndCorrectVerse(actualVerse); Assert.AreEqual(versesCount, actualVerse.SubVerses.VersesCount, "Verses count is wrong."); Assert.AreEqual(verses.Length, actualVerse.SubVerses.Verses.Count, "VersePointers count is wrong."); Assert.AreEqual(notFoundVerses.Length, actualVerse.SubVerses.NotFoundVerses.Count, "NotFoundVersePointers count is wrong."); foreach (var verse in verses) { Assert.IsTrue(actualVerse.SubVerses.Verses.Contains(_versePointerFactory.CreateVersePointer(verse).ToModuleVersePointer()), "Can not find the verse: '{0}'", verse); } foreach (var verse in notFoundVerses) { Assert.IsTrue(actualVerse.SubVerses.NotFoundVerses.Contains(_versePointerFactory.CreateVersePointer(verse).ToModuleVersePointer()), "Can not find the verse: '{0}'", verse); } }
public bool TryRecognizeVerse(VerseEntry verseEntry, IDocumentParseContext docParseContext) { if (!verseEntry.VersePointerFound) { return(false); } foreach (var func in _funcs[verseEntry.EntryType]) { if (func(verseEntry, docParseContext)) { return(_verseCorrectionService.CheckAndCorrectVerse(verseEntry.VersePointer)); } } return(false); }