You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

FootnoteSeparatorTestCase.java 2.8KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. /*
  2. * Licensed to the Apache Software Foundation (ASF) under one or more
  3. * contributor license agreements. See the NOTICE file distributed with
  4. * this work for additional information regarding copyright ownership.
  5. * The ASF licenses this file to You under the Apache License, Version 2.0
  6. * (the "License"); you may not use this file except in compliance with
  7. * the License. You may obtain a copy of the License at
  8. *
  9. * http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. /* $Id$ */
  18. package org.apache.fop.accessibility.pdf;
  19. import java.io.ByteArrayOutputStream;
  20. import java.io.IOException;
  21. import org.junit.Test;
  22. import org.xml.sax.helpers.AttributesImpl;
  23. import static org.junit.Assert.assertEquals;
  24. import org.apache.fop.pdf.PDFArray;
  25. import org.apache.fop.pdf.PDFDocument;
  26. import org.apache.fop.pdf.PDFFactory;
  27. import org.apache.fop.pdf.PDFParentTree;
  28. import org.apache.fop.pdf.PDFStructElem;
  29. import org.apache.fop.pdf.PDFStructTreeRoot;
  30. import org.apache.fop.render.pdf.PDFStructureTreeBuilder;
  31. public class FootnoteSeparatorTestCase {
  32. @Test
  33. public void testFootNoteSeparatorText() throws IOException {
  34. PDFParentTree tree = new PDFParentTree();
  35. AttributesImpl attributes = new AttributesImpl();
  36. attributes.addAttribute("", "role", "role", "CDATA", null);
  37. PDFDocument doc = new PDFDocument("");
  38. PDFStructTreeRoot strucRoot = doc.makeStructTreeRoot(tree);
  39. PDFFactory factory = new PDFFactory(doc);
  40. PDFStructElem part = PDFStructureTreeBuilder.createStructureElement("page-sequence", strucRoot, attributes,
  41. factory, null);
  42. AttributesImpl att = new AttributesImpl();
  43. att.addAttribute("", "flow-name", "flow-name", "CDATA", "xsl-footnote-separator");
  44. PDFStructElem staticSection = PDFStructureTreeBuilder.createStructureElement("static-content", part, att,
  45. factory, null);
  46. PDFStructElem block = PDFStructureTreeBuilder.createStructureElement("block", part, new AttributesImpl(),
  47. factory, null);
  48. ByteArrayOutputStream bos = new ByteArrayOutputStream();
  49. part.output(bos);
  50. PDFArray array = (PDFArray)part.get("K");
  51. PDFStructElem elem1 = (PDFStructElem)array.get(0);
  52. String test = elem1.getStructureType().getName().getName();
  53. String expected = "P";
  54. assertEquals(test, expected);
  55. PDFStructElem elem2 = (PDFStructElem)array.get(1);
  56. test = elem2.getStructureType().getName().getName();
  57. expected = "Sect";
  58. assertEquals(test, expected);
  59. }
  60. }