summaryrefslogtreecommitdiff
path: root/sw/qa/complex/writer/CheckBookmarks.java
diff options
context:
space:
mode:
Diffstat (limited to 'sw/qa/complex/writer/CheckBookmarks.java')
-rw-r--r--sw/qa/complex/writer/CheckBookmarks.java127
1 files changed, 56 insertions, 71 deletions
diff --git a/sw/qa/complex/writer/CheckBookmarks.java b/sw/qa/complex/writer/CheckBookmarks.java
index 0915db42e6ac..84bfe15ba045 100644
--- a/sw/qa/complex/writer/CheckBookmarks.java
+++ b/sw/qa/complex/writer/CheckBookmarks.java
@@ -43,9 +43,15 @@ import com.sun.star.text.XTextRange;
import com.sun.star.uno.UnoRuntime;
import complexlib.ComplexTestCase;
import java.math.BigInteger;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.openoffice.test.OfficeConnection;
+import static org.junit.Assert.*;
class BookmarkHashes {
- public String m_sName;
public BigInteger m_nSetupHash;
public BigInteger m_nInsertRandomHash;
public BigInteger m_nDeleteRandomHash;
@@ -53,40 +59,13 @@ class BookmarkHashes {
public BigInteger m_nOdfReloadHash;
public BigInteger m_nMsWordReloadHash;
- public BookmarkHashes(String sName) {
- m_sName = sName;
- }
-
- public String checkExpectationString(BookmarkHashes aExpectation) {
- StringBuffer buffer = new StringBuffer();
- buffer.append("Comparing " + m_sName + " to expectations from " + aExpectation.m_sName + "\n");
- buffer.append(compareHashString("after setup", m_nSetupHash, aExpectation.m_nSetupHash));
- buffer.append(compareHashString("after insert random", m_nInsertRandomHash, aExpectation.m_nInsertRandomHash));
- buffer.append(compareHashString("after delete random", m_nDeleteRandomHash, aExpectation.m_nDeleteRandomHash));
- buffer.append(compareHashString("after line breaks", m_nLinebreakHash, aExpectation.m_nLinebreakHash));
- buffer.append(compareHashString("after ODF roundtrip", m_nOdfReloadHash, aExpectation.m_nOdfReloadHash));
- buffer.append(compareHashString("after MsWord roundtrip", m_nMsWordReloadHash, aExpectation.m_nMsWordReloadHash));
- return buffer.toString();
- };
-
- public boolean meetsExpectation(BookmarkHashes aExpectation) {
- return m_nSetupHash.equals(aExpectation.m_nSetupHash)
- && m_nInsertRandomHash.equals(aExpectation.m_nInsertRandomHash)
- && m_nDeleteRandomHash.equals(aExpectation.m_nDeleteRandomHash)
- && m_nLinebreakHash.equals(aExpectation.m_nLinebreakHash)
- && m_nOdfReloadHash.equals(aExpectation.m_nOdfReloadHash)
- && m_nMsWordReloadHash.equals(aExpectation.m_nMsWordReloadHash);
- }
-
- private String compareHashString(String sCheckName, BigInteger nActual, BigInteger nExpectation) {
- StringBuffer buffer = new StringBuffer(sCheckName);
- buffer.append(": ");
- if(nActual.equals(nExpectation))
- buffer.append("good (" + nActual.toString(16) + ")");
- else
- buffer.append("bad (actual:" + nActual.toString(16) + ", expected: " + nExpectation.toString(16) + ")");
- buffer.append("\n");
- return buffer.toString();
+ public void assertExpectation(BookmarkHashes aExpectation) {
+ assertEquals(aExpectation.m_nSetupHash, m_nSetupHash);
+ assertEquals(aExpectation.m_nInsertRandomHash, m_nInsertRandomHash);
+ assertEquals(aExpectation.m_nDeleteRandomHash, m_nDeleteRandomHash);
+ assertEquals(aExpectation.m_nLinebreakHash, m_nLinebreakHash);
+ assertEquals(aExpectation.m_nOdfReloadHash, m_nOdfReloadHash);
+ assertEquals(aExpectation.m_nMsWordReloadHash, m_nMsWordReloadHash);
}
static public java.math.BigInteger getBookmarksHash(XTextDocument xDoc)
@@ -114,18 +93,15 @@ class BookmarkHashes {
}
}
-public class CheckBookmarks extends ComplexTestCase {
+public class CheckBookmarks {
private XMultiServiceFactory m_xMsf = null;
private XTextDocument m_xDoc = null;
private XTextDocument m_xOdfReloadedDoc = null;
private XTextDocument m_xMsWordReloadedDoc = null;
-
- public String[] getTestMethodNames() {
- return new String[]{"checkBookmarks"};
- }
+ private final BookmarkHashes actualHashes = new BookmarkHashes();
private BookmarkHashes getDEV300m41Expectations() {
- BookmarkHashes result = new BookmarkHashes("DEV300m41");
+ BookmarkHashes result = new BookmarkHashes();
result.m_nSetupHash = new BigInteger("-4b0706744e8452fe1ae9d5e1c28cf70fb6194795",16);
result.m_nInsertRandomHash = new BigInteger("25aa0fad3f4881832dcdfe658ec2efa8a1a02bc5",16);
result.m_nDeleteRandomHash = new BigInteger("-3ec87e810b46d734677c351ad893bbbf9ea10f55",16);
@@ -135,42 +111,51 @@ public class CheckBookmarks extends ComplexTestCase {
return result;
}
- public void checkBookmarks()
+ @Test public void checkBookmarks()
throws com.sun.star.uno.Exception,
com.sun.star.io.IOException,
java.security.NoSuchAlgorithmException
{
- try {
- m_xMsf = (XMultiServiceFactory)param.getMSF();
- m_xDoc = util.WriterTools.createTextDoc(m_xMsf);
- BookmarkHashes actualHashes = new BookmarkHashes("actual");
- BookmarkHashes expectedHashes = getDEV300m41Expectations();
- setupBookmarks();
- actualHashes.m_nSetupHash = BookmarkHashes.getBookmarksHash(m_xDoc);
- insertRandomParts(200177);
- actualHashes.m_nInsertRandomHash = BookmarkHashes.getBookmarksHash(m_xDoc);
- deleteRandomParts(4711);
- actualHashes.m_nDeleteRandomHash = BookmarkHashes.getBookmarksHash(m_xDoc);
- insertLinebreaks(007);
- actualHashes.m_nLinebreakHash = BookmarkHashes.getBookmarksHash(m_xDoc);
- m_xOdfReloadedDoc = reloadFrom("StarOffice XML (Writer)", "odf");
- actualHashes.m_nOdfReloadHash = BookmarkHashes.getBookmarksHash(m_xOdfReloadedDoc);
- m_xMsWordReloadedDoc = reloadFrom("MS Word 97", "doc");
- actualHashes.m_nMsWordReloadHash = BookmarkHashes.getBookmarksHash(m_xMsWordReloadedDoc);
- log.println(actualHashes.checkExpectationString(expectedHashes));
- if(!actualHashes.meetsExpectation(expectedHashes))
- failed("CheckBookmark did not meet expectations (" + expectedHashes.m_sName + ").");
- } finally {
- // closing test document
- if(m_xDoc != null)
- util.DesktopTools.closeDoc(m_xDoc);
- if(m_xOdfReloadedDoc!= null)
- util.DesktopTools.closeDoc(m_xOdfReloadedDoc);
- if(m_xMsWordReloadedDoc!= null)
- util.DesktopTools.closeDoc(m_xMsWordReloadedDoc);
- }
+ actualHashes.assertExpectation(getDEV300m41Expectations());
}
+ @Before public void setUpDocuments() throws Exception {
+ m_xMsf = UnoRuntime.queryInterface(
+ XMultiServiceFactory.class,
+ connection.getComponentContext().getServiceManager());
+ m_xDoc = util.WriterTools.createTextDoc(m_xMsf);
+ setupBookmarks();
+ actualHashes.m_nSetupHash = BookmarkHashes.getBookmarksHash(m_xDoc);
+ insertRandomParts(200177);
+ actualHashes.m_nInsertRandomHash = BookmarkHashes.getBookmarksHash(m_xDoc);
+ deleteRandomParts(4711);
+ actualHashes.m_nDeleteRandomHash = BookmarkHashes.getBookmarksHash(m_xDoc);
+ insertLinebreaks(007);
+ actualHashes.m_nLinebreakHash = BookmarkHashes.getBookmarksHash(m_xDoc);
+ m_xOdfReloadedDoc = reloadFrom("StarOffice XML (Writer)", "odf");
+ actualHashes.m_nOdfReloadHash = BookmarkHashes.getBookmarksHash(m_xOdfReloadedDoc);
+ m_xMsWordReloadedDoc = reloadFrom("MS Word 97", "doc");
+ actualHashes.m_nMsWordReloadHash = BookmarkHashes.getBookmarksHash(m_xMsWordReloadedDoc);
+ }
+
+ @After public void tearDownDocuments() {
+ util.DesktopTools.closeDoc(m_xDoc);
+ util.DesktopTools.closeDoc(m_xOdfReloadedDoc);
+ util.DesktopTools.closeDoc(m_xMsWordReloadedDoc);
+ }
+
+ @BeforeClass public static void setUpConnection() throws Exception {
+ connection.setUp();
+ }
+
+ @AfterClass public static void tearDownConnection()
+ throws InterruptedException, com.sun.star.uno.Exception
+ {
+ connection.tearDown();
+ }
+
+ private static final OfficeConnection connection = new OfficeConnection();
+
private void setupBookmarks()
throws com.sun.star.uno.Exception
{