public void TestDeleteItem_NotInSpine() { XDocument doc = Utils.ReadXmlResource("UnitTestMergeWebToEpub.TestData.contentWithImages.opf"); var opf = new Opf(doc, "OEPBS/content.opf"); var sources = opf.Manifest.ExtractSources(); Assert.AreEqual(26, sources.Count); Assert.IsTrue(sources.ContainsKey("id.cover-image")); Assert.AreEqual(29, opf.Manifest.Count); Assert.AreEqual("OEPBS/Images/0000_p1alt2en.png", opf.Manifest[0].AbsolutePath); Assert.AreEqual(7, opf.Spine.Count); opf.DeleteImage(opf.Manifest[0]); Assert.AreEqual(7, opf.Spine.Count); Assert.AreEqual("OEPBS/Images/0008_ch2.png", opf.Manifest[0].AbsolutePath); Assert.AreEqual(28, opf.Manifest.Count); sources = opf.Manifest.ExtractSources(); Assert.AreEqual(25, sources.Count); Assert.IsFalse(sources.ContainsKey("id.cover-image")); }
public void TestFindSpecialPages_NotPresent() { XDocument doc = Utils.ReadXmlResource("UnitTestMergeWebToEpub.TestData.content.opf"); var opf = new Opf(doc, "OEPBS/content.opf"); var doc2 = opf.ToXDocument(); Assert.IsNull(opf.CoverImage); Assert.IsNull(opf.CoverPage); }
public void TestFindSpecialPages_Present() { XDocument doc = Utils.ReadXmlResource("UnitTestMergeWebToEpub.TestData.contentWithImages.opf"); var opf = new Opf(doc, "OEPBS/content.opf"); var doc2 = opf.ToXDocument(); Assert.AreEqual("OEPBS/Images/0000_p1alt2en.png", opf.CoverImage.AbsolutePath); Assert.AreEqual("OEPBS/Text/Cover.xhtml", opf.CoverPage.AbsolutePath); }
public void TestGetImageItems_HasImages() { XDocument doc = Utils.ReadXmlResource("UnitTestMergeWebToEpub.TestData.contentWithImages.opf"); var opf = new Opf(doc, "OEPBS/content.opf"); var doc2 = opf.ToXDocument(); var items = opf.GetImageItems(); Assert.AreEqual(20, items.Count); }
public void TestRoundTripParseOpfWithGuide() { XDocument doc = Utils.ReadXmlResource("UnitTestMergeWebToEpub.TestData.contentWithImages.opf"); var opf = new Opf(doc, "OEPBS/content.opf"); var doc2 = opf.ToXDocument(); var delta = XmlCompare.ElementSame(doc.Root, doc2.Root); Assert.IsTrue(delta.AreSame); }
public void TestGetPageItems() { XDocument doc = Utils.ReadXmlResource("UnitTestMergeWebToEpub.TestData.content.opf"); var opf = new Opf(doc, "OEPBS/content.opf"); var doc2 = opf.ToXDocument(); var items = opf.GetPageItems(); Assert.AreEqual(14, items.Count); Assert.AreEqual("OEPBS/Text/0000_Information.xhtml", items[0].AbsolutePath); }
public Epub MockEpub2() { XDocument doc = Utils.ReadXmlResource("UnitTestMergeWebToEpub.TestData.contentWithImages.opf"); XDocument toc = Utils.ReadXmlResource("UnitTestMergeWebToEpub.TestData.tocGifting.ncx"); var opf = new Opf(doc, "OEPBS/content.opf"); MockRawData(opf); return(new Epub() { Opf = opf, ToC = new ToC(toc, MockTocEpubItem(), opf.AbsolutePathIndex) }); }
public void MockRawData(Opf opf) { foreach (var item in opf.Manifest) { if (item.IsXhtmlPage) { item.RawBytes = MakeDummyDoc(); } else if (item.IsImage) { item.RawBytes = MakeDummyImage(item); } } ; }
public void TestDeleteItem_InSpine() { XDocument doc = Utils.ReadXmlResource("UnitTestMergeWebToEpub.TestData.contentWithImages.opf"); var opf = new Opf(doc, "OEPBS/content.opf"); Assert.AreEqual(29, opf.Manifest.Count); Assert.AreEqual("OEPBS/Text/Cover.xhtml", opf.Manifest[28].AbsolutePath); Assert.AreEqual(7, opf.Spine.Count); Assert.AreEqual("cover", opf.Spine[0].Id); opf.DeleteItem(opf.Manifest[28]); Assert.AreEqual(6, opf.Spine.Count); Assert.AreEqual("xhtml0000", opf.Spine[0].Id); Assert.AreEqual(28, opf.Manifest.Count); }