Author: fanningpj
Date: Mon Nov 20 23:58:13 2017
New Revision: 1815873

URL: http://svn.apache.org/viewvc?rev=1815873&view=rev
Log:
[bug-61792] basic test

Modified:
    poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextParagraph.java
    poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java
    
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextRun.java

Modified: poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextParagraph.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextParagraph.java?rev=1815873&r1=1815872&r2=1815873&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextParagraph.java (original)
+++ poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextParagraph.java Mon Nov 20 
23:58:13 2017
@@ -378,6 +378,10 @@ public class DrawTextParagraph implement
             Slide<?,?> slide = 
(Slide<?,?>)graphics.getRenderingHint(Drawable.CURRENT_SLIDE);
             return (slide == null) ? "" : 
Integer.toString(slide.getSlideNumber());
         }
+        return getRenderableText(tr);
+    }
+
+    String getRenderableText(TextRun tr) {
         String txt = tr.getRawText();
         txt.replace("\t", tab2space(tr)).replace("\u000b", "\n");
 

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java?rev=1815873&r1=1815872&r2=1815873&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java Mon 
Nov 20 23:58:13 2017
@@ -94,8 +94,10 @@ public class XSLFTextRun implements Text
             return "\n";
         }
 
+        return getRenderableText(((CTRegularTextRun)_r).getT());
+    }
 
-        String txt = ((CTRegularTextRun)_r).getT();
+    String getRenderableText(String txt){
         // TODO: finish support for tabs
         txt.replace("\t", "  ");
 

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextRun.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextRun.java?rev=1815873&r1=1815872&r2=1815873&view=diff
==============================================================================
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextRun.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextRun.java
 Mon Nov 20 23:58:13 2017
@@ -77,4 +77,23 @@ public class TestXSLFTextRun {
         
         ppt.close();
     }
+
+    @Test
+    public void testUnicodeSurrogates() throws Exception {
+        final String unicodeSurrogates = 
"\uD835\uDF4A\uD835\uDF4B\uD835\uDF4C\uD835\uDF4D\uD835\uDF4E"
+                + 
"\uD835\uDF4F\uD835\uDF50\uD835\uDF51\uD835\uDF52\uD835\uDF53\uD835\uDF54\uD835"
+                + 
"\uDF55\uD835\uDF56\uD835\uDF57\uD835\uDF58\uD835\uDF59\uD835\uDF5A\uD835\uDF5B"
+                + 
"\uD835\uDF5C\uD835\uDF5D\uD835\uDF5E\uD835\uDF5F\uD835\uDF60\uD835\uDF61\uD835"
+                + 
"\uDF62\uD835\uDF63\uD835\uDF64\uD835\uDF65\uD835\uDF66\uD835\uDF67\uD835\uDF68"
+                + 
"\uD835\uDF69\uD835\uDF6A\uD835\uDF6B\uD835\uDF6C\uD835\uDF6D\uD835\uDF6E\uD835"
+                + 
"\uDF6F\uD835\uDF70\uD835\uDF71\uD835\uDF72\uD835\uDF73\uD835\uDF74\uD835\uDF75"
+                + 
"\uD835\uDF76\uD835\uDF77\uD835\uDF78\uD835\uDF79\uD835\uDF7A";
+
+        try (XMLSlideShow ppt = new XMLSlideShow()) {
+            XSLFSlide slide = ppt.createSlide();
+            XSLFTextShape sh = slide.createAutoShape();
+            XSLFTextRun r = sh.addNewTextParagraph().addNewTextRun();
+            assertEquals(unicodeSurrogates, 
r.getRenderableText(unicodeSurrogates));
+        }
+    }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org

Reply via email to