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 18 /* $Id$ */ 19 20 package org.apache.fop.render.rtf; 21 22 import java.io.StringWriter; 23 24 import org.apache.fop.render.rtf.rtflib.rtfdoc.RtfDocumentArea; 25 import org.apache.fop.render.rtf.rtflib.rtfdoc.RtfFile; 26 import org.apache.fop.render.rtf.rtflib.rtfdoc.RtfParagraph; 27 import org.apache.fop.render.rtf.rtflib.rtfdoc.RtfSection; 28 import org.apache.fop.render.rtf.rtflib.rtfdoc.RtfTable; 29 import org.apache.fop.render.rtf.rtflib.rtfdoc.RtfTableRow; 30 31 import junit.framework.TestCase; 32 33 /** 34 * Test for http://issues.apache.org/bugzilla/show_bug.cgi?id=39607 35 */ 36 public class Bug39607TestCase extends TestCase { 37 38 /** 39 * Test for the NPE describes in bug 39607 40 * @throws Exception If an error occurs 41 */ 42 public void testForNPE() throws Exception { 43 StringWriter writer = new StringWriter(); 44 RtfFile f = new RtfFile(writer); 45 46 RtfDocumentArea doc = f.startDocumentArea(); 47 48 RtfSection section = doc.newSection(); 49 50 RtfParagraph paragraph = section.newParagraph(); 51 paragraph.newText("Testing fop - rtf module - class RtfTableRow"); 52 paragraph.close(); 53 54 RtfTable table = section.newTable(null); 55 RtfTableRow row = table.newTableRow(); 56 row.newTableCell(2000).newParagraph().newText("blah"); 57 row.newTableCell(5000).newParagraph().newText("doubleBlah"); 58 row.close(); 59 table.close(); 60 section.close(); 61 doc.close(); 62 f.flush(); 63 } 64 65 } 66