public void FromStringTextDocumentsAutomaticIds()
        {
            AnswersFromTextOptions options = AnswersFromTextOptions.From("question", new[] { "a", "b", "c" }, null);

            Assert.AreEqual("question", options.Question);
            Assert.AreEqual(3, options.TextDocuments.Count);
            Assert.AreEqual("1", options.TextDocuments[0].Id);
            Assert.AreEqual("a", options.TextDocuments[0].Text);
            Assert.AreEqual("2", options.TextDocuments[1].Id);
            Assert.AreEqual("b", options.TextDocuments[1].Text);
            Assert.AreEqual("3", options.TextDocuments[2].Id);
            Assert.AreEqual("c", options.TextDocuments[2].Text);
        }
        public void FromTextDocumentsAutomaticIds()
        {
            IEnumerable <TextDocument> textDocuments = new[]
            {
                new TextDocument("1", "a"),
                new TextDocument("2", "b"),
                new TextDocument("3", "c"),
            };

            AnswersFromTextOptions options = AnswersFromTextOptions.From("question", textDocuments, null);

            Assert.AreEqual("question", options.Question);
            Assert.AreEqual(3, options.TextDocuments.Count);
            Assert.AreEqual("1", options.TextDocuments[0].Id);
            Assert.AreEqual("a", options.TextDocuments[0].Text);
            Assert.AreEqual("2", options.TextDocuments[1].Id);
            Assert.AreEqual("b", options.TextDocuments[1].Text);
            Assert.AreEqual("3", options.TextDocuments[2].Id);
            Assert.AreEqual("c", options.TextDocuments[2].Text);
        }
        public void FromTextDocumentsNull()
        {
            ArgumentException ex = Assert.Throws <ArgumentNullException>(() => AnswersFromTextOptions.From("question", (TextDocument[])null, null));

            Assert.AreEqual("textDocuments", ex.ParamName);
        }
        public void FromStringTextDocumentsQuestionNull()
        {
            ArgumentException ex = Assert.Throws <ArgumentNullException>(() => AnswersFromTextOptions.From(null, Array.Empty <string>(), null));

            Assert.AreEqual("question", ex.ParamName);
        }