xref: /trunk/test/testuno/source/fvt/uno/sw/puretext/CharacterUnderline.java (revision a7b613a6af1cb6c17f72fb50272cb23f0021e01b)
1 package fvt.uno.sw.puretext;
2 
3 import static org.junit.Assert.*;
4 
5 import org.junit.After;
6 import org.junit.Before;
7 import org.junit.Ignore;
8 import org.junit.Test;
9 import org.openoffice.test.common.FileUtil;
10 import org.openoffice.test.common.Testspace;
11 import org.openoffice.test.uno.UnoApp;
12 import com.sun.star.text.*;
13 import com.sun.star.beans.*;
14 import com.sun.star.frame.XStorable;
15 import com.sun.star.uno.UnoRuntime;
16 
17 
18 public class CharacterUnderline {
19     private static final UnoApp app = new UnoApp();
20     XText xText = null;
21 
22     @Before
23     public void setUp() throws Exception {
24         app.start();
25 
26     }
27 
28     @After
29     public void tearDown() throws Exception {
30         app.close();
31     }
32     @Test@Ignore("Bug #120657 - [testUNO patch]underline color lost and individual words option disable when save to doc")
33     public void testCharacterUnderlineSetting() throws Exception {
34         XTextDocument xTextDocument = (XTextDocument) UnoRuntime.queryInterface(XTextDocument.class, app.newDocument("swriter"));// new a text document
35         xText = xTextDocument.getText();
36         xText.setString("We are Chinese,they are American. We are all living in one earth!"
37                 + "and we all love our home very much!!!We are Chinese,they are American. " +
38                 "We are all living in one earth!We are Chinese,they are American. " +
39                 "We are all living in one earth!We are Chinese,they are American. " +
40                 "We are all living in one earth!We are Chinese,they are American. " +
41                 "We are all living in one earth!We are Chinese,they are American. " +
42                 "We are all living in one earth!We are Chinese,they are American." +
43                 " We are all living in one earth!We are Chinese,they are American. " +
44                 "We are all living in one earth!We are Chinese,they are American. " +
45                 "We are all living in one earth!We are Chinese,they are American. " +
46                 "We are all living in one earth!We are Chinese,they are American. " +
47                 "We are all living in one earth!We are Chinese,they are American. " +
48                 "We are all living in one earth!We are Chinese,they are American. " +
49                 "We are all living in one earth!We are Chinese,they are American. " +
50                 "We are all living in one earth!We are Chinese,they are American. " +
51                 "We are all living in one earth!We are Chinese,they are American. " +
52                 "We are all living in one earth!We are Chinese,they are American. " +
53                 "We are all living in one earth!We are Chinese,they are American. " +
54                 "We are all living in one earth!We are Chinese,they are American. " +
55                 "We are all living in one earth!We are all living in one earth!We are Chinese,they are American. " +
56                 "We are all living in one earth!We are all living in one earth!We are Chinese,they are American. " +
57                 "We are all living in one earth!We are all living in one earth!We are Chinese,they are American. " +
58                 "We are all living in one earth!We are all living in one earth!We are Chinese,they are American. " +
59                 "We are all living in one earth!We are all living in one earth!We are Chinese,they are American. " +
60                 "We are all living in one earth!We are all living in one earth!We are Chinese,they are American. " +
61                 "We are all living in one earth!");
62         // create text cursor for selecting and formatting text
63         XTextCursor xTextCursor = xText.createTextCursor();
64         XPropertySet xCursorProps = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, xTextCursor);
65         xTextCursor.gotoStart(false);
66         xTextCursor.goRight((short) 100, true);
67         xCursorProps.setPropertyValue("CharWordMode", true);
68         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.DOUBLE));
69         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
70         xCursorProps.setPropertyValue("CharUnderlineColor", 0x00FF00FF);
71         xTextCursor.gotoRange(xTextCursor, false);
72         xTextCursor.goRight((short) 100, true);
73         xCursorProps.setPropertyValue("CharWordMode", false);
74         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.WAVE));
75         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
76         xCursorProps.setPropertyValue("CharUnderlineColor", 0x00FF00FF);
77         xTextCursor.gotoRange(xTextCursor, false);
78         xTextCursor.goRight((short) 100, true);
79         xCursorProps.setPropertyValue("CharWordMode", false);
80         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.SMALLWAVE));
81         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
82         xCursorProps.setPropertyValue("CharUnderlineColor", 0x00FF00FF);
83         xTextCursor.gotoRange(xTextCursor, false);
84         xTextCursor.goRight((short) 100, true);
85         xCursorProps.setPropertyValue("CharWordMode", true);
86         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.SINGLE));
87         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
88         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
89         xTextCursor.gotoRange(xTextCursor, false);
90         xTextCursor.goRight((short) 100, true);
91         xCursorProps.setPropertyValue("CharWordMode", true);
92         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.NONE));
93         xTextCursor.gotoRange(xTextCursor, false);
94         xTextCursor.goRight((short) 100, true);
95         xCursorProps.setPropertyValue("CharWordMode", false);
96         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.LONGDASH));
97         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
98         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
99         xTextCursor.gotoRange(xTextCursor, false);
100         xTextCursor.goRight((short) 100, true);
101         xCursorProps.setPropertyValue("CharWordMode", false);
102         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.DOUBLEWAVE));
103         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
104         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
105         xTextCursor.gotoRange(xTextCursor, false);
106         xTextCursor.goRight((short) 100, true);
107         xCursorProps.setPropertyValue("CharWordMode", false);
108         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.DONTKNOW));
109         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
110         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
111         xTextCursor.gotoRange(xTextCursor, false);
112         xTextCursor.goRight((short) 100, true);
113         xCursorProps.setPropertyValue("CharWordMode", false);
114         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.DOTTED));
115         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
116         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
117         xTextCursor.gotoRange(xTextCursor, false);
118         xTextCursor.goRight((short) 100, true);
119         xCursorProps.setPropertyValue("CharWordMode", false);
120         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.DASHDOTDOT));
121         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
122         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
123         xTextCursor.gotoRange(xTextCursor, false);
124         xTextCursor.goRight((short) 100, true);
125         xCursorProps.setPropertyValue("CharWordMode", false);
126         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.DASHDOT));
127         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
128         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
129         xTextCursor.gotoRange(xTextCursor, false);
130         xTextCursor.goRight((short) 100, true);
131         xCursorProps.setPropertyValue("CharWordMode", false);
132         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.DASH));
133         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
134         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
135         xTextCursor.gotoRange(xTextCursor, false);
136         xTextCursor.goRight((short) 100, true);
137         xCursorProps.setPropertyValue("CharWordMode", false);
138         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.BOLDWAVE));
139         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
140         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
141         xTextCursor.gotoRange(xTextCursor, false);
142         xTextCursor.goRight((short) 100, true);
143         xCursorProps.setPropertyValue("CharWordMode", false);
144         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.BOLDLONGDASH));
145         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
146         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
147         xTextCursor.gotoRange(xTextCursor, false);
148         xTextCursor.goRight((short) 100, true);
149         xCursorProps.setPropertyValue("CharWordMode", false);
150         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.BOLDDOTTED));
151         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
152         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
153         xTextCursor.gotoRange(xTextCursor, false);
154         xTextCursor.goRight((short) 100, true);
155         xCursorProps.setPropertyValue("CharWordMode", false);
156         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.BOLDDASHDOTDOT));
157         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
158         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
159         xTextCursor.gotoRange(xTextCursor, false);
160         xTextCursor.goRight((short) 100, true);
161         xCursorProps.setPropertyValue("CharWordMode", false);
162         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.BOLDDASHDOT));
163         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
164         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
165         xTextCursor.gotoRange(xTextCursor, false);
166         xTextCursor.goRight((short) 100, true);
167         xCursorProps.setPropertyValue("CharWordMode", false);
168         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.BOLDDASH));
169         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
170         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
171         xTextCursor.gotoRange(xTextCursor, false);
172         xTextCursor.goRight((short) 100, true);
173         xCursorProps.setPropertyValue("CharWordMode", false);
174         xCursorProps.setPropertyValue("CharUnderline", new Short(com.sun.star.awt.FontUnderline.BOLD));
175         xCursorProps.setPropertyValue("CharUnderlineHasColor", true);
176         xCursorProps.setPropertyValue("CharUnderlineColor", 0x0000FF00);
177         //save to odt
178         XStorable xStorable_odt = (XStorable) UnoRuntime.queryInterface(XStorable.class, xTextDocument);
179         PropertyValue[] aStoreProperties_odt = new PropertyValue[2];
180         aStoreProperties_odt[0] = new PropertyValue();
181         aStoreProperties_odt[1] = new PropertyValue();
182         aStoreProperties_odt[0].Name = "Override";
183         aStoreProperties_odt[0].Value = true;
184         aStoreProperties_odt[1].Name = "FilterName";
185         aStoreProperties_odt[1].Value = "StarOffice XML (Writer)";
186         xStorable_odt.storeToURL(FileUtil.getUrl(Testspace.getPath("output/test.odt")), aStoreProperties_odt);
187         //save to doc
188         XStorable xStorable_doc = (XStorable) UnoRuntime.queryInterface(XStorable.class, xTextDocument);
189         PropertyValue[] aStoreProperties_doc = new PropertyValue[2];
190         aStoreProperties_doc[0] = new PropertyValue();
191         aStoreProperties_doc[1] = new PropertyValue();
192         aStoreProperties_doc[0].Name = "Override";
193         aStoreProperties_doc[0].Value = true;
194         aStoreProperties_doc[1].Name = "FilterName";
195         aStoreProperties_doc[1].Value = "MS Word 97";
196         xStorable_doc.storeToURL(FileUtil.getUrl(Testspace.getPath("output/test.doc")), aStoreProperties_doc);
197         app.closeDocument(xTextDocument);
198 
199         //reopen the document and assert row height setting
200         XTextDocument assertDocument_odt=(XTextDocument)UnoRuntime.queryInterface(XTextDocument.class, app.loadDocument(Testspace.getPath("output/test.odt")));
201         XTextCursor xTextCursor_assert_odt = assertDocument_odt.getText().createTextCursor();
202         XPropertySet xCursorProps_assert_odt = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, xTextCursor_assert_odt);
203 
204         xTextCursor_assert_odt.gotoStart(false);
205         xTextCursor_assert_odt.goRight((short) 100, true);
206         assertEquals("assert individual word setting",true,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
207         assertEquals("assert underline is double",com.sun.star.awt.FontUnderline.DOUBLE,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
208         assertEquals("assert has underline color is true",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
209         assertEquals("assert underline color",0x00FF00FF,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
210         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
211         xTextCursor_assert_odt.goRight((short) 100, true);
212         assertEquals("assert individual word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
213         assertEquals("assert underline is wave",com.sun.star.awt.FontUnderline.WAVE,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
214         assertEquals("assert has underline color is true",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
215         assertEquals("assert underline color",0x00FF00FF,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
216         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
217         xTextCursor_assert_odt.goRight((short) 100, true);
218         assertEquals("assert individual word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
219         assertEquals("assert underline is smallwave",com.sun.star.awt.FontUnderline.SMALLWAVE,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
220         assertEquals("assert has underline color is true",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
221         assertEquals("assert underline color",0x00FF00FF,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
222         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
223         xTextCursor_assert_odt.goRight((short) 100, true);
224         assertEquals("assert individual word setting",true,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
225         assertEquals("assert underline is single",com.sun.star.awt.FontUnderline.SINGLE,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
226         assertEquals("assert has underline color is true",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
227         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
228         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
229         xTextCursor_assert_odt.goRight((short) 100, true);
230         assertEquals("assert individual word setting",true,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
231         assertEquals("assert underline is without",com.sun.star.awt.FontUnderline.NONE,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
232         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
233         xTextCursor_assert_odt.goRight((short) 100, true);
234         assertEquals("assert individual word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
235         assertEquals("assert underline is LONGDASH",com.sun.star.awt.FontUnderline.LONGDASH,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
236         assertEquals("assert has underline color is true",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
237         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
238         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
239         xTextCursor_assert_odt.goRight((short) 100, true);
240         assertEquals("assert individual word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
241         assertEquals("assert underline is DOUBLEWAVE",com.sun.star.awt.FontUnderline.DOUBLEWAVE,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
242         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
243         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
244         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
245         xTextCursor_assert_odt.goRight((short) 100, true);
246         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
247         assertEquals("assert underline is DONTKNOW",com.sun.star.awt.FontUnderline.NONE,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
248         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
249         xTextCursor_assert_odt.goRight((short) 100, true);
250         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
251         assertEquals("assert underline is DOTTED",com.sun.star.awt.FontUnderline.DOTTED,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
252         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
253         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
254         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
255         xTextCursor_assert_odt.goRight((short) 100, true);
256         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
257         assertEquals("assert underline is DASHDOTDOT",com.sun.star.awt.FontUnderline.DASHDOTDOT,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
258         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
259         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
260         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
261         xTextCursor_assert_odt.goRight((short) 100, true);
262         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
263         assertEquals("assert underline is DASHDOT",com.sun.star.awt.FontUnderline.DASHDOT,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
264         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
265         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
266         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
267         xTextCursor_assert_odt.goRight((short) 100, true);
268         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
269         assertEquals("assert underline is DASH",com.sun.star.awt.FontUnderline.DASH,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
270         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
271         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
272         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
273         xTextCursor_assert_odt.goRight((short) 100, true);
274         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
275         assertEquals("assert underline is BOLDWAVE",com.sun.star.awt.FontUnderline.BOLDWAVE,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
276         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
277         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
278         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
279         xTextCursor_assert_odt.goRight((short) 100, true);
280         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
281         assertEquals("assert underline is BOLDLONGDASH",com.sun.star.awt.FontUnderline.BOLDLONGDASH,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
282         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
283         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
284         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
285         xTextCursor_assert_odt.goRight((short) 100, true);
286         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
287         assertEquals("assert underline is BOLDDOTTED",com.sun.star.awt.FontUnderline.BOLDDOTTED,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
288         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
289         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
290         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
291         xTextCursor_assert_odt.goRight((short) 100, true);
292         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
293         assertEquals("assert underline is BOLDDASHDOTDOT",com.sun.star.awt.FontUnderline.BOLDDASHDOTDOT,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
294         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
295         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
296         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
297         xTextCursor_assert_odt.goRight((short) 100, true);
298         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
299         assertEquals("assert underline is BOLDDASHDOT",com.sun.star.awt.FontUnderline.BOLDDASHDOT,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
300         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
301         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
302         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
303         xTextCursor_assert_odt.goRight((short) 100, true);
304         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
305         assertEquals("assert underline is BOLDDASH",com.sun.star.awt.FontUnderline.BOLDDASH,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
306         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
307         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
308         xTextCursor_assert_odt.gotoRange(xTextCursor_assert_odt, false);
309         xTextCursor_assert_odt.goRight((short) 100, true);
310         assertEquals("assert individula word setting",false,xCursorProps_assert_odt.getPropertyValue("CharWordMode"));
311         assertEquals("assert underline is bold",com.sun.star.awt.FontUnderline.BOLD,xCursorProps_assert_odt.getPropertyValue("CharUnderline"));
312         assertEquals("assert has underline color",true,xCursorProps_assert_odt.getPropertyValue("CharUnderlineHasColor"));
313         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_odt.getPropertyValue("CharUnderlineColor"));
314 
315         //reopen the document and assert row height setting
316         XTextDocument assertDocument_doc=(XTextDocument)UnoRuntime.queryInterface(XTextDocument.class, app.loadDocument(Testspace.getPath("output/test.doc")));
317         XTextCursor xTextCursor_assert_doc = assertDocument_doc.getText().createTextCursor();
318         XPropertySet xCursorProps_assert_doc = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, xTextCursor_assert_doc);
319 
320         xTextCursor_assert_odt.gotoStart(false);
321         xTextCursor_assert_odt.goRight((short) 100, true);
322         assertEquals("assert individual word setting",true,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
323         assertEquals("assert underline is double",com.sun.star.awt.FontUnderline.DOUBLE,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
324         assertEquals("assert has underline color is true",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
325         assertEquals("assert underline color",0x00FF00FF,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
326         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
327         xTextCursor_assert_doc.goRight((short) 100, true);
328         assertEquals("assert individual word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
329         assertEquals("assert underline is wave",com.sun.star.awt.FontUnderline.WAVE,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
330         assertEquals("assert has underline color is true",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
331         assertEquals("assert underline color",0x00FF00FF,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
332         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
333         xTextCursor_assert_doc.goRight((short) 100, true);
334         assertEquals("assert individual word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
335         assertEquals("assert underline is smallwave",com.sun.star.awt.FontUnderline.SMALLWAVE,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
336         assertEquals("assert has underline color is true",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
337         assertEquals("assert underline color",0x00FF00FF,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
338         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
339         xTextCursor_assert_doc.goRight((short) 100, true);
340         assertEquals("assert individual word setting",true,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
341         assertEquals("assert underline is single",com.sun.star.awt.FontUnderline.SINGLE,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
342         assertEquals("assert has underline color is true",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
343         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
344         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
345         xTextCursor_assert_doc.goRight((short) 100, true);
346         assertEquals("assert individual word setting",true,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
347         assertEquals("assert underline is without",com.sun.star.awt.FontUnderline.NONE,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
348         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
349         xTextCursor_assert_doc.goRight((short) 100, true);
350         assertEquals("assert individual word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
351         assertEquals("assert underline is LONGDASH",com.sun.star.awt.FontUnderline.LONGDASH,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
352         assertEquals("assert has underline color is true",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
353         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
354         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
355         xTextCursor_assert_doc.goRight((short) 100, true);
356         assertEquals("assert individual word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
357         assertEquals("assert underline is DOUBLEWAVE",com.sun.star.awt.FontUnderline.DOUBLEWAVE,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
358         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
359         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
360         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
361         xTextCursor_assert_doc.goRight((short) 100, true);
362         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
363         assertEquals("assert underline is DONTKNOW",com.sun.star.awt.FontUnderline.NONE,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
364         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
365         xTextCursor_assert_doc.goRight((short) 100, true);
366         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
367         assertEquals("assert underline is DOTTED",com.sun.star.awt.FontUnderline.DOTTED,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
368         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
369         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
370         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
371         xTextCursor_assert_doc.goRight((short) 100, true);
372         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
373         assertEquals("assert underline is DASHDOTDOT",com.sun.star.awt.FontUnderline.DASHDOTDOT,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
374         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
375         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
376         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
377         xTextCursor_assert_doc.goRight((short) 100, true);
378         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
379         assertEquals("assert underline is DASHDOT",com.sun.star.awt.FontUnderline.DASHDOT,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
380         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
381         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
382         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
383         xTextCursor_assert_doc.goRight((short) 100, true);
384         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
385         assertEquals("assert underline is DASH",com.sun.star.awt.FontUnderline.DASH,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
386         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
387         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
388         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
389         xTextCursor_assert_doc.goRight((short) 100, true);
390         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
391         assertEquals("assert underline is BOLDWAVE",com.sun.star.awt.FontUnderline.BOLDWAVE,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
392         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
393         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
394         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
395         xTextCursor_assert_doc.goRight((short) 100, true);
396         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
397         assertEquals("assert underline is BOLDLONGDASH",com.sun.star.awt.FontUnderline.BOLDLONGDASH,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
398         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
399         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
400         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
401         xTextCursor_assert_doc.goRight((short) 100, true);
402         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
403         assertEquals("assert underline is BOLDDOTTED",com.sun.star.awt.FontUnderline.BOLDDOTTED,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
404         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
405         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
406         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
407         xTextCursor_assert_doc.goRight((short) 100, true);
408         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
409         assertEquals("assert underline is BOLDDASHDOTDOT",com.sun.star.awt.FontUnderline.BOLDDASHDOTDOT,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
410         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
411         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
412         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
413         xTextCursor_assert_doc.goRight((short) 100, true);
414         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
415         assertEquals("assert underline is BOLDDASHDOT",com.sun.star.awt.FontUnderline.BOLDDASHDOT,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
416         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
417         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
418         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
419         xTextCursor_assert_doc.goRight((short) 100, true);
420         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
421         assertEquals("assert underline is BOLDDASH",com.sun.star.awt.FontUnderline.BOLDDASH,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
422         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
423         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
424         xTextCursor_assert_doc.gotoRange(xTextCursor_assert_doc, false);
425         xTextCursor_assert_doc.goRight((short) 100, true);
426         assertEquals("assert individula word setting",false,xCursorProps_assert_doc.getPropertyValue("CharWordMode"));
427         assertEquals("assert underline is bold",com.sun.star.awt.FontUnderline.BOLD,xCursorProps_assert_doc.getPropertyValue("CharUnderline"));
428         assertEquals("assert has underline color",true,xCursorProps_assert_doc.getPropertyValue("CharUnderlineHasColor"));
429         assertEquals("assert underline color",0x0000FF00,xCursorProps_assert_doc.getPropertyValue("CharUnderlineColor"));
430     }
431 }
432