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.

FontEventProcessingTestCase.java 2.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  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.fonts;
  19. import java.io.IOException;
  20. import java.io.InputStream;
  21. import javax.xml.transform.TransformerException;
  22. import org.junit.Test;
  23. import org.xml.sax.SAXException;
  24. import org.apache.xmlgraphics.util.MimeConstants;
  25. import org.apache.fop.apps.FOPException;
  26. import org.apache.fop.events.EventProcessingTestCase;
  27. /**
  28. * Testing font events.
  29. */
  30. public class FontEventProcessingTestCase {
  31. private EventProcessingTestCase eventsTests = new EventProcessingTestCase();
  32. private static final String CONFIG_BASE_DIR = EventProcessingTestCase.CONFIG_BASE_DIR;
  33. @Test
  34. public void testFont() throws FOPException, TransformerException, IOException, SAXException {
  35. InputStream inStream = getClass().getResourceAsStream("substituted-font.fo");
  36. eventsTests.doTest(inStream, null, FontEventProducer.class.getName() + ".fontSubstituted",
  37. MimeConstants.MIME_PDF);
  38. }
  39. @Test
  40. public void testFontWithBadDirectory() throws FOPException, TransformerException, IOException,
  41. SAXException {
  42. InputStream inStream = getClass().getResourceAsStream("substituted-font.fo");
  43. eventsTests.doTest(inStream, CONFIG_BASE_DIR + "test_fonts_directory_bad.xconf",
  44. FontEventProducer.class.getName() + ".fontDirectoryNotFound",
  45. MimeConstants.MIME_PDF);
  46. }
  47. @Test
  48. public void testSVGFontStrokedAsShapes() throws FOPException, TransformerException, IOException,
  49. SAXException {
  50. // svg-fonts.fo embeds two fonts; one that is present in the system and the other is not; the
  51. // missing font is stroked as shapes while the fonts that exists is stroked as text
  52. InputStream inStream = getClass().getResourceAsStream("svg-fonts.fo");
  53. eventsTests.doTest(inStream, null, FontEventProducer.class.getName() + ".svgTextStrokedAsShapes",
  54. MimeConstants.MIME_PDF);
  55. }
  56. }