/// ------------------------------------------------------------------------------------
 /// <summary>
 /// Initializes a new instance of the <see cref="QuestionProvider"/> class. This version
 /// is only for testing.
 /// </summary>
 /// <param name="parsedQuestions">The parsed questions object.</param>
 /// ------------------------------------------------------------------------------------
 internal QuestionProvider(ParsedQuestions parsedQuestions)
 {
     m_sections = parsedQuestions.Sections;
     m_manager  = new PhrasePartManager(parsedQuestions.TranslatableParts, parsedQuestions.KeyTerms);
 }
 /// ------------------------------------------------------------------------------------
 /// <summary>
 /// Initializes a new instance of the <see cref="QuestionProvider"/> class.
 /// </summary>
 /// <param name="parsedQuestions">The parsed questions object.</param>
 /// <param name="manager">The PhrasePartManager that keeps track of all known key terms
 /// and all translatable parts in the project.</param>
 /// ------------------------------------------------------------------------------------
 public QuestionProvider(ParsedQuestions parsedQuestions, PhrasePartManager manager)
 {
     m_sections = parsedQuestions.Sections;
     m_manager  = manager;
 }
 /// ------------------------------------------------------------------------------------
 /// <summary>
 /// Initializes a new instance of the <see cref="QuestionProvider"/> class. This version
 /// is only for testing.
 /// </summary>
 /// <param name="sections">Class representing the questions, organized by Scripture
 /// section and category.</param>
 /// <param name="keyTerms">(optional) key terms</param>
 /// ------------------------------------------------------------------------------------
 internal QuestionProvider(QuestionSections sections, IEnumerable <KeyTermMatchSurrogate> keyTerms)
 {
     m_sections = sections;
     m_manager  = new PhrasePartManager(new string[0], keyTerms);
 }