From 96ed96a44496704904344af73f28d90c27686817 Mon Sep 17 00:00:00 2001 From: Bertrand Delacretaz Date: Wed, 20 Sep 2006 15:46:25 +0000 Subject: [PATCH] Simple test of the PDFCMap class, before refactoring it for ToUnicode git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@448243 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/fop/StandardTestSuite.java | 2 + .../fop/render/pdf/PDFCMapTestCase.java | 69 +++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 test/java/org/apache/fop/render/pdf/PDFCMapTestCase.java diff --git a/test/java/org/apache/fop/StandardTestSuite.java b/test/java/org/apache/fop/StandardTestSuite.java index c50b90f1f..4066e00a0 100644 --- a/test/java/org/apache/fop/StandardTestSuite.java +++ b/test/java/org/apache/fop/StandardTestSuite.java @@ -20,6 +20,7 @@ package org.apache.fop; import org.apache.fop.render.pdf.PDFAConformanceTestCase; +import org.apache.fop.render.pdf.PDFCMapTestCase; import org.apache.fop.render.pdf.PDFEncodingTestCase; import org.apache.fop.render.rtf.RichTextFormatTestSuite; @@ -43,6 +44,7 @@ public class StandardTestSuite { suite.addTest(UtilityCodeTestSuite.suite()); suite.addTest(new TestSuite(PDFAConformanceTestCase.class)); suite.addTest(new TestSuite(PDFEncodingTestCase.class)); + suite.addTest(new TestSuite(PDFCMapTestCase.class)); suite.addTest(RichTextFormatTestSuite.suite()); //$JUnit-END$ return suite; diff --git a/test/java/org/apache/fop/render/pdf/PDFCMapTestCase.java b/test/java/org/apache/fop/render/pdf/PDFCMapTestCase.java new file mode 100644 index 000000000..bff9cf905 --- /dev/null +++ b/test/java/org/apache/fop/render/pdf/PDFCMapTestCase.java @@ -0,0 +1,69 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* $Id: PDFCMap.java 426576 2006-07-28 15:44:37Z jeremias $ */ + +package org.apache.fop.render.pdf; + +import org.apache.fop.pdf.PDFCMap; + +import junit.framework.TestCase; + +/** Simple sanity test of the PDFCmap class */ +public class PDFCMapTestCase extends TestCase { + + public void testPDFCMapFillInPDF() { + final String EOL = "\n"; + final String expected = + "%!PS-Adobe-3.0 Resource-CMap" + EOL + +"%%DocumentNeededResources: ProcSet (CIDInit)" + EOL + +"%%IncludeResource: ProcSet (CIDInit)" + EOL + +"%%BeginResource: CMap (test)" + EOL + +"%%EndComments" + EOL + +"/CIDInit /ProcSet findresource begin" + EOL + +"12 dict begin" + EOL + +"begincmap" + EOL + +"/CIDSystemInfo 3 dict dup begin" + EOL + +" /Registry (Adobe) def" + EOL + +" /Ordering (Identity) def" + EOL + +" /Supplement 0 def" + EOL + +"end def" + EOL + +"/CMapVersion 1 def" + EOL + +"/CMapType 1 def" + EOL + +"/CMapName /test def" + EOL + +"1 begincodespacerange" + EOL + +"<0000> " + EOL + +"endcodespacerange" + EOL + +"1 begincidrange" + EOL + +"<0000> 0" + EOL + +"endcidrange" + EOL + +"endcmap" + EOL + +"CMapName currentdict /CMap defineresource pop" + EOL + +"end" + EOL + +"end" + EOL + +"%%EndResource" + EOL + +"%%EOF" + EOL + ; + + final PDFCMap m = new PDFCMap("test", null); + final StringBuffer b = new StringBuffer(); + m.fillInPDF(b); + final String actual = b.toString(); + assertEquals("PDFCMap output matches expected PostScript code", expected, actual); + } + +} -- 2.39.5