Hi Peter and Mathias,
Thanks very much for you help :-) .
Now I have my problem solved and corrected several obvious typos in the
unit-test, extending it to all the three formats. The modified unit-test
caught a com.sun.star.task.ErrorCodeIOException when attempting to store
the old-binary-formatted document. Hopefully when Mikhail is back, he
would review the unit-test and give me further instructions on it.
Best Regards to All,
Felix.
Peter Burow 写道:
Zhang Xiaofei schrieb:
Hi Mikhail,
Sorry for the delay, I was occupied with some work in the previous
two days. And thanks very much for your instructions, I tried to
implement the first step of the unit-test according to it, yet there
are several things I failed to figure out:
1. (This may be awkward but...)where should the unit-test be
established? In /binfilter/bf_sfx2/ , I suppose?
2. I do not quite understand what "media descriptor" in 1st step, 3rd
sub-step refers to. Could you please give me some explanations on that?
The attachment is the finished part of the unit-test, please review
it and correct me if there are errors.
Thanks and Best Regards, :-)
Felix.
Hi Felix,
I hope I can help you.
1. Please establish your unit-test in /sfx2/qa/complex/....
2. "media descriptor" means here the PropertySet of StoreToURL(). You
can invite a title by your own.
Because Mikhail is back on Wednesday he can review your unit-test.
Best regards
Peter
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
dmake: Executing shell macro: echo %_cwd
dmake: Executing shell macro: echo %_4ver
java -cp
.;..\..\..\wntmsci10.pro\class;d:\OOEnv\J2SDK1~1.2_0\jre\lib\rt.jar;.;g:\OOo\SRC680_m225\solver\680\wntmsci10.pro\bin\ridl.jar;g:\OOo\SRC680_m225\solver\680\wntmsci10.pro\bin\unoil.jar;g:\OOo\SRC680_m225\solver\680\wntmsci10.pro\bin\jurt.jar;g:\OOo\SRC680_m225\solver\680\wntmsci10.pro\bin\juh.jar;g:\OOo\SRC680_m225\solver\680\wntmsci10.pro\bin\jut.jar;g:\OOo\SRC680_m225\solver\680\wntmsci10.pro\bin\java_uno.jar;g:\OOo\SRC680_m225\solver\680\wntmsci10.pro\bin\OOoRunner.jar
org.openoffice.Runner -TestBase java_complex -o
complex.standalonedocumentinfo.StandaloneDocumentInfoUnitTest
StandaloneDocumentInfoTest Test01 TestHelper
TestJob: -o complex.standalonedocumentinfo.StandaloneDocumentInfoUnitTest
Searching Class: complex.standalonedocumentinfo.StandaloneDocumentInfoUnitTest
Got test: [EMAIL PROTECTED]
LOG> Log started 17.09.2007 - 13:09:47
LOG> Starting ExecuteTest01
LOG> Test01: New writer8 document "ODF_Doc" initialized.
LOG> Test01: ODF_Doc stored.
LOG> Test01: New StarOffice XML (Writer) document "OOo6_Doc" initialized.
LOG> Test01: OOo6_Doc stored.
LOG> Test01: New StarWriter 5.0 document "old_binary_Doc" initialized.
LOG> Test01: Error: Exception: com.sun.star.task.ErrorCodeIOException:
LOG> Test01 failed!
LOG> Finished ExecuteTest01
***** State for complex.standalonedocumentinfo.StandaloneDocumentInfoUnitTest
******
ExecuteTest01 - Test01 failed!
Whole unit: PASSED.FAILED
************************************************************************************
Job -o complex.standalonedocumentinfo.StandaloneDocumentInfoUnitTest failed
'---* tg_merge.mk *---'
dmake: Error: -- D:\OOEnv\4NT400\4NT.EXE: No error
#*************************************************************************
#
# OpenOffice.org - a multi-platform office productivity suite
#
# $RCSfile: makefile.mk,v $
#
# $Revision: 1.11 $
#
# last change: $Author: obo $ $Date: 2006/10/13 11:46:54 $
#
# The Contents of this file are made available subject to
# the terms of GNU Lesser General Public License Version 2.1.
#
#
# GNU Lesser General Public License Version 2.1
# =============================================
# Copyright 2005 by Sun Microsystems, Inc.
# 901 San Antonio Road, Palo Alto, CA 94303, USA
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License version 2.1, as published by the Free Software Foundation.
#
# This library 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 for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
# MA 02111-1307 USA
#
#*************************************************************************
PRJ = ..$/..$/..
TARGET = StandaloneDocumentInfoUnitTest
PRJNAME = binfilter
PACKAGE = complex$/standalonedocumentinfo
# --- Settings -----------------------------------------------------
.INCLUDE: settings.mk
#----- compile .java files -----------------------------------------
JARFILES = ridl.jar unoil.jar jurt.jar juh.jar jut.jar java_uno.jar
OOoRunner.jar
JAVAFILES =\
StandaloneDocumentInfoUnitTest.java\
StandaloneDocumentInfoTest.java\
Test01.java\
TestHelper.java\
JAVACLASSFILES = $(foreach,i,$(JAVAFILES)
$(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
#----- make a jar from compiled files ------------------------------
MAXLINELENGTH = 100000
JARCLASSDIRS = $(PACKAGE)
JARTARGET = $(TARGET).jar
JARCOMPRESS = TRUE
# --- Parameters for the test --------------------------------------
# start an office if the parameter is set for the makefile
.IF "$(OFFICE)" == ""
CT_APPEXECCOMMAND =
.ELSE
CT_APPEXECCOMMAND = -AppExecutionCommand "$(OFFICE)$/soffice
-accept=socket,host=localhost,port=8100;urp;"
.ENDIF
# test base is java complex
CT_TESTBASE = -TestBase java_complex
# test looks something like the.full.package.TestName
CT_TEST = -o $(PACKAGE:s\$/\.\).$(JAVAFILES:b)
# start the runner application
CT_APP = org.openoffice.Runner
# --- Targets ------------------------------------------------------
.INCLUDE: target.mk
RUN: run
run:
+java -cp $(CLASSPATH) $(CT_APP) $(CT_TESTBASE) $(CT_APPEXECCOMMAND)
$(CT_TEST)
/*************************************************************************
*
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: StorageUnitTest.java,v $
*
* $Revision: 1.10 $
*
* last change: $Author: obo $ $Date: 2006/10/13 11:45:51 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
*
*
* GNU Lesser General Public License Version 2.1
* =============================================
* Copyright 2005 by Sun Microsystems, Inc.
* 901 San Antonio Road, Palo Alto, CA 94303, USA
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License version 2.1, as published by the Free Software Foundation.
*
* This library 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 for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
************************************************************************/
package complex.standalonedocumentinfo;
public interface StandaloneDocumentInfoTest {
boolean test();
}
/*************************************************************************
*
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: StorageUnitTest.java,v $
*
* $Revision: 1.10 $
*
* last change: $Author: obo $ $Date: 2006/10/13 11:45:51 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
*
*
* GNU Lesser General Public License Version 2.1
* =============================================
* Copyright 2005 by Sun Microsystems, Inc.
* 901 San Antonio Road, Palo Alto, CA 94303, USA
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License version 2.1, as published by the Free Software Foundation.
*
* This library 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 for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
************************************************************************/
package complex.standalonedocumentinfo;
import complexlib.ComplexTestCase;
import com.sun.star.lang.XMultiServiceFactory;
import com.sun.star.uno.UnoRuntime;
/* Document here
*/
public class StandaloneDocumentInfoUnitTest extends ComplexTestCase {
private XMultiServiceFactory m_xMSF = null;
public String[] getTestMethodNames() {
return new String[] {
"ExecuteTest01"};
}
public String[] getTestObjectNames() {
return new String[] {"StandaloneDocumentInfoUnitTest"};
}
public void before() {
try {
m_xMSF = (XMultiServiceFactory)param.getMSF();
} catch(Exception e) {
failed( "Failed to create service factory!" );
}
if( m_xMSF ==null ) {
failed( "Failed to create service factory!" );
}
}
public void after() {
m_xMSF = null;
}
public void ExecuteTest01() {
StandaloneDocumentInfoTest aTest = new Test01 (m_xMSF, log);
assure( "Test01 failed!", aTest.test() );
}
}
/*************************************************************************
*
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: StorageUnitTest.java,v $
*
* $Revision: 1.10 $
*
* last change: $Author: obo $ $Date: 2006/10/13 11:45:51 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
*
*
* GNU Lesser General Public License Version 2.1
* =============================================
* Copyright 2005 by Sun Microsystems, Inc.
* 901 San Antonio Road, Palo Alto, CA 94303, USA
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License version 2.1, as published by the Free Software Foundation.
*
* This library 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 for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
************************************************************************/
package complex.standalonedocumentinfo;
import com.sun.star.beans.Property;
import com.sun.star.io.IOException;
import com.sun.star.io.XInputStream;
import com.sun.star.io.XOutputStream;
import complexlib.ComplexTestCase;
import com.sun.star.lang.XMultiServiceFactory;
import com.sun.star.document.XStandaloneDocumentInfo;
import com.sun.star.io.XTempFile;
import com.sun.star.frame.XLoadable;
import com.sun.star.frame.XStorable;
import com.sun.star.beans.PropertyValue;
import com.sun.star.uno.UnoRuntime;
import com.sun.star.uno.AnyConverter;
import java.util.Properties;
import java.util.Random;
import share.LogWriter;
public class Test01 implements StandaloneDocumentInfoTest {
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 String sDocTitle [] = new String [] {
"ODF_Doc", "OOo6_Doc", "old_binary_Doc" };
final String sFilterName [] = new String [] {
"writer8", "StarOffice XML (Writer)", "StarWriter 5.0" };
Object oTempFile[] = new Object[3];
Object oTextDocument[] = new Object[3];
for (int i = 0; i < 3; ++i ) {
//create a new temporary file
oTempFile[i] = m_xMSF.createInstance ( "com.sun.star.io.TempFile" );
XTempFile xTempFile = (XTempFile) UnoRuntime.queryInterface (
XTempFile.class, oTempFile[i] );
//create a text document and initiallize it
oTextDocument[i] = m_xMSF.createInstance ( "com.sun.star.text.TextDocument" );
XLoadable xLoadable = (XLoadable) UnoRuntime.queryInterface (
XLoadable.class, oTextDocument[i] );
xLoadable.initNew();
m_aTestHelper.Message ( "New " + sFilterName[i] + " document "
+ '\"' + sDocTitle[i] + '\"' + " initialized." );
//store the instance to the temporary file URL
XStorable xStorable = (XStorable) UnoRuntime.queryInterface (
XStorable.class, oTextDocument[i] );
String sURL = AnyConverter.toString ( xTempFile.getUri () );
PropertyValue aProps[] = new PropertyValue[2];
aProps[0] = new PropertyValue();
aProps[0].Name = "DocumentTitle";
aProps[0].Value = sDocTitle[i];
aProps[1] = new PropertyValue();
aProps[1].Name = "FilterName";
aProps[1].Value = sFilterName[i];
xStorable.storeToURL ( sURL, aProps );
m_aTestHelper.Message ( sDocTitle[i] + " stored." );
}
} catch ( Exception e ) {
m_aTestHelper.Error( "Exception: " + e );
return false;
}
return true;
}
}
/*************************************************************************
*
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: StorageUnitTest.java,v $
*
* $Revision: 1.10 $
*
* last change: $Author: obo $ $Date: 2006/10/13 11:45:51 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
*
*
* GNU Lesser General Public License Version 2.1
* =============================================
* Copyright 2005 by Sun Microsystems, Inc.
* 901 San Antonio Road, Palo Alto, CA 94303, USA
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License version 2.1, as published by the Free Software Foundation.
*
* This library 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 for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
************************************************************************/
package complex.standalonedocumentinfo;
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 );
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]