Kaydet (Commit) a280cefe authored tarafından Lars Langhans's avatar Lars Langhans

sb123:#i111449# cleanups in comphelper qa complex tests

üst b2d7a0c3
......@@ -26,46 +26,163 @@
************************************************************************/
package complex.comphelper;
import complexlib.ComplexTestCase;
// import complexlib.ComplexTestCase;
import com.sun.star.lang.XMultiServiceFactory;
import com.sun.star.uno.UnoRuntime;
import com.sun.star.io.XSequenceOutputStream;
import com.sun.star.io.XSeekableInputStream;
import java.util.Random;
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.*;
/* Document.
*/
public class SequenceOutputStreamUnitTest extends ComplexTestCase {
private XMultiServiceFactory m_xMSF = null;
class TestHelper
{
// LogWriter m_aLogWriter;
String m_sTestPrefix;
public String[] getTestMethodNames() {
return new String[] {
"ExecuteTest01"};
/** Creates a new instance of TestHelper
* @param sTestPrefix
*/
public TestHelper ( String sTestPrefix ) {
m_sTestPrefix = sTestPrefix;
}
public String getTestObjectName () {
return "SequenceOutputStreamUnitTest";
public void Error ( String sError ) {
System.out.println ( m_sTestPrefix + "Error: " + sError );
}
public static String getShortTestDescription() {
return "tests the SequenceOutput/InputStream implementations";
public void Message ( String sMessage ) {
System.out.println ( m_sTestPrefix + sMessage );
}
}
public class SequenceOutputStreamUnitTest /* extends ComplexTestCase*/ {
private XMultiServiceFactory m_xMSF = null;
TestHelper m_aTestHelper = null;
public void before() {
// public String[] getTestMethodNames() {
// return new String[] {
// "ExecuteTest01"};
// }
// public String getTestObjectName () {
// return "SequenceOutputStreamUnitTest";
// }
// public static String getShortTestDescription() {
// return "tests the SequenceOutput/InputStream implementations";
// }
@Before public void before() {
try {
m_xMSF = (XMultiServiceFactory)param.getMSF ();
m_xMSF = getMSF();
m_aTestHelper = new TestHelper ( "Test01: ");
} catch (Exception e) {
failed ("Cannot create service factory!");
fail ("Cannot create service factory!");
}
if (m_xMSF==null) {
failed ("Cannot create service factory!");
fail ("Cannot create service factory!");
}
}
public void after() {
@After public void after() {
m_xMSF = null;
}
public void ExecuteTest01() {
Test01 aTest = new Test01 (m_xMSF, log);
assure ( "Test01 failed!", aTest.test() );
// @Test public void ExecuteTest01() {
// Test01 aTest = new Test01 (m_xMSF);
// assertTrue( "Test01 failed!", aTest.test() );
// }
@Test public void test () {
try {
final int nBytesCnt = 20;
//create SequenceOutputStream
Object oSequenceOutputStream = m_xMSF.createInstance (
"com.sun.star.io.SequenceOutputStream" );
XSequenceOutputStream xSeqOutStream =
UnoRuntime.queryInterface (
XSequenceOutputStream.class, oSequenceOutputStream );
m_aTestHelper.Message ( "SequenceOutputStream created." );
//write something to the stream
byte pBytesOriginal[] = new byte [nBytesCnt];
Random oRandom = new Random();
oRandom.nextBytes (pBytesOriginal);
xSeqOutStream.writeBytes (pBytesOriginal);
byte pBytesWritten[] = xSeqOutStream.getWrittenBytes ();
m_aTestHelper.Message ( "SeuenceOutputStream filled." );
//create SequenceInputstream
Object pArgs[] = new Object[1];
pArgs[0] = pBytesWritten;
Object oSequenceInputStream = m_xMSF.createInstanceWithArguments (
"com.sun.star.io.SequenceInputStream", pArgs );
XSeekableInputStream xSeekableInStream =
UnoRuntime.queryInterface (
XSeekableInputStream.class, oSequenceInputStream );
m_aTestHelper.Message ( "SequenceInputStream created." );
//read from the stream
byte pBytesRead[][] = new byte [1][nBytesCnt];
xSeekableInStream.readBytes ( pBytesRead, pBytesRead[0].length + 1 );
m_aTestHelper.Message ( "Read from SequenceInputStream." );
//close the streams
xSeqOutStream.closeOutput ();
xSeekableInStream.closeInput ();
m_aTestHelper.Message ( "Both streams closed." );
//compare the original, written and read arrys
for ( int i = 0; i < nBytesCnt; ++i ) {
if ( pBytesOriginal[i] != pBytesWritten[i] ) {
m_aTestHelper.Error ( "Written array not identical to " +
"original array. Position: " + i );
return /* false */;
} else if ( pBytesOriginal[i] != pBytesRead[0][i] ) {
m_aTestHelper.Error ( "Read array not identical to original " +
"array. Position: " + i );
return /* false */;
}
}
m_aTestHelper.Message ( "All data correct." );
} catch ( Exception e ) {
m_aTestHelper.Error ( "Exception: " + e );
return /* false */;
}
return /* true */;
}
private XMultiServiceFactory getMSF()
{
final XMultiServiceFactory xMSF1 = UnoRuntime.queryInterface(XMultiServiceFactory.class, connection.getComponentContext().getServiceManager());
return xMSF1;
}
// setup and close connections
@BeforeClass public static void setUpConnection() throws Exception {
System.out.println("setUpConnection()");
connection.setUp();
}
@AfterClass public static void tearDownConnection()
throws InterruptedException, com.sun.star.uno.Exception
{
System.out.println("tearDownConnection()");
connection.tearDown();
}
private static final OfficeConnection connection = new OfficeConnection();
}
\ No newline at end of file
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************/
package complex.comphelper;
import com.sun.star.lang.XMultiServiceFactory;
import com.sun.star.io.XSequenceOutputStream;
import com.sun.star.io.XSeekableInputStream;
import com.sun.star.uno.UnoRuntime;
import java.util.Random;
import share.LogWriter;
public class Test01 {
XMultiServiceFactory m_xMSF = null;
TestHelper m_aTestHelper = null;
public Test01 ( XMultiServiceFactory xMSF, LogWriter aLogWriter )
{
m_xMSF = xMSF;
m_aTestHelper = new TestHelper (aLogWriter, "Test01: ");
}
public boolean test () {
try {
final int nBytesCnt = 20;
//create SequenceOutputStream
Object oSequenceOutputStream = m_xMSF.createInstance (
"com.sun.star.io.SequenceOutputStream" );
XSequenceOutputStream xSeqOutStream =
(XSequenceOutputStream) UnoRuntime.queryInterface (
XSequenceOutputStream.class, oSequenceOutputStream );
m_aTestHelper.Message ( "SequenceOutputStream created." );
//write something to the stream
byte pBytesOriginal[] = new byte [nBytesCnt];
Random oRandom = new Random();
oRandom.nextBytes (pBytesOriginal);
xSeqOutStream.writeBytes (pBytesOriginal);
byte pBytesWritten[] = xSeqOutStream.getWrittenBytes ();
m_aTestHelper.Message ( "SeuenceOutputStream filled." );
//create SequenceInputstream
Object pArgs[] = new Object[1];
pArgs[0] = pBytesWritten;
Object oSequenceInputStream = m_xMSF.createInstanceWithArguments (
"com.sun.star.io.SequenceInputStream", pArgs );
XSeekableInputStream xSeekableInStream =
(XSeekableInputStream)UnoRuntime.queryInterface (
XSeekableInputStream.class, oSequenceInputStream );
m_aTestHelper.Message ( "SequenceInputStream created." );
//read from the stream
byte pBytesRead[][] = new byte [1][nBytesCnt];
xSeekableInStream.readBytes ( pBytesRead, pBytesRead[0].length + 1 );
m_aTestHelper.Message ( "Read from SequenceInputStream." );
//close the streams
xSeqOutStream.closeOutput ();
xSeekableInStream.closeInput ();
m_aTestHelper.Message ( "Both streams closed." );
//compare the original, written and read arrys
for ( int i = 0; i < nBytesCnt; ++i ) {
if ( pBytesOriginal[i] != pBytesWritten[i] ) {
m_aTestHelper.Error ( "Written array not identical to " +
"original array. Position: " + i );
return false;
} else if ( pBytesOriginal[i] != pBytesRead[0][i] ) {
m_aTestHelper.Error ( "Read array not identical to original " +
"array. Position: " + i );
return false;
}
}
m_aTestHelper.Message ( "All data correct." );
} catch ( Exception e ) {
m_aTestHelper.Error ( "Exception: " + e );
return false;
}
return true;
}
}
\ No newline at end of file
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************/
package complex.comphelper;
import share.LogWriter;
public class TestHelper {
LogWriter m_aLogWriter;
String m_sTestPrefix;
/** Creates a new instance of TestHelper */
public TestHelper ( LogWriter aLogWriter, String sTestPrefix ) {
m_aLogWriter = aLogWriter;
m_sTestPrefix = sTestPrefix;
}
public void Error ( String sError ) {
m_aLogWriter.println ( m_sTestPrefix + "Error: " + sError );
}
public void Message ( String sMessage ) {
m_aLogWriter.println ( m_sTestPrefix + sMessage );
}
}
......@@ -25,59 +25,30 @@
#
#*************************************************************************
PRJ = ..$/..
TARGET = ComphelperComplexTests
PRJNAME = comphelper
# --- Settings -----------------------------------------------------
.INCLUDE: settings.mk
#----- compile .java files -----------------------------------------
JARFILES := ridl.jar unoil.jar jurt.jar juh.jar java_uno.jar OOoRunner.jar
JAVAFILES := $(shell @$(FIND) . -name "*.java")
JAVACLASSFILES := $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(i:d)$/$(i:b).class)
#----- make a jar from compiled files ------------------------------
MAXLINELENGTH = 100000
#JARCLASSDIRS =
JARTARGET = $(TARGET).jar
JARCOMPRESS = TRUE
# --- Runner Settings ----------------------------------------------
# classpath and argument list
RUNNER_CLASSPATH = -cp $(CLASSPATH)$(PATH_SEPERATOR)$(SOLARBINDIR)$/OOoRunner.jar
# start an office if the parameter is set for the makefile
.IF "$(OFFICE)" == ""
RUNNER_APPEXECCOMMAND =
.IF "$(OOO_SUBSEQUENT_TESTS)" == ""
nothing .PHONY:
.ELSE
RUNNER_APPEXECCOMMAND = -AppExecutionCommand "$(OFFICE)$/soffice -accept=socket,host=localhost,port=8100;urp;"
.ENDIF
RUNNER_ARGS = org.openoffice.Runner -TestBase java_complex $(RUNNER_APPEXECCOMMAND)
# --- Targets ------------------------------------------------------
.IF "$(depend)" == ""
ALL : ALLTAR
@echo -----------------------------------------------------
@echo - do a 'dmake show_targets' to show available targets
@echo -----------------------------------------------------
.ELSE
ALL: ALLDEP
.ENDIF
PRJ = ../../..
PRJNAME = comphelper
TARGET = qa_complex_comphelper
.IF "$(OOO_JUNIT_JAR)" != ""
PACKAGE = complex/comphelper
JAVATESTFILES = \
Map.java \
SequenceOutputStreamUnitTest.java
JAVAFILES = $(JAVATESTFILES)
JARFILES = OOoRunner.jar ridl.jar test.jar unoil.jar jurt.jar
EXTRAJARFILES = $(OOO_JUNIT_JAR)
.END
.INCLUDE : target.mk
.INCLUDE: settings.mk
.INCLUDE: target.mk
.INCLUDE: installationtest.mk
show_targets:
+@java $(RUNNER_CLASSPATH) complexlib.ShowTargets $(foreach,i,$(JAVAFILES) $(i:s#.java##:s#./#complex.#))
ALLTAR : javatest
run:
+java $(RUNNER_CLASSPATH) $(RUNNER_ARGS) -sce comphelper_all.sce
.END
run_%:
+java $(RUNNER_CLASSPATH) $(RUNNER_ARGS) -o complex.$(PRJNAME).$(@:s/run_//)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment