You are viewing a plain text version of this content. The canonical link for it is here.
Posted to odf-commits@incubator.apache.org by sv...@apache.org on 2017/04/24 20:42:06 UTC
svn commit: r1792545 [3/3] - in /incubator/odf/trunk/simple/src:
main/java/org/odftoolkit/simple/common/navigation/TextSelection.java
test/java/org/odftoolkit/simple/text/SpanTest.java
Modified: incubator/odf/trunk/simple/src/test/java/org/odftoolkit/simple/text/SpanTest.java
URL: http://svn.apache.org/viewvc/incubator/odf/trunk/simple/src/test/java/org/odftoolkit/simple/text/SpanTest.java?rev=1792545&r1=1792544&r2=1792545&view=diff
==============================================================================
--- incubator/odf/trunk/simple/src/test/java/org/odftoolkit/simple/text/SpanTest.java (original)
+++ incubator/odf/trunk/simple/src/test/java/org/odftoolkit/simple/text/SpanTest.java Mon Apr 24 20:42:06 2017
@@ -1,154 +1,233 @@
-/*
-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.
-*/
-
-package org.odftoolkit.simple.text;
-
-import java.net.URI;
-import java.util.Iterator;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-import junit.framework.Assert;
-
-import org.junit.Test;
-import org.odftoolkit.odfdom.type.Color;
-import org.odftoolkit.simple.TextDocument;
-import org.odftoolkit.simple.common.navigation.TextNavigation;
-import org.odftoolkit.simple.common.navigation.TextSelection;
-import org.odftoolkit.simple.style.DefaultStyleHandler;
-import org.odftoolkit.simple.style.Font;
-import org.odftoolkit.simple.style.StyleTypeDefinitions.FontStyle;
-import org.odftoolkit.simple.style.StyleTypeDefinitions.TextLinePosition;
-import org.odftoolkit.simple.utils.ResourceUtilities;
-
-public class SpanTest {
-
- @Test
- public void testSpan() {
- try {
- TextDocument doc = TextDocument.newTextDocument();
- doc.addParagraph("This is a test paragraph!");
- TextNavigation navigation = new TextNavigation("test", doc);
- TextSelection sel = (TextSelection) navigation.nextSelection();
- Span span = Span.newSpan(sel);
- TextHyperlink link = span.applyHyperlink(new URI("http://www.ibm.com"));
- DefaultStyleHandler handler = span.getStyleHandler();
- Font font1Base = new Font("Arial", FontStyle.ITALIC, 10, Color.BLACK, TextLinePosition.THROUGH);
- handler.getTextPropertiesForWrite().setFont(font1Base);
- doc.save(ResourceUtilities.newTestOutputFile("spantest.odt"));
-
- String content = span.getTextContent();
- Assert.assertEquals("test", content);
- span.setTextContent("new test");
- Assert.assertEquals("new test", span.getTextContent());
- doc.save(ResourceUtilities.newTestOutputFile("spantest.odt"));
-
- } catch (Exception e) {
- Logger.getLogger(SpanTest.class.getName()).log(Level.SEVERE, null, e);
- Assert.fail();
- }
-
- }
-
- @Test
- public void testRemoveTextContent() {
- try {
- TextDocument doc = TextDocument.newTextDocument();
-
- Iterator<Paragraph> paraA = doc.getParagraphIterator();
- while(paraA.hasNext()){
- Paragraph pp = paraA.next();
- doc.removeParagraph(pp);
- }
-
- doc.addParagraph("This is a test paragraph!");
-
- TextNavigation navigation = new TextNavigation("test", doc);
- TextSelection sel = (TextSelection) navigation.nextSelection();
- Span span = Span.newSpan(sel);
-
- span.removeTextContent();
- boolean flag = false;
- Iterator<Paragraph> parai = doc.getParagraphIterator();
- while(parai.hasNext()){
- Paragraph pp = parai.next();
- if("This is a paragraph!".equals(pp.getTextContent()))
- flag = true;
- }
- Assert.assertTrue(flag);
-
- //save
- doc.save(ResourceUtilities.newTestOutputFile("spantest.odt"));
-
- } catch (Exception e) {
- Logger.getLogger(SpanTest.class.getName()).log(Level.SEVERE, null, e);
- Assert.fail();
- }
-
- }
-
- @Test
- public void testAppendTextContent() {
- try {
- TextDocument doc = TextDocument.newTextDocument();
- doc.addParagraph("This is a test paragraph!");
-
- TextNavigation navigation = new TextNavigation("test", doc);
- TextSelection sel = (TextSelection) navigation.nextSelection();
- Span span = Span.newSpan(sel);
-
- span.appendTextContent("hello world.");
- Assert.assertEquals("testhello world.", span.getTextContent());
-
- //save
- //doc.save(ResourceUtilities.newTestOutputFile("spantest.odt"));
- } catch (Exception e) {
- Logger.getLogger(SpanTest.class.getName()).log(Level.SEVERE, null, e);
- Assert.fail();
- }
-
- }
-
-
- @Test
- public void testAppendTextContentPara() {
- try {
- TextDocument doc = TextDocument.newTextDocument();
- doc.addParagraph("This is a test paragraph!");
-
- TextNavigation navigation = new TextNavigation("test", doc);
- TextSelection sel = (TextSelection) navigation.nextSelection();
- Span span = Span.newSpan(sel);
-
- span.appendTextContent("hello world.", true);
- Assert.assertEquals("testhello world.", span.getTextContent());
-
- span.appendTextContent("hello world.", false);
- Assert.assertEquals("testhello world.hello world.", span.getTextContent());
-
- //save
- //doc.save(ResourceUtilities.newTestOutputFile("spantest.odt"));
- } catch (Exception e) {
- Logger.getLogger(SpanTest.class.getName()).log(Level.SEVERE, null, e);
- Assert.fail();
- }
-
- }
-
-}
+/*
+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.
+*/
+
+package org.odftoolkit.simple.text;
+
+import java.net.URI;
+import java.util.Iterator;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+import junit.framework.Assert;
+
+import org.junit.Test;
+import org.odftoolkit.odfdom.type.Color;
+import org.odftoolkit.simple.TextDocument;
+import org.odftoolkit.simple.common.navigation.TextNavigation;
+import org.odftoolkit.simple.common.navigation.TextSelection;
+import org.odftoolkit.simple.style.DefaultStyleHandler;
+import org.odftoolkit.simple.style.Font;
+import org.odftoolkit.simple.style.StyleTypeDefinitions.FontStyle;
+import org.odftoolkit.simple.style.StyleTypeDefinitions.TextLinePosition;
+import org.odftoolkit.simple.utils.ResourceUtilities;
+
+public class SpanTest {
+
+ @Test
+ public void testSpan() {
+ try {
+ TextDocument doc = TextDocument.newTextDocument();
+ doc.addParagraph("This is a test paragraph!");
+ TextNavigation navigation = new TextNavigation("test", doc);
+ TextSelection sel = (TextSelection) navigation.nextSelection();
+ Span span = Span.newSpan(sel);
+ TextHyperlink link = span.applyHyperlink(new URI("http://www.ibm.com"));
+ DefaultStyleHandler handler = span.getStyleHandler();
+ Font font1Base = new Font("Arial", FontStyle.ITALIC, 10, Color.BLACK, TextLinePosition.THROUGH);
+ handler.getTextPropertiesForWrite().setFont(font1Base);
+ doc.save(ResourceUtilities.newTestOutputFile("spantest.odt"));
+
+ String content = span.getTextContent();
+ Assert.assertEquals("test", content);
+ span.setTextContent("new test");
+ Assert.assertEquals("new test", span.getTextContent());
+ doc.save(ResourceUtilities.newTestOutputFile("spantest.odt"));
+
+ } catch (Exception e) {
+ Logger.getLogger(SpanTest.class.getName()).log(Level.SEVERE, null, e);
+ Assert.fail();
+ }
+
+ }
+
+ @Test
+ public void testRemoveTextContent() {
+ try {
+ TextDocument doc = TextDocument.newTextDocument();
+
+ Iterator<Paragraph> paraA = doc.getParagraphIterator();
+ while(paraA.hasNext()){
+ Paragraph pp = paraA.next();
+ doc.removeParagraph(pp);
+ }
+
+ doc.addParagraph("This is a test paragraph!");
+
+ TextNavigation navigation = new TextNavigation("test", doc);
+ TextSelection sel = (TextSelection) navigation.nextSelection();
+ Span span = Span.newSpan(sel);
+
+ span.removeTextContent();
+ boolean flag = false;
+ Iterator<Paragraph> parai = doc.getParagraphIterator();
+ while(parai.hasNext()){
+ Paragraph pp = parai.next();
+ if("This is a paragraph!".equals(pp.getTextContent()))
+ flag = true;
+ }
+ Assert.assertTrue(flag);
+
+ //save
+ doc.save(ResourceUtilities.newTestOutputFile("spantest.odt"));
+
+ } catch (Exception e) {
+ Logger.getLogger(SpanTest.class.getName()).log(Level.SEVERE, null, e);
+ Assert.fail();
+ }
+
+ }
+
+ @Test
+ public void testAppendTextContent() {
+ try {
+ TextDocument doc = TextDocument.newTextDocument();
+ doc.addParagraph("This is a test paragraph!");
+
+ TextNavigation navigation = new TextNavigation("test", doc);
+ TextSelection sel = (TextSelection) navigation.nextSelection();
+ Span span = Span.newSpan(sel);
+
+ span.appendTextContent("hello world.");
+ Assert.assertEquals("testhello world.", span.getTextContent());
+
+ //save
+ //doc.save(ResourceUtilities.newTestOutputFile("spantest.odt"));
+ } catch (Exception e) {
+ Logger.getLogger(SpanTest.class.getName()).log(Level.SEVERE, null, e);
+ Assert.fail();
+ }
+
+ }
+
+
+ @Test
+ public void testAppendTextContentPara() {
+ try {
+ TextDocument doc = TextDocument.newTextDocument();
+ doc.addParagraph("This is a test paragraph!");
+
+ TextNavigation navigation = new TextNavigation("test", doc);
+ TextSelection sel = (TextSelection) navigation.nextSelection();
+ Span span = Span.newSpan(sel);
+
+ span.appendTextContent("hello world.", true);
+ Assert.assertEquals("testhello world.", span.getTextContent());
+
+ span.appendTextContent("hello world.", false);
+ Assert.assertEquals("testhello world.hello world.", span.getTextContent());
+
+ //save
+ //doc.save(ResourceUtilities.newTestOutputFile("spantest.odt"));
+ } catch (Exception e) {
+ Logger.getLogger(SpanTest.class.getName()).log(Level.SEVERE, null, e);
+ Assert.fail();
+ }
+
+ }
+
+ @Test
+ public void testRemoveTextContentLb() {
+ try {
+
+ TextDocument doc = TextDocument.newTextDocument();
+
+ Iterator<Paragraph> paraA = doc.getParagraphIterator();
+ while (paraA.hasNext()) {
+ Paragraph pp = paraA.next();
+ doc.removeParagraph(pp);
+ }
+
+ Paragraph para = doc.addParagraph("This is a beforelb\nafterlb paragraph!");
+
+ System.out.println(para.getTextContent());
+
+ TextNavigation navigation = new TextNavigation("beforelb\nafterlb", doc);
+ TextSelection sel = (TextSelection) navigation.nextSelection();
+ Span span = Span.newSpan(sel);
+
+ span.removeTextContent();
+ boolean flag = false;
+ Iterator<Paragraph> parai = doc.getParagraphIterator();
+ while (parai.hasNext()) {
+ Paragraph pp = parai.next();
+ System.out.println(pp.getTextContent());
+ if ("This is a paragraph!".equals(pp.getTextContent())) {
+ flag = true;
+ }
+ }
+ Assert.assertTrue("Linebreak is not removed from paragraph!", flag);
+
+ } catch (Exception e) {
+ Logger.getLogger(SpanTest.class.getName()).log(Level.SEVERE, null, e);
+ Assert.fail();
+ }
+
+ }
+
+ @Test
+ public void testRemoveTextContentTab() {
+ try {
+
+ TextDocument doc = TextDocument.newTextDocument();
+
+ Iterator<Paragraph> paraA = doc.getParagraphIterator();
+ while (paraA.hasNext()) {
+ Paragraph pp = paraA.next();
+ doc.removeParagraph(pp);
+ }
+
+ Paragraph para = doc.addParagraph("This is a beforetab\taftertab paragraph!");
+
+ System.out.println(para.getTextContent());
+
+ TextNavigation navigation = new TextNavigation("beforetab\taftertab", doc);
+ TextSelection sel = (TextSelection) navigation.nextSelection();
+ Span span = Span.newSpan(sel);
+
+ span.removeTextContent();
+ boolean flag = false;
+ Iterator<Paragraph> parai = doc.getParagraphIterator();
+ while (parai.hasNext()) {
+ Paragraph pp = parai.next();
+ System.out.println(pp.getTextContent());
+ if ("This is a paragraph!".equals(pp.getTextContent())) {
+ flag = true;
+ }
+ }
+ Assert.assertTrue("Tabulator is not removed from paragraph!", flag);
+
+ } catch (Exception e) {
+ Logger.getLogger(SpanTest.class.getName()).log(Level.SEVERE, null, e);
+ Assert.fail();
+ }
+
+ }
+
+
+}