public void T_GenerateParagraphs_Indentation() { GeneratorFacade facade = InitBaseFacade(); ParagraphParams defaultParams = new ParagraphParams { ParagraphIndent = 8, SentenceIndent = 4 }; string resultStr = facade.GenerateParagraphs(5, defaultParams); StringBuilder sb = new StringBuilder(); for (int i = 0; i < defaultParams.ParagraphIndent; i++) { sb.Append(" "); } string paragraphIndent = sb.ToString(); sb.Length = 0; for (int i = 0; i < defaultParams.SentenceIndent; i++) { sb.Append(" "); } string sentenceIndent = sb.ToString(); sb.Length = 0; string[] paragraphSplits = resultStr.Split(new string[] { paragraphIndent }, StringSplitOptions.RemoveEmptyEntries); //Verify we got 5 paragraphs Assert.AreEqual(5, paragraphSplits.Length); foreach (string paragraph in paragraphSplits) { string trimmedParagraph = paragraph.TrimEnd(); string[] sentenceSplits = trimmedParagraph.Split(new string[] { sentenceIndent }, StringSplitOptions.RemoveEmptyEntries); //Check sentences are of appropriate sizes Assert.GreaterOrEqual(sentenceSplits.Length, defaultParams.MinSentences); Assert.LessOrEqual(sentenceSplits.Length, defaultParams.MaxSentences); //Check sentences actually end with a punctuation mark foreach (string sentence in sentenceSplits) { Assert.Contains(sentence[sentence.Length - 1], facade.Generator.SentenceEnd); } } }
public void Register_NewParagraphTest() { var output = new CssClass(); _paragraphClassFactory .Build(Arg.Any <ParagraphClassParam>()) .Returns(output); var pPr = BuildPPr(); var result = _instance.RegisterParagraph(pPr, (5, 6)); Assert.AreSame(result, output); var param = ParagraphParams.Single(); Assert.AreSame(pPr, param.InlineProperties); Assert.AreEqual("pstyle", param.StyleId); Assert.AreEqual(5, param.NumberingId); Assert.AreEqual(6, param.NumberingLevel); Assert.AreSame(result, _instance.Registrations.Single()); }