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]

Reply via email to