using Xunit; using System.IO; using Xunit.Sdk; namespace Mammoth.Tests { public class DocumentConverterTests { [Fact] public void DocxContainingOneParagraphIsConvertedToSingleParagraphElement() { assertSuccessfulConversion( ConvertToHtml("single-paragraph.docx"), "

Walking on imported air

"); } [Fact] public void CanReadFilesWithUtf8Bom() { assertSuccessfulConversion( ConvertToHtml("utf8-bom.docx"), "

This XML has a byte order mark.

"); } [Fact] public void EmptyParagraphsAreIgnoredByDefault() { assertSuccessfulConversion( ConvertToHtml("empty.docx"), ""); } private void assertSuccessfulConversion(IResult result, string expectedValue) { if (result.Warnings.Count > 0) { throw new XunitException("Unexpected warnings: " + string.Join(", ", result.Warnings)); } Assert.Equal(expectedValue, result.Value); } private IResult ConvertToHtml(string name) { return new DocumentConverter().ConvertToHtml(TestFilePath(name)); } private string TestFilePath(string name) { return Path.Combine("../../TestData", name); } } }