ooo-build r13212 - in trunk/scratch/sc-vba/testvba: . Logs TestDocuments TestDocuments/logs/unix TestDocuments/notwork



Author: jiaojh
Date: Tue Jul 15 06:34:22 2008
New Revision: 13212
URL: http://svn.gnome.org/viewvc/ooo-build?rev=13212&view=rev

Log:
for vba regrestion test.


Added:
   trunk/scratch/sc-vba/testvba/Logs/
   trunk/scratch/sc-vba/testvba/TestDocuments/AutoFilter.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/MiscRangeTests.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/Ranges-2.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/Ranges-3.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/Ranges.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/Shapes.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/StrConv-test.xls   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/Template.xls   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/TestAddress.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/TestCalc_Rangetest.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/TestCalc_Rangetest2.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/Window.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/bytearraystring.xls   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/dateserial.xls   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/datevalue.xls   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/format.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/AutoFilter.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/MiscRangeTests.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Ranges-2.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Ranges-3.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Ranges.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Shapes.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/StrConv-test.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Template.log   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/TestAddress.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/TestCalc_Rangetest.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/TestCalc_Rangetest2.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Window.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/bytearraystring.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/dateserial.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/datevalue.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/format.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/pagesetup.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/partition.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/range-4.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/replace.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/stringplusdouble.log
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/window2.log
   trunk/scratch/sc-vba/testvba/TestDocuments/notwork/
   trunk/scratch/sc-vba/testvba/TestDocuments/notwork/error.xls   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/notwork/objectmodule.xls   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/notwork/stringtodouble.ods   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/pagesetup.xls   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/partition.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/range-4.xls   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/replace.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/stringplusdouble.xls   (contents, props changed)
   trunk/scratch/sc-vba/testvba/TestDocuments/window2.xls   (contents, props changed)
   trunk/scratch/sc-vba/testvba/testResult.pl   (contents, props changed)
   trunk/scratch/sc-vba/testvba/testvba.cxx
Removed:
   trunk/scratch/sc-vba/testvba/TestDocuments/353254-dateserial.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/353260-datevalue.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/PageSetup.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/Ranges-4.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/TestObjectModule.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/Window2.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/bytearray_string.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/error.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/window.log
   trunk/scratch/sc-vba/testvba/TestDocuments/objectmodule.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/strconv.xls
   trunk/scratch/sc-vba/testvba/TestDocuments/stringtodouble.ods
   trunk/scratch/sc-vba/testvba/TestDocuments/stringtodouble.xls
   trunk/scratch/sc-vba/testvba/main.cxx
Modified:
   trunk/scratch/sc-vba/testvba/README
   trunk/scratch/sc-vba/testvba/makefile.mk
   trunk/scratch/sc-vba/testvba/runTests.pl

Modified: trunk/scratch/sc-vba/testvba/README
==============================================================================
--- trunk/scratch/sc-vba/testvba/README	(original)
+++ trunk/scratch/sc-vba/testvba/README	Tue Jul 15 06:34:22 2008
@@ -1,5 +1,9 @@
 to run the tests 
 
+build
+=====
+    dmake
+
 windows
 =======
    a) you can download a cygwin bash shell environment and install perl ( http://cygwin.com/setup.exe ) 
@@ -8,13 +12,17 @@
      
 [1] for the testclient the perl ( all inclusive ) bundle from ActivePerl is mor e than adeqate ( download from http://downloads.activestate.com/ActivePerl/Windows/5.8/ActivePerl-5.8.8.822-MSWin32-x86-280952.msi )
 
-   to run type 'perl ./runTest.pl $(OFFICE_PROGRAM_PATH)'
+   to run all test cases type
+   'perl ./runTest.pl $(OFFICE_PROGRAM_PATH)'
+   to run a test case type
+   'perl ./runTest.pl $(OFFICE_PROGRAM_PATH) testfilename'
 
 unix
 ====
 
 assuming perl is installed
       './runTest.pl $(OFFICE_PROGRAM_PATH)'
+    or './runTest.pl $(OFFICE_PROGRAM_PATH) testfilename' for one file test.
 
 
 Note: For either windows or unix all of the tests should pass ( and you should get a result like )

Added: trunk/scratch/sc-vba/testvba/TestDocuments/AutoFilter.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/AutoFilter.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/MiscRangeTests.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/MiscRangeTests.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/Ranges-2.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/Ranges-2.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/Ranges-3.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/Ranges-3.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/Ranges.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/Ranges.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/Shapes.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/Shapes.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/StrConv-test.xls
==============================================================================
Binary file. No diff available.

Added: trunk/scratch/sc-vba/testvba/TestDocuments/Template.xls
==============================================================================
Binary file. No diff available.

Added: trunk/scratch/sc-vba/testvba/TestDocuments/TestAddress.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/TestAddress.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/TestCalc_Rangetest.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/TestCalc_Rangetest.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/TestCalc_Rangetest2.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/TestCalc_Rangetest2.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/Window.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/Window.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/bytearraystring.xls
==============================================================================
Binary file. No diff available.

Added: trunk/scratch/sc-vba/testvba/TestDocuments/dateserial.xls
==============================================================================
Binary file. No diff available.

Added: trunk/scratch/sc-vba/testvba/TestDocuments/datevalue.xls
==============================================================================
Binary file. No diff available.

Added: trunk/scratch/sc-vba/testvba/TestDocuments/format.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/format.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/AutoFilter.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/AutoFilter.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,20 @@
+Test run started : 18/07/2007 10:56:38
+----------------------------------------------------------------
+TestAddress
+ TEST START : TestAddress
+  ITEM Assertion OK : test1 'starts with' string criteria
+  ITEM Assertion OK : test2 'not equal to' string criteria
+  ITEM Assertion OK : test3 'ends with' string criteria
+  ITEM Assertion OK : test4 field 'all' 
+  ITEM Assertion OK : test5 numeric '<15' 
+  ITEM Assertion OK : test6 numeric '>=15' 
+  ITEM Assertion OK : test7 numeric '<=12' 
+Test Results
+============
+
+Tests passed: 7
+Tests failed: 0
+
+END 'TestAddress
+ TEST OK : TestAddress
+Test run finished : 18/07/2007 10:56:44

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/MiscRangeTests.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/MiscRangeTests.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,45 @@
+Test run started : 17/07/2007 20:54:56
+----------------------------------------------------------------
+MiscRangeTests
+ TEST START : MiscRangeTests
+  ITEM Assertion OK : test 1
+  ITEM Assertion OK : test 2
+  ITEM Assertion OK : test 3
+  ITEM Assertion OK : test 4
+  ITEM Assertion OK : test 5
+  ITEM Assertion OK : test 6
+  ITEM Assertion OK : test 7
+  ITEM Assertion OK : test 8
+  ITEM Assertion OK : test 9
+  ITEM Assertion OK : test 10
+  ITEM Assertion OK : test 11
+  ITEM Assertion OK : test 12
+  ITEM Assertion OK : test 13
+  ITEM Assertion OK : test 14
+  ITEM Assertion OK : test 15
+  ITEM Assertion OK : test 16
+  ITEM Assertion OK : test 17
+  ITEM Assertion OK : test 18
+  ITEM Assertion OK : test 19
+  ITEM Assertion OK : test 20
+  ITEM Assertion OK : test 21
+  ITEM Assertion OK : test 22
+  ITEM Assertion OK : test 23
+  ITEM Assertion OK : test 24
+  ITEM Assertion OK : test 25
+  ITEM Assertion OK : test 26
+  ITEM Assertion OK : test 27
+  ITEM Assertion OK : test 28
+  ITEM Assertion OK : test 29
+  ITEM Assertion OK : test 30
+  ITEM Assertion OK : test 31
+No. tests: 31
+Summary
+=======
+Run:       31
+Passed:    31
+Failed:    0
+
+END 'MiscRangeTests
+ TEST OK : MiscRangeTests
+Test run finished : 17/07/2007 20:55:03

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Ranges-2.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Ranges-2.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,68 @@
+Test run started : 19/06/2007 11:14:01
+----------------------------------------------------------------
+ClearFormtsIssue
+ TEST START : ClearFormtsIssue
+  ITEM Assertion OK : Range.Font.Bold is: True
+  ITEM Assertion OK : Range.Font.Bold is: False
+END 'ClearFormtsIssue' Symbol
+ TEST OK : ClearFormtsIssue
+----------------------------------------------------------------
+VerticalAlignment-Issue
+ TEST START : VerticalAlignment-Issue
+  ITEM Assertion OK : -  Range.VerticalAlignment (get)
+  ITEM Assertion OK : -  Range.VerticalAlignment (set)
+  ITEM Assertion OK : -  Range.VerticalAlignment (get)
+  ITEM Assertion OK : -  Range.VerticalAlignment (get)
+  ITEM Assertion OK : -  Range.VerticalAlignment (set)
+  ITEM Assertion OK : -  Range.VerticalAlignment (get)
+  ITEM Assertion OK : -  Range.VerticalAlignment (set)
+  ITEM Assertion OK : Range.VeritcalAlignment is Null
+END 'VerticalAlignment-Issue' Symbol
+ TEST OK : VerticalAlignment-Issue
+----------------------------------------------------------------
+HorizontalAlignment-Issue
+ TEST START : HorizontalAlignment-Issue
+  ITEM Assertion OK : -  Range.HorizontalAlignment (get)
+  ITEM Assertion OK : -  Range.HorizontalAlignment (set)
+  ITEM Assertion OK : -  Range.HorizontalAlignment (get)
+  ITEM Assertion OK : -  Range.HorizontalAlignment (set)
+  ITEM Assertion OK : -  Range.HorizontalAlignment (get)
+  ITEM Assertion OK : -  Range.HorizontalAlignment (set)
+  ITEM Assertion OK : -  Range.HorizontalAlignment (get)
+  ITEM Assertion OK : -  Range.HorizontalAlignment (set)
+  ITEM Assertion OK : Range.HorizontalAlignment is Null
+END 'HorizontalAlignment-Issue' Symbol
+ TEST OK : HorizontalAlignment-Issue
+----------------------------------------------------------------
+WrapText-Issue
+ TEST START : WrapText-Issue
+  ITEM Assertion OK : -  Range.WrapText (get)
+  ITEM Assertion OK : -  Range.WrapText (get)
+  ITEM Assertion OK : Range.WrapText is Null
+END 'WrapText-Issue' Symbol
+ TEST OK : WrapText-Issue
+----------------------------------------------------------------
+FontBorderIssues
+ TEST START : FontBorderIssues
+  ITEM Assertion OK : -  = Borders.Color (getColor)
+  ITEM Assertion OK : -  = Font.Color (getColor)
+END 'FontBorderIssues' Symbol
+ TEST OK : FontBorderIssues
+----------------------------------------------------------------
+RangeSizeIssues
+ TEST START : RangeSizeIssues
+  ITEM Assertion OK : Range.Left is: 118.8432
+  ITEM Assertion OK : Range.Top is: 92.16585
+  ITEM Assertion OK : Range.Width is: 226.2
+  ITEM Assertion OK : Range.Height is: 271.5
+END 'RangeSizeIssues' Symbol
+ TEST OK : RangeSizeIssues
+----------------------------------------------------------------
+ApplicationIssues
+ TEST START : ApplicationIssues
+  ITEM Assertion OK : Range.Address is: $E$8:$G$13,$G$13:$K$19
+  ITEM Assertion OK : Range.Address is: $E$8:$G$13,$G$13:$K$19
+  ITEM Assertion OK : Application.ActiveSheet.Name: Sheet1
+END 'ApplicationIssues' Symbol
+ TEST OK : ApplicationIssues
+Test run finished : 19/06/2007 11:14:02

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Ranges-3.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Ranges-3.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,8 @@
+Test run started : 19/06/2007 11:26:09
+----------------------------------------------------------------
+MyGoalseek-Issue
+ TEST START : MyGoalseek-Issue
+  ITEM Assertion OK : Variable Range value: 15
+END 'MyGoalseek-Issue' Symbol
+ TEST OK : MyGoalseek-Issue
+Test run finished : 19/06/2007 11:26:10

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Ranges.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Ranges.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,280 @@
+Test run started : 10/03/2008 15:15:11
+----------------------------------------------------------------
+ApplicationMethods
+ TEST START : ApplicationMethods
+  ITEM Assertion OK :  Name of Workbook is: Ranges.xls
+  ITEM Assertion OK :  Address of Application.Columns is: $A:$A
+  ITEM Assertion OK :  Address of Application.Rows is: $1:$1
+  ITEM Assertion OK :  Address of Application.Range is: $1:$1,$5:$7
+  ITEM Assertion OK :  Please check manually: DefaultFilePath is: /data4/home/npower/Documents
+  ITEM Assertion OK :  Please check manually: Library Path is: /data4/home/npower/.ooo-2.0/user/basic
+  ITEM Assertion OK :  Please check manually: Template Path is: /data4/home/npower/.ooo-2.0/user/template
+  ITEM Assertion OK :  FileSeparator is /
+  ITEM Assertion OK :  Name of ActiveWorkbook is: Ranges.xls
+END 'ApplicationMethods' Symbol
+ TEST OK : ApplicationMethods
+----------------------------------------------------------------
+Insert-Issue
+ TEST START : Insert-Issue
+  ITEM Assertion OK : Insert with xlShiftToRight: 10
+END 'Insert-Issue' Symbol
+ TEST OK : Insert-Issue
+----------------------------------------------------------------
+MergeCells-Issue
+ TEST START : MergeCells-Issue
+  ITEM Assertion OK :  Range.MergeCells is True
+  ITEM Assertion FAIL : MergeCells is null: False
+  ITEM Assertion OK : RowCount after Merge: 13
+  ITEM Assertion OK :  Range.MergeCells is False
+  ITEM Assertion OK : MergeCells is null: False
+  ITEM Assertion FAIL : MergeCells of Second Area is null : False
+  ITEM Assertion FAIL : MergeCells of Ranges is Null: False
+  ITEM Assertion OK : RowCount after Merge: 7
+  ITEM Assertion OK :  Range.MergeCells is False
+  ITEM Assertion OK : MergeCells is null: False
+  ITEM Assertion OK : RowCount after Merge: 7
+END 'MergeCells-Issue' Symbol
+ TEST OK : MergeCells-Issue
+----------------------------------------------------------------
+Areas-Issue
+ TEST START : Areas-Issue
+  ITEM Assertion OK : Range Areas Count is2
+  ITEM Assertion OK : First Range Address is: $E$8:$G$13
+  ITEM Assertion OK : First Row is: 8
+  ITEM Assertion OK : First Column is: 5
+  ITEM Assertion OK : EntireRow Address is: $8:$13,$13:$19
+  ITEM Assertion OK : EntireColumn Address is: $E:$G,$G:$K
+  ITEM Assertion OK : Range Count:53
+END 'Areas-Issue' Symbol
+ TEST OK : Areas-Issue
+----------------------------------------------------------------
+Fill-Methods-Issue
+ TEST START : Fill-Methods-Issue
+  ITEM Assertion OK :  Range Value after FillDown: MyFillValue
+  ITEM Assertion OK :  Range Value after FillDown: MyFillValue
+  ITEM Assertion OK :  Range Value after FillDown: MyRightFillValue
+  ITEM Assertion OK :  Range Value after FillDown: MyBottomFillValue
+END 'Fill-Methods-Issue' Symbol
+ TEST OK : Fill-Methods-Issue
+----------------------------------------------------------------
+Range/Item-Method-Issue
+ TEST START : Range/Item-Method-Issue
+  ITEM Assertion OK :  Range of multiple columns is: $A:$A,$C:$C
+  ITEM Assertion OK :  Range of multiple rows is: $1:$1,$5:$7
+  ITEM Assertion OK :  Range of several columns is: $C:$E,$D:$D
+  ITEM Assertion OK :  Range of several rows is: $5:$8,$6:$10
+  ITEM Assertion OK :  Range of several single cells is: $C$5,$E$8
+  ITEM Assertion OK :  Range of several named ranges is: $L$1:$M$6,$E$8:$G$13,$G$13:$K$19
+  ITEM Assertion OK :  Range of a single Item Cell is: $E$21
+  ITEM Assertion OK :  Range of a single Item Cell is: $F$21
+  ITEM Assertion OK :  Range of a single Item Cell is: $F$10
+END 'Range/Item-Method-Issue' Symbol
+ TEST OK : Range/Item-Method-Issue
+----------------------------------------------------------------
+R1C1-Formulas-Issue
+ TEST START : R1C1-Formulas-Issue
+  ITEM Assertion OK :  R1C1 Range.Formula is: =IF(OR(R[-2]C[1]=0,RC[2]="YES"),"")
+  ITEM Assertion OK :  Range.Formula is: =IF(OR(J8=0,K10="YES"),"")
+END 'R1C1-Formulas-Issue' Symbol
+ TEST OK : R1C1-Formulas-Issue
+----------------------------------------------------------------
+Verify_Delete
+ TEST START : Verify_Delete
+  ITEM Assertion OK : Ranges are intersecting: $G$13
+  ITEM Assertion OK : Delete with Default: $AJ$4
+  ITEM Assertion OK : Delete with ShifttoLeft: $AJ$4
+  ITEM Assertion OK : Delete with ShiftUp: $M$22
+END 'Verify_Delete' Symbol
+ TEST OK : Verify_Delete
+----------------------------------------------------------------
+Value-Issue
+ TEST START : Value-Issue
+  ITEM Assertion OK : Value of Range is: 12.3
+  ITEM Assertion OK : Text of Range is: 12.3
+  ITEM Assertion OK : Range has Formula: False
+  ITEM Assertion OK : Cell has Formula: False
+  ITEM Assertion FAIL : Text of Range is null: False
+  ITEM Assertion OK : Range has Formula: True
+  ITEM Assertion OK : Cell has Formula: True
+  ITEM Assertion OK : Value of Cell is: 12
+  ITEM Assertion OK : Application.Calculation is : -4135
+  ITEM Assertion OK : Calculation is automated: True
+  ITEM Assertion OK : Range has Formula: True
+  ITEM Assertion OK : Value of Cell is: 16
+  ITEM Assertion OK : Text of Cell is: 16
+  ITEM Assertion OK : Text of Cell is: 16
+  ITEM Assertion OK : Range has Formula after 'ClearContents: False
+  ITEM Assertion OK : Text of Cell is: 
+  ITEM Assertion OK : Text of Cell is: 
+END 'Value-Issue' Symbol
+ TEST OK : Value-Issue
+----------------------------------------------------------------
+AutoFit issue
+ TEST START : AutoFit issue
+  ITEM Assertion OK :  Columns.AutoFit: CurrentWidth is 680
+  ITEM Assertion OK :  Rows.AutoFit: CurrentHeight is 554
+END 'AutoFit issue' Symbol
+ TEST OK : AutoFit issue
+----------------------------------------------------------------
+Selections
+ TEST START : Selections
+  ITEM Assertion OK : ActiveCell is : $E$8
+  ITEM Assertion OK : Active Cell is : $E$8
+  ITEM Assertion OK : Number of Cells in Range: 52
+  ITEM Assertion OK : Number of Cells in Range: 52
+  ITEM Assertion OK : Number of Cells in Range: 52
+END 'Selections' Symbol
+ TEST OK : Selections
+----------------------------------------------------------------
+Offset-Resize
+ TEST START : Offset-Resize
+  ITEM Assertion OK : Offset is : $G$10:$I$15,$I$15:$M$21
+  ITEM Assertion OK : Offset is : $G$7:$I$12,$I$12:$M$18
+  ITEM Assertion OK :   Resized Range is : $A$20:$D$23
+END 'Offset-Resize' Symbol
+ TEST OK : Offset-Resize
+----------------------------------------------------------------
+Ranges-Address
+ TEST START : Ranges-Address
+  ITEM Assertion OK : Range Address is: $E$8:$G$13,$G$13:$K$19
+  ITEM Assertion OK : Range Address is: $E8:$G13,$G13:$K19
+  ITEM Assertion OK : Range Address is: E$8:G$13,G$13:K$19
+  ITEM Assertion OK : Range Address is: R8C5:R13C7,R13C7:R19C11
+  ITEM Assertion FAIL : Range Address is: R8C5:R13C7,R13C7:R19C11
+  ITEM Assertion OK : Range Address is: R8C5:R13C7,R13C7:R19C11
+  ITEM Assertion OK : Range Address is: R[6]C[3]:R[11]C[5],R[11]C[5]:R[17]C[9]
+  ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$E$8:$G$13,$G$13:$K$19
+END 'Ranges-Address' Symbol
+ TEST OK : Ranges-Address
+----------------------------------------------------------------
+Range-Address
+ TEST START : Range-Address
+  ITEM Assertion OK : Range Address is: $E$8:$G$13
+  ITEM Assertion OK : Range Address is: $E8:$G13
+  ITEM Assertion OK : Range Address is: E$8:G$13
+  ITEM Assertion OK : Range Address is: R8C5:R13C7
+  ITEM Assertion FAIL : Range Address is: R8C5:R13C7
+  ITEM Assertion OK : Range Address is: R8C5:R13C7
+  ITEM Assertion OK : Range Address is: R[6]C[3]:R[11]C[5]
+  ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$E$8:$G$13
+END 'Range-Address' Symbol
+ TEST OK : Range-Address
+----------------------------------------------------------------
+Column-Address
+ TEST START : Column-Address
+  ITEM Assertion OK : Range Address is: $F$8:$F$13
+  ITEM Assertion OK : Range Address is: $F8:$F13
+  ITEM Assertion OK : Range Address is: F$8:F$13
+  ITEM Assertion OK : Range Address is: R8C6:R13C6
+  ITEM Assertion FAIL : Range Address is: R8C6:R13C6
+  ITEM Assertion OK : Range Address is: R8C6:R13C6
+  ITEM Assertion OK : Range Address is: R[6]C[4]:R[11]C[4]
+  ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$F$8:$F$13
+END 'Column-Address' Symbol
+ TEST OK : Column-Address
+----------------------------------------------------------------
+Row-Address
+ TEST START : Row-Address
+  ITEM Assertion OK : Range Address is: $E$9:$G$9
+  ITEM Assertion OK : Range Address is: $E9:$G9
+  ITEM Assertion OK : Range Address is: E$9:G$9
+  ITEM Assertion OK : Range Address is: R9C5:R9C7
+  ITEM Assertion FAIL : Range Address is: R9C5:R9C7
+  ITEM Assertion OK : Range Address is: R9C5:R9C7
+  ITEM Assertion OK : Range Address is: R[7]C[3]:R[7]C[5]
+  ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$E$9:$G$9
+END 'Row-Address' Symbol
+ TEST OK : Row-Address
+----------------------------------------------------------------
+SingleCell-Address
+ TEST START : SingleCell-Address
+  ITEM Assertion OK : Range Address is: $F$9
+  ITEM Assertion OK : Range Address is: $F9
+  ITEM Assertion OK : Range Address is: F$9
+  ITEM Assertion OK : Range Address is: R9C6
+  ITEM Assertion FAIL : Range Address is: R9C6
+  ITEM Assertion OK : Range Address is: R9C6
+  ITEM Assertion OK : Range Address is: R[7]C[4]
+  ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$F$9
+END 'SingleCell-Address' Symbol
+ TEST OK : SingleCell-Address
+----------------------------------------------------------------
+Heights and Widths
+ TEST START : Heights and Widths
+  ITEM Assertion OK : Range RowHeight is 40
+  ITEM Assertion OK : Range ColumnWidth is 50
+  ITEM Assertion OK : Range Height is 240
+  ITEM Assertion OK : Range Width is 795
+  ITEM Assertion OK : Range RowHeight is 50
+  ITEM Assertion OK : Range ColumnWidth is 50
+  ITEM Assertion OK : Range Height is 300
+  ITEM Assertion OK : Range Width is 795
+  ITEM Assertion OK : RowHeight is null: True
+  ITEM Assertion OK : ColumnWidth is null: True
+END 'Heights and Widths' Symbol
+ TEST OK : Heights and Widths
+----------------------------------------------------------------
+RangeRowColumn-Issue
+ TEST START : RangeRowColumn-Issue
+  ITEM Assertion OK : Row is: 8
+  ITEM Assertion OK : Column is: 5
+  ITEM Assertion OK : EntireRow.Columns.Count = 256
+  ITEM Assertion OK : EntireColumn.Rows.Count = 131072
+END 'RangeRowColumn-Issue' Symbol
+ TEST OK : RangeRowColumn-Issue
+----------------------------------------------------------------
+Replace-Issue
+ TEST START : Replace-Issue
+  ITEM Assertion OK : Value after Replace: YourValue
+  ITEM Assertion OK : Value after Replace: YourValue
+  ITEM Assertion OK : Value after Replace: ReplaceValue
+  ITEM Assertion OK : Value after Replace: New ReplaceValue
+  ITEM Assertion OK : Value after Replace: New ReplaceValue
+  ITEM Assertion OK : Value after Replace: New Replace
+  ITEM Assertion OK : Value after Replace: 
+END 'Replace-Issue' Symbol
+ TEST OK : Replace-Issue
+----------------------------------------------------------------
+Hidden-Issue
+ TEST START : Hidden-Issue
+  ITEM Assertion OK : -  Range.Rows.Hidden (set)
+  ITEM Assertion OK : -  Range.Rows.Hidden (get)
+  ITEM Assertion OK : -  Range.Rows.Item(1).Hidden (set)
+  ITEM Assertion OK : -  Range.Rows.Item(1).Hidden (get)
+  ITEM Assertion OK : -  Range.Columns.Hidden (set)
+  ITEM Assertion OK : -  Range.Columns.Hidden (get)
+  ITEM Assertion OK : -  Range.Columns.Item(1).Hidden (set)
+  ITEM Assertion OK : -  Range.Columns.Item(1).Hidden (get)
+END 'Hidden-Issue' Symbol
+ TEST OK : Hidden-Issue
+----------------------------------------------------------------
+End issue
+ TEST START : End issue
+  ITEM Assertion OK : -  = $E$48
+  ITEM Assertion OK : -  = $E$1
+  ITEM Assertion OK : -  = $E$3
+  ITEM Assertion OK : -  = $A$8
+  ITEM Assertion OK : -  = $B$8
+  ITEM Assertion OK : -  = $IV$8
+  ITEM Assertion OK : -  = $Z$8
+END 'End issue' Symbol
+ TEST OK : End issue
+----------------------------------------------------------------
+Outline issue
+ TEST START : Outline issue
+  ITEM Assertion OK : -  Range.clearOutline - please check visually
+  ITEM Assertion OK : -  Range.AutoOutline - please check visually
+  ITEM Assertion OK : -  Range.AutoOutline - please check visually
+END 'Outline issue' Symbol
+ TEST OK : Outline issue
+----------------------------------------------------------------
+Validation
+ TEST START : Validation
+  ITEM Assertion OK : Validation Input Message is : Attention!
+  ITEM Assertion OK : Validation Input Message is : Enter an integer from five to ten
+  ITEM Assertion OK : Validation Error Title is : You must enter a number from five to ten
+  ITEM Assertion OK : Validation Error Message is : An Error occured
+  ITEM Assertion OK : Validation Error Title is : Microsoft Excel
+END 'Validation' Symbol
+ TEST OK : Validation
+Test run finished : 10/03/2008 15:15:13

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Shapes.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Shapes.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,77 @@
+Test run started : 10/16/2007 05:25:21 PM
+BEGIN Shapes_Collection_Behaviour
+ TEST START : Shapes_Collection_Behaviour
+  ITEM Assertion OK : Name of indexed shape should be 'Sheet2Shape1' 
+  ITEM Assertion OK : Name of indexed shape should be 'Sheet2Shape2' 
+ TEST Success. : Shapes_Collection_Behaviour
+END Shapes_Collection_Behaviour
+BEGIN Shapes_Select_Item
+ TEST START : Shapes_Select_Item
+  ITEM Assertion OK : Correctly selected shape through Range
+  ITEM Assertion OK : Correctly selected shape through Item
+  ITEM Assertion OK : Needs to be visually checked. Is there a line on the document?
+  ITEM Assertion OK : Needs to be visually checked. Are All Shapes Selected?
+ TEST Success. : Shapes_Select_Item
+END Shapes_Select_Item
+BEGIN Shapes_Fill
+ TEST START : Shapes_Fill
+  ITEM Assertion OK : correctly set visibility of shape fill
+  ITEM Assertion OK : correctly set transparency of shape line
+  ITEM Assertion OK : correctly set forecolor of shape fill
+  ITEM Assertion FAIL : correctly set backcolor of shape fill
+  ITEM Assertion OK : the success of the TwoColorGradient method needs to be verified visually!
+  ITEM Assertion OK : correctly set forecolor of shape fill
+  ITEM Assertion FAIL : correctly set forecolor of shape fill
+ TEST Success. : Shapes_Fill
+END  Shapes_Fill
+BEGIN Shapes_Line
+ TEST START : Shapes_Line
+  ITEM Assertion FAIL : correctly set weight of shape line
+  ITEM Assertion OK : correctly set visibility of shape line
+  ITEM Assertion OK : correctly set transparency of shape line
+  ITEM Assertion OK : correctly set dash style of shape line
+  ITEM Assertion OK : correctly set dash style of shape line
+  ITEM Assertion OK : correctly set forecolor of shape line
+  ITEM Assertion FAIL : correctly set backcolor of shape line
+ TEST Success. : Shapes_Line
+END  Shapes_Line
+BEGIN Shapes_TextFrame
+ TEST START : Shapes_TextFrame
+  ITEM Assertion OK : correctly set Autosize of Shape TextFrame
+ TEST Success. : Shapes_TextFrame
+END  Shapes_TextFrame
+BEGIN Shapes_SimpleGeometry
+ TEST START : Shapes_SimpleGeometery
+  ITEM Assertion OK : shape height should be 47.0425168477155 and got 46.9984222363199
+  ITEM Assertion OK : shape width should be 101.467710269751 and got 101.423615658355
+  ITEM Assertion OK : shape left should be 68.5574761223637 and got 68.5417279658754
+  ITEM Assertion OK : shape top should be 42.0251943291216 and got 42.0094461726333
+  ITEM Assertion OK : shape rotation should be 0 and got 0
+  ITEM Assertion OK : shape rotation should be 25 and got 25
+  ITEM Assertion OK : shape incrementrotation should be 50 and got 50
+  ITEM Assertion OK : shape incrementleft should be 70.6834602404119 and got 70.6677120839236
+  ITEM Assertion OK : shape incrementtop should be 91.262986503119 and got 91.2472383466307
+ TEST Success. : Shapes_SimpleGeometery
+END Shapes_SimpleGeometry
+BEGIN Shapes_Range
+ TEST START : Shapes_Range
+  ITEM Assertion OK : expected Sheets(2).Shapes.Range(1) to contain 1 element, it contains 1
+  ITEM Assertion OK : expected Sheets(2).Shapes.Range(1) to return Sheet2Shape1 got Sheet2Shape1
+  ITEM Assertion OK : expected Sheets(2).Shapes.Range(Sheet2Shape3) to contain 1 element, it contains 1
+  ITEM Assertion OK : expected Sheets(2).Shapes.Range(Sheet2Shape3) to return Sheet2Shape3 got Sheet2Shape3
+  ITEM Assertion OK : expected Sheets(2).Shapes.Range(Array(3, 1) to contain 2 elements, it contains 2
+  ITEM Assertion OK : expected Sheets(2).Shapes.Range(Array(3, 1) to return concated element/shape names Sheet2Shape3Sheet2Shape1 and got Sheet2Shape3Sheet2Shape1
+  ITEM Assertion OK : expected Sheets(2).Shapes.Range(Array('Sheet2Shape3', 1, 'Sheet2Shape2')) to contain 3 elements, it contains 3
+  ITEM Assertion OK : expected Sheets(2).Shapes.Range(Array('Sheet2Shape3', 1, 'Sheet2Shape2')) to return concated element/shape names Sheet2Shape3Sheet2Shape1Sheet2Shape2 and got Sheet2Shape3Sheet2Shape1Sheet2Shape2
+ TEST Success. : Shapes_Range
+END Shapes_Range
+BEGIN Shapes_ShapeRange
+ TEST START : Shapes_ShapeRange
+  ITEM Assertion OK : ShapeRange.IncrementLeft shp1.left should be 90.6677120839236 and got 90.6519627935771
+  ITEM Assertion OK : ShapeRange.IncrementLeft shp2.left should be 240.02518299054 and got 240.009433700193
+  ITEM Assertion OK : ShapeRange.IncrementTop shp1.Top should be 111.247238346631 and got 111.231489056284
+  ITEM Assertion OK : ShapeRange.IncrementTop shp2.Top should be 65.0708633026228 and got 65.0551140122763
+  ITEM Assertion OK : ShapeRange.IncrementRotation shp1.Rotation should be 70 and got 70
+  ITEM Assertion OK : ShapeRange.IncrementRotation shp2.Rotation should be 20 and got 20
+END Shapes_ShapeRange
+Test run finished : 10/16/2007 05:25:22 PM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/StrConv-test.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/StrConv-test.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,9 @@
+Test run started : 05/29/2008 02:51:03 PM
+BEGIN StrConv
+ TEST START : Test StrConv function
+  ITEM Assertion OK : Converts the string to uppercase characters:ABC EFG HIJ
+  ITEM Assertion OK : Converts the string to lowercase characters:abc efg hij
+  ITEM Assertion OK : Converts the first letter of every word in string to uppercase:Abc Efg Hij
+ TEST OK : Test StrConv function
+END  StrConv
+Test run finished : 05/29/2008 02:51:03 PM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Template.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Template.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,14 @@
+Test run started : 2008ï07ï10 11:57:05
+----------------------------------------------------------------
+TestCaseName
+ TEST START : TestCaseName
+  ITEM Assertion OK : Something has been done.
+Test Results
+============
+
+Tests passed: 1
+Tests failed: 0
+
+END 'TestCaseName
+ TEST OK : TestCaseName
+Test run finished : 2008ï07ï10 11:57:05

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/TestAddress.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/TestAddress.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,62 @@
+Test run started : 17/07/2007 20:56:04
+----------------------------------------------------------------
+TestAddress
+ TEST START : TestAddress
+  ITEM Assertion OK : test1 Range('e3:f3') A1 style addressing
+  ITEM Assertion OK : test2 Range('e3:f3') R1C1 style addressing
+  ITEM Assertion OK : test3 Range ('e:f')  A1 style addressing
+  ITEM Assertion OK : test4 Range ('e:f')  R1C1 style addressing
+  ITEM Assertion OK : test5 Columns A1 style addressing
+  ITEM Assertion OK : test6 Columns R1C1 style addressing
+  ITEM Assertion OK : test7 Columns(3) A1 style addressing
+  ITEM Assertion OK : test8 Columns(3) R1C1 style addressing
+  ITEM Assertion OK : test9 Columns('e') A1 style addressing
+  ITEM Assertion OK : test10 Columns('e') R1C1 style addressing
+  ITEM Assertion OK : test11 Columns('b:d') A1 style addressing
+  ITEM Assertion OK : test12 Columns('b:d') R1C1 style addressing
+  ITEM Assertion OK : test13 Range('c1:g10').Columns A1 style addressing
+  ITEM Assertion OK : test14 Range('c1:g10').Columns R1C1 style addressing
+  ITEM Assertion OK : test15 Range('c1:g10').Columns(1) A1 style addressing
+  ITEM Assertion OK : test16 Range('c1:g10').Columns(1) R1C1 style addressing
+  ITEM Assertion OK : test17 Range('c1:g10').Columns('a') A1 style addressing
+  ITEM Assertion OK : test18 Range('c1:g10').Columns('a') R1C1 style addressing
+  ITEM Assertion OK : test19 Range('c1:g10').Columns('c') A1 style addressing
+  ITEM Assertion OK : test20 Range('c1:g10').Columns('c') R1C1 style addressing
+  ITEM Assertion OK : test21 Range('c1:g10').Columns('x:z') A1 style addressing
+  ITEM Assertion OK : test22 Range('c1:g10').Columns('x:z') R1C1 style addressing
+  ITEM Assertion OK : test23 Range('c1:g10').Columns(30) A1 style addressing
+  ITEM Assertion OK : test24 Range('c1:g10').Columns(30) R1C1 style addressing
+  ITEM Assertion OK : test25 Worksheets('Sheet2').Cells(1, 1) A1 style addressing
+  ITEM Assertion OK : test26 Worksheets('Sheet2').Cells(1, 1) A1 style addressing, RowAddressAbsolute is false 
+  ITEM Assertion OK : test27 Worksheets('Sheet2').Cells(1, 1) A1 style addressing, ColAddressAbsolute is false 
+  ITEM Assertion OK : test28 Worksheets('Sheet2').Cells(1, 1) R1C1 style addressing
+  ITEM Assertion OK : test29 Worksheets('Sheet2').Range('A1:E5').EntireColumn A1 style addressing
+  ITEM Assertion OK : test30 Worksheets('Sheet2').Range('A1').EntireColumn A1 style addressing
+  ITEM Assertion OK : test31 Worksheets('Sheet2').Range('A1:E5').EntireRow A1 style addressing
+  ITEM Assertion OK : test32 Worksheets('Sheet2').Range('A1') A1 style addressing
+  ITEM Assertion OK : test33 Worksheets('Sheet2').Range('IV65536').EntireRow A1 style addressing
+  ITEM Assertion OK : test34 Worksheets('Sheet2').Range('IU2:IV65536') A1 style addressing
+  ITEM Assertion OK : test35 Range('c1:g10').Columns('x:z') R1C1 style addressing
+  ITEM Assertion OK : test36 Worksheets('Sheet2').Range('A1') A1 style addressing
+  ITEM Assertion OK : test37 Worksheets('Sheet2').Range('A1:E5').EntireColumn A1 style addressing
+  ITEM Assertion OK : test38 Worksheets('Sheet2').Range('10:12') A1 style addressing
+  ITEM Assertion OK : test39 Worksheets('Sheet2').Range('10:12') R1C1 style addressing
+  ITEM Assertion OK : test40 Range('Sheet3!A1:B4') A1 style addressing
+  ITEM Assertion OK : test41 Range('Sheet3!A1,B1,D4:F20') A1 style addressing
+  ITEM Assertion OK : test42 Range('g20:h40').Columns('c:c')
+  ITEM Assertion OK : test43 Range('g20:h40').Columns('c:f')
+  ITEM Assertion OK : test44 Range('g20:h40').Columns(-1)
+  ITEM Assertion OK : test45 Range('c4:g10').Rows(-1)
+  ITEM Assertion OK : test46 Range('a2:b4').Rows('1:1')
+  ITEM Assertion OK : test47 Range('a2:b4').Rows('1:2')
+  ITEM Assertion OK : test48 Range('a2:b4').Rows('2:2')
+  ITEM Assertion OK : test49 Range('a2:b4').Rows('2:3')
+Test Results
+============
+
+Tests passed: 49
+Tests failed: 0
+
+END 'TestAddress
+ TEST OK : TestAddress
+Test run finished : 17/07/2007 20:56:05

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/TestCalc_Rangetest.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/TestCalc_Rangetest.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,60 @@
+Test run started : 30/05/2007 15:59:40
+BEGIN TestCalc
+ TEST START : RangeTest2
+  ITEM Assertion OK : -  Range("D15").Row 
+  ITEM Assertion OK : -  WorkSheet("D15").Range.Row 
+  ITEM Assertion OK : -  Range("D15").Column 
+  ITEM Assertion OK : -  Worksheet.Range("D15").Column 
+  ITEM Assertion OK : -  Range("D1").EntireRow.Valuer 
+  ITEM Assertion OK : -  Range("D1").EntireRow.Valuer 
+  ITEM Assertion OK : -  Range("D1").EntireRow.Columns.Count 
+  ITEM Assertion OK : -  Range("D1").EntireColumn.Rows.Count 
+  ITEM Assertion OK : -  Range("D15").ClearContent
+  ITEM Assertion OK : -  Range("M1:N2").Rows.Hidden (set)
+  ITEM Assertion OK : -  Range("M1:N2").Rows.Hidden (get)
+  ITEM Assertion OK : -  Range("M1:N2").Rows(1).Hidden (set)
+  ITEM Assertion OK : -  Range("M1:N2").Rows(1).Hidden (get)
+  ITEM Assertion OK : -  Range("M1:N2").Columns.Hidden (set)
+  ITEM Assertion OK : -  Range("M1:N2").Columns.Hidden (get)
+  ITEM Assertion OK : -  Range("M1:N2").Columns(1).Hidden (set)
+  ITEM Assertion OK : -  Range("M1:N2").Columns(1).Hidden (get)
+  ITEM Assertion OK : -  Range("B38").Orientation (get)
+  ITEM Assertion OK : -  Range("B38").Orientation (set)
+  ITEM Assertion OK : -  Range("B38").Orientation (set = xlDownward)
+  ITEM Assertion OK : -  Range("B38").Orientation (set)
+  ITEM Assertion OK : -  Range("B38").Orientation (set = xlUpward)
+  ITEM Assertion OK : -  Range("B38").Orientation (set)
+  ITEM Assertion OK : -  Range("B38").Orientation (set = xlVertical)
+  ITEM Assertion OK : -  Range("B38").Orientation (set)
+  ITEM Assertion OK : -  Range("B38").Orientation (set = xlVertical)
+  ITEM Assertion OK : -  Range("B39").WrapText (get)
+  ITEM Assertion OK : -  Range("B39").WrapText (set)
+  ITEM Assertion OK : -  Range("B39").WrapText (set)
+  ITEM Assertion OK : -  Range("E39").MergeCells (get)
+  ITEM Assertion OK : -  Range("F39").MergeCells (get)
+  ITEM Assertion OK : -  Range("E39").MergeCells (set)
+  ITEM Assertion FAIL : -  Range("F39").MergeCells (set)
+  ITEM Assertion OK : -  Range("E39").MergeCells (set)
+  ITEM Assertion OK : -  Range("F39").MergeCells (set)
+  ITEM Assertion OK : -  Range("C41:C42").Replace  MatchCase:=True 
+  ITEM Assertion OK : -  Range("C41:C42").Replace  MatchCase:=True 
+  ITEM Assertion OK : -  Range("D41:D42").Replace  MatchCase:=False 
+  ITEM Assertion OK : -  Range("B39").VerticalAlignment (get)
+  ITEM Assertion OK : -  Range("B39").VerticalAlignment (set)
+  ITEM Assertion OK : -  Range("B39").VerticalAlignment (get)
+  ITEM Assertion OK : -  Range("B39").VerticalAlignment (get)
+  ITEM Assertion OK : -  Range("B39").VerticalAlignment (set)
+  ITEM Assertion OK : -  Range("B39").VerticalAlignment (get)
+  ITEM Assertion OK : -  Range("B39").VerticalAlignment (set)
+  ITEM Assertion OK : -  Range("B39").HorizontalAlignment (get)
+  ITEM Assertion OK : -  Range("B39").HorizontalAlignment (set)
+  ITEM Assertion OK : -  Range("B39").HorizontalAlignment (get)
+  ITEM Assertion OK : -  Range("B39").HorizontalAlignment (set)
+  ITEM Assertion OK : -  Range("B39").HorizontalAlignment (get)
+  ITEM Assertion OK : -  Range("B39").HorizontalAlignment (set)
+  ITEM Assertion OK : -  Range("B39").HorizontalAlignment (get)
+  ITEM Assertion OK : -  Range("B39").HorizontalAlignment (set)
+  ITEM FAIL (RangeTest2)
+ TEST Not succesfully completed : RangeTest2
+END   TestCalc
+Test run finished : 30/05/2007 15:59:42

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/TestCalc_Rangetest2.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/TestCalc_Rangetest2.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,65 @@
+Test run started : 10/03/2008 15:15:19
+BEGIN TestCalc
+ TEST START : RangeTest3
+  ITEM Assertion OK : - setFormulaR1C1
+  ITEM Assertion OK : - getFormulaR1C1
+  ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
+  ITEM Assertion OK : - Range.Copy(Range("I10"))
+  ITEM Assertion OK : PasteSpecial Paste:=xlPasteValues
+  ITEM Assertion OK : PasteSpecial Paste:=xlPasteFormulas
+  ITEM Assertion OK : PasteSpecial Paste:=xlPasteFormats
+  ITEM Assertion OK : PasteSpecial 
+  ITEM Assertion OK : PasteSpecial SkipBlanks:=True
+  ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationAdd
+  ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationSubtract
+  ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationMultiply
+  ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationDivide
+  ITEM Assertion OK : PasteSpecial Transpose:=True
+  ITEM Assertion FAIL : ActiveWorkbook.FileFormat
+  ITEM Assertion OK : ActiveWorkbook.Name
+  ITEM Assertion OK : ActiveWorkbook.FullName und ActiveWorkbook.Path
+  ITEM Assertion FAIL : -  = ActiveWorkbook.Colors(3) set
+  ITEM Assertion OK : -  = ActiveWorkbook.ResetColors
+  ITEM Assertion OK : -  = ActiveWorkbook.Colors(3) get
+  ITEM Assertion OK : -  = Range("K22").End (xlDown)
+  ITEM Assertion OK : -  = Range("K22").End (xlUo)
+  ITEM Assertion OK : -  = Range("K22").End (xlToLeft)
+  ITEM Assertion OK : -  = Range("K22").End (xlRight)
+  ITEM Assertion OK : -  ActiveSpreadsheet.Next
+  ITEM Assertion OK : -  ActiveSpreadsheet.Next
+  ITEM Assertion OK : -  ActiveSpreadsheet.Previous
+  ITEM Assertion OK : -  ActiveSpreadsheet.Previous
+  ITEM Assertion OK : -  Range("J4:J11").AutoFilter field:=1, Criteria1:="x"
+  ITEM Assertion OK : -  Range("J4:J11").AutoFilter field:=1, Criteria1:="<>"
+  ITEM Assertion OK : -  Range("J4:J11").AutoFilter field:=1, Criteria1:="="
+  ITEM Assertion OK : -  Range("J4:J11").AutoFilter 
+  ITEM Assertion OK : -  ActiveSheet.Resize.Select
+  ITEM Assertion OK : -  Application.GoTo Reference:="R8C2"
+  ITEM Assertion FAIL : -  Application.GoTo Reference:="R[8]C[2]"
+  ITEM Assertion OK : -  Application.GoTo Reference:="R8C2"
+  ITEM Assertion OK : -  Range.Group - please check visually
+  ITEM Assertion OK : -  Range.Group - please check visually
+  ITEM Assertion OK : -  Range.Ungroup- please check visually
+  ITEM Assertion OK : -  Range.Ungroup - please check visually
+  ITEM Assertion OK : -  Range.Group - please check visually
+  ITEM Assertion OK : -  Range.Group - please check visually
+  ITEM Assertion OK : -  Range.clearOutline - please check visually
+  ITEM Assertion OK : -  Range.AutoOutline - please check visually
+  ITEM Assertion OK : -  Range.AutoOutline - please check visually
+  ITEM Assertion OK : -  ActiveSheet.UsedRange.Select
+  ITEM Assertion OK : -  Range("A13").AddIndent
+  ITEM Assertion OK : -  Range("A13").IndentLevel set
+  ITEM Assertion OK : -  Range("A13").IndentLevel get
+  ITEM Assertion OK : -  Range("A13").IndentLevel get
+  ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
+  ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
+  ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
+  ITEM Assertion OK : - Range.Calculate
+  ITEM Assertion OK : Worksheet.Calculate
+  ITEM Assertion OK : - Application.Calculate
+  ITEM Assertion OK : Global.Calculate
+  ITEM Assertion OK : Calculation set
+  ITEM FAIL (RangeTest3)
+ TEST Not succesfully completed : RangeTest3
+END   TestCalc
+Test run finished : 10/03/2008 15:15:21

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Window.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/Window.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,46 @@
+Test run started : 05/29/2008 02:55:00 PM
+----------------------------------------------------------------
+ TEST START : Window-Issue
+  ITEM Assertion OK : Window.Left is: 0 (Test only applies to maximized Window)
+  ITEM Assertion OK : Window.Top is: 21 (Test only applies to maximized Window)
+  ITEM Assertion OK : Window.Width is: 1280 (Test only applies to maximized Window)
+  ITEM Assertion OK : Window.Height is: 752 (Test only applies to maximized Window)
+  ITEM Assertion OK : Window.ScrollColumn is: 100
+  ITEM Assertion OK : Window.ScrollColumn is: 1
+  ITEM Assertion OK : Window.ScrollRow is: 100
+  ITEM Assertion OK : Window.ScrollRow is: 1
+  ITEM Assertion OK : Window.LargeScroll(Down): ScrollRow is: 94 (Test may only apply to maximized Window)
+  ITEM Assertion OK : Window.LargeScroll(Up): ScrollRow is: 1
+  ITEM Assertion OK : Window.LargeScroll(ToRight): ScrollColumn is: 58 (Test may only apply to maximized Window)
+  ITEM Assertion OK : Window.LargeScroll(ToLeft): ScrollColumn is: 1
+  ITEM Assertion OK : Window.SmallScroll(ToRight): ScrollColumn is: 4 (Test may only apply to maximized Window)
+  ITEM Assertion OK : Window.SmallScroll(ToLeft): ScrollColumn is: 1
+  ITEM Assertion OK : Window.DisplayWorkBookTabs is: False
+  ITEM Assertion OK : Window.DisplayWorkBookTabs is: True
+  ITEM Assertion OK : Window.DisplayVerticalScrollBar is: True
+  ITEM Assertion OK : Window.DisplayVerticalScrollBar is: False
+  ITEM Assertion OK : Window.DisplayHorizontalScrollBar is: False
+  ITEM Assertion OK : Window.DisplayHorizontalScrollBar is: True
+  ITEM Assertion OK : Window.DisplayHeadings is: False
+  ITEM Assertion OK : Window.DisplayHeadings is: True
+  ITEM Assertion OK : Window.DisplayOutline is: False
+  ITEM Assertion OK : Window.DisplayOutline is: True
+  ITEM Assertion OK : Window.Visible is: False
+  ITEM Assertion OK : Window.Visible is: True
+  ITEM Assertion OK : Window.Caption is: MyCaption
+  ITEM Assertion OK : Pane.ScrollColumn is: 100
+  ITEM Assertion OK : Pane.ScrollColumn is: 1
+  ITEM Assertion OK : Pane.ScrollRow is: 100
+  ITEM Assertion OK : Pane.ScrollRow is: 1
+  ITEM Assertion OK : Pane.LargeScroll(Down): ScrollRow is: 94 (Test may only apply to maximized Window)
+  ITEM Assertion OK : Pane.LargeScroll(Up): ScrollRow is: 1
+  ITEM Assertion OK : Pane.LargeScroll(ToRight): ScrollColumn is: 58 (Test may only apply to maximized Window)
+  ITEM Assertion OK : Pane.LargeScroll(ToLeft): ScrollColumn is: 1
+  ITEM Assertion OK : Pane.SmallScroll(ToRight): ScrollColumn is: 4 (Test may only apply to maximized Window)
+  ITEM Assertion OK : Pane.SmallScroll(ToLeft): ScrollColumn is: 1
+  ITEM Assertion OK : Window Selection: $A$2:$D$5
+  ITEM Assertion OK : ActiveSheet name of Window: Sheet1
+  ITEM Assertion OK : Window ActiveCell: $A$1
+END 'Window-Issue' Symbol
+ TEST OK : Window-Issue
+Test run finished : 05/29/2008 02:55:01 PM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/bytearraystring.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/bytearraystring.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,8 @@
+Test run started : 05/29/2008 02:25:58 PM
+BEGIN Bytearray To String
+ TEST START : Test the conversion between bytearray and string
+  ITEM Assertion OK :  The number of byte is:6
+  ITEM Assertion OK : the return string is: abc
+ TEST OK : Test the conversion between bytearray and string
+END  Bytearray To String
+Test run finished : 05/29/2008 02:25:58 PM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/dateserial.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/dateserial.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,9 @@
+Test run started : 01/24/2008 01:24:50 PM
+BEGIN DateSerial
+ TEST START : Test DateSerial function
+  ITEM Assertion OK : the return date is: 06/15/1999
+  ITEM Assertion OK : the return date is: 06/15/1999
+  ITEM Assertion OK : the return date is: 06/15/1999
+ TEST OK : Test DateSerial function
+END  DateSerial
+Test run finished : 01/24/2008 01:24:50 PM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/datevalue.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/datevalue.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,8 @@
+Test run started : 01/24/2008 01:24:41 PM
+BEGIN DateValue
+ TEST START : Test DateValue function
+  ITEM Assertion OK : the return date is: 02/12/1969
+  ITEM Assertion OK : the return date is: 01/21/2008
+ TEST OK : Test DateValue function
+END  DateValue
+Test run finished : 01/24/2008 01:24:41 PM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/format.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/format.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,82 @@
+Test run started : 01/29/2008 02:38:27 PM
+BEGIN Format
+ TEST START : Test Predefined_Datetime_Format_Sample function
+  ITEM Assertion OK : General Date: 1/6/98
+  ITEM Assertion OK : Long Date: Tuesday, January 06, 1998
+  ITEM Assertion FAIL : Medium Date: 06-Jan-1998
+  ITEM Assertion OK : Short Date: 1/6/98
+  ITEM Assertion FAIL : Long Time: 05:08:06 PM
+  ITEM Assertion OK : Medium Time: 05:08 PM
+  ITEM Assertion OK : Short Time: 17:08
+ TEST OK : Test Predefined_Datetime_Format_Sample function
+ TEST START : Test Predefined_Number_Format_Sample function
+  ITEM Assertion OK : General Number: 562486.2356
+  ITEM Assertion OK : General Number: -3456.789
+  ITEM Assertion OK : General Number: 213.21
+  ITEM Assertion OK : Currency: $562,486.24
+  ITEM Assertion OK : Fixed: 0.20
+  ITEM Assertion OK : Standard: 562,486.24
+  ITEM Assertion OK : Percent: 75.21%
+  ITEM Assertion OK : Scientific: 5.62E+05
+  ITEM Assertion OK : Scientific: -3.46E+03
+  ITEM Assertion OK : Yes/No: No
+  ITEM Assertion OK : Yes/No: Yes
+  ITEM Assertion OK : True/False: False
+  ITEM Assertion OK : True/False: True
+  ITEM Assertion OK : On/Off: Off
+  ITEM Assertion OK : On/Off: On
+ TEST OK : Test Predefined_Number_Format_Sample function
+ TEST START : Test Custom_Datetime_Format_Sample function
+  ITEM Assertion FAIL : c: 1/6/98 05:08:06 PM
+  ITEM Assertion OK : dddddd: Tuesday, January 06, 1998
+  ITEM Assertion OK : mm-dd-yyyy: 01-06-1998
+  ITEM Assertion OK : d: 6
+  ITEM Assertion OK : dd: 06
+  ITEM Assertion OK : ddd: Tue
+  ITEM Assertion OK : dddd: Tuesday
+  ITEM Assertion OK : ddddd: 1/6/98
+  ITEM Assertion OK : h: 5
+  ITEM Assertion OK : hh: 05
+  ITEM Assertion OK : n: 8
+  ITEM Assertion OK : nn: 08
+  ITEM Assertion OK : m: 1
+  ITEM Assertion OK : mm: 01
+  ITEM Assertion OK : mmm: Jan
+  ITEM Assertion OK : mmmm: January
+  ITEM Assertion FAIL : q: Q1
+  ITEM Assertion OK : s: 6
+  ITEM Assertion OK : ss: 06
+  ITEM Assertion FAIL : ttttt: 05:08:06 AM
+  ITEM Assertion OK : hh:mm:ss AM/PM: 05:08:06 PM
+  ITEM Assertion FAIL : hh:mm:ss am/pm: 05:08:06 PM
+  ITEM Assertion FAIL : hh:mm:ss A/P: 05:08:06 p
+  ITEM Assertion OK : hh:mm:ss a/p: 05:08:06 p
+  ITEM Assertion OK : hh:mm:ss: 17:08:06
+  ITEM Assertion OK : ww: 2
+  ITEM Assertion OK : w: 3
+  ITEM Assertion OK : y: 6
+  ITEM Assertion OK : yy: 98
+  ITEM Assertion OK : yyyy: 1998
+ TEST OK : Test Custom_Datetime_Format_Sample function
+ TEST START : Test Custom_Number_Format_Sample function
+  ITEM Assertion OK : 00.0000: 23.6750
+  ITEM Assertion OK : 00.00: 23.68
+  ITEM Assertion OK : 00000: 02658
+  ITEM Assertion OK : 00.00: 2658.00
+  ITEM Assertion OK : ##.####: 23.675
+  ITEM Assertion OK : ##.##: 23.68
+  ITEM Assertion OK : #,###.##: 12,345.25
+  ITEM Assertion OK : ##.00%: 25.00%
+  ITEM Assertion OK : #,###: 1,000,000
+  ITEM Assertion OK : ######E-###: 109838E-5
+  ITEM Assertion OK : $#,###.##: $2,345.25
+  ITEM Assertion OK : ##.###\%: .25%
+ TEST OK : Test Custom_Number_Format_Sample function
+ TEST START : Test Custom_Text_Format_Sample function
+  ITEM Assertion FAIL : \* \*@@@@@: *VBA*VBAVBAVBAVBAVBA
+  ITEM Assertion FAIL : \*&&\*&&&&: VBA
+  ITEM Assertion OK : <: vba
+  ITEM Assertion OK : >: VBA
+ TEST OK : Test Custom_Text_Format_Sample function
+END  Format
+Test run finished : 01/29/2008 02:38:27 PM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/pagesetup.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/pagesetup.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,10 @@
+Test run started : 05/09/2008 02:39:21 PM
+BEGIN PageSetup
+ TEST START : Test PrintArea function
+  ITEM Assertion OK : The print ranges: $A$1:$E$22
+  ITEM Assertion OK : The print ranges: $A$1:$E$2,$A$4:$E$6
+  ITEM Assertion OK : Print the whole sheet: 
+  ITEM Assertion OK : Print the whole sheet: 
+ TEST OK : Test PrintArea function
+END  PageSetup
+Test run finished : 05/09/2008 02:39:21 PM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/partition.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/partition.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,11 @@
+Test run started : 12/10/2007 11:26:43 AM
+BEGIN Partition
+ TEST START : Test Partition function
+  ITEM Assertion OK : the number 20 occurs in the range:20:24
+  ITEM Assertion OK : the number 20 occurs in the range: 20: 20
+  ITEM Assertion OK : the number 120 occurs in the range:100:   
+  ITEM Assertion OK : the number -5 occurs in the range:   : -1
+  ITEM Assertion OK : the number 2 occurs in the range: 2: 3
+ TEST OK : Test Partition function
+END  Partition
+Test run finished : 12/10/2007 11:26:43 AM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/range-4.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/range-4.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,16 @@
+Test run started : 2008ï06ï19 17:14:57
+----------------------------------------------------------------
+ShowDetail-Issue
+ TEST START : ShowDetail-Issue
+  ITEM Assertion OK :  Range.ShowDetail is True
+  ITEM Assertion OK :  Range.ShowDetail is False
+END 'ShowDetail-Issue' Symbol
+ TEST OK : ShowDetail-Issue
+----------------------------------------------------------------
+RangeMerged-Issue
+ TEST START : RangeMerged-Issue
+  ITEM Assertion OK :  Range.RangeMerged is $F$2:$H$5
+  ITEM Assertion OK :  The first address of Range.RangeMerged is $F$2
+END 'RangeMerged-Issue' Symbol
+ TEST OK : RangeMerged-Issue
+Test run finished : 2008ï06ï19 17:14:57

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/replace.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/replace.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,14 @@
+Test run started : 11/20/2007 05:15:30 PM
+BEGIN Replace
+ TEST START : Test Replace function
+  ITEM Assertion OK : common string:aefefdBc
+  ITEM Assertion OK : expression string:aefefdef
+  ITEM Assertion OK : binanary compare:aefefdBc
+  ITEM Assertion OK : text compare:aefefdef
+  ITEM Assertion OK : text compare:aefefdef
+  ITEM Assertion OK : start = 3:cefdBc
+  ITEM Assertion OK : count = 2: aefefdBc
+  ITEM Assertion FAIL : start = 1, count = 0, not support in Unix: aefefdBc
+ TEST OK : Test Replace function
+END  Replace
+Test run finished : 11/20/2007 05:15:30 PM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/stringplusdouble.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/stringplusdouble.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,62 @@
+Test run started : 05/29/2008 02:51:22 PM
+BEGIN String Plus Double
+ TEST START : double = string + double
+The next compute raises error: s = null, d = null, r = s + d
+  ITEM Assertion OK : s = null, d = null, r = s + d .The result is: -1
+  ITEM Assertion OK : s = null, d = null, r = s & d .The result is: 0
+The next compute raises error: s = null, d = 20, r = s + d
+  ITEM Assertion OK : s = null, d = 20, r = s + d .The result is: -1
+  ITEM Assertion OK : s = null, d = 20, r = s & d .The result is: 20
+  ITEM Assertion OK : s = '10', d = null, r = s + d .The result is: 10
+  ITEM Assertion OK : s = '10', d = null, r = s & d .The result is: 100
+  ITEM Assertion OK : s = '10', d = 20, r = s + d .The result is: 30
+  ITEM Assertion OK : s = '10', d = 20, r = s & d .The result is: 1020
+The next compute raises error: s = 'abc', d = null, r = s + d
+  ITEM Assertion OK : s = 'abc', d = null, r = s + d .The result is: -1
+The next compute raises error: s = 'abc', d = null, r = s & d
+  ITEM Assertion OK : s = 'abc', d = null, r = s & d .The result is: -1
+The next compute raises error: s = 'abc', d = 20, r = s + d
+  ITEM Assertion OK : s = 'abc', d = 20, r = s + d .The result is: -1
+The next compute raises error: s = 'abc', d = 20, r = s & d
+  ITEM Assertion OK : s = 'abc', d = 20, r = s & d .The result is: -1
+ TEST OK : double = string + double
+ TEST START : string = string + double
+The next compute raises error: s = null, d = null, r = s + d
+  ITEM Assertion OK : s = null, d = null, r = s + d .The result is: -1
+  ITEM Assertion OK : s = null, d = null, r = s & d .The result is: 0
+The next compute raises error: s = null, d = 20, r = s + d
+  ITEM Assertion OK : s = null, d = 20, r = s + d .The result is: -1
+  ITEM Assertion OK : s = null, d = 20, r = s & d .The result is: 20
+  ITEM Assertion OK : s = '10', d = null, r = s + d .The result is: 10
+  ITEM Assertion OK : s = '10', d = null, r = s & d .The result is: 100
+  ITEM Assertion OK : s = '10', d = 20, r = s + d .The result is: 30
+  ITEM Assertion OK : s = '10', d = 20, r = s & d .The result is: 1020
+The next compute raises error: s = 'abc', d = null, r = s + d
+  ITEM Assertion OK : s = 'abc', d = null, r = s + d .The result is: -1
+  ITEM Assertion OK : s = 'abc', d = null, r = s & d .The result is: abc0
+The next compute raises error: s = 'abc', d = 20, r = s + d
+  ITEM Assertion OK : s = 'abc', d = 20, r = s + d .The result is: -1
+  ITEM Assertion OK : s = 'abc', d = 20, r = s & d .The result is: abc20
+ TEST OK : string = string + double
+ TEST START : double = string + string
+The next compute raises error: s = null, d = null, r = s + d
+  ITEM Assertion OK : s = null, d = null, r = s + d .The result is: -1
+The next compute raises error: s = null, d = null, r = s & d
+  ITEM Assertion OK : s = null, d = null, r = s & d .The result is: -1
+  ITEM Assertion OK : s = null, d = 20, r = s + d .The result is: 20
+  ITEM Assertion OK : s = null, d = 20, r = s & d .The result is: 20
+  ITEM Assertion OK : s = '10', d = null, r = s + d .The result is: 10
+  ITEM Assertion OK : s = '10', d = null, r = s & d .The result is: 10
+  ITEM Assertion OK : s = '10', d = 20, r = s + d .The result is: 1020
+  ITEM Assertion OK : s = '10', d = 20, r = s & d .The result is: 1020
+The next compute raises error: s = 'abc', d = null, r = s + d
+  ITEM Assertion OK : s = 'abc', d = null, r = s + d .The result is: -1
+The next compute raises error: s = 'abc', d = null, r = s & d
+  ITEM Assertion OK : s = 'abc', d = null, r = s & d .The result is: -1
+The next compute raises error: s = 'abc', d = 20, r = s + d
+  ITEM Assertion OK : s = 'abc', d = 20, r = s + d .The result is: -1
+The next compute raises error: s = 'abc', d = 20, r = s & d
+  ITEM Assertion OK : s = 'abc', d = 20, r = s & d .The result is: -1
+ TEST OK : double = string + string
+END  String Plus Double
+Test run finished : 05/29/2008 02:51:22 PM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/window2.log
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/TestDocuments/logs/unix/window2.log	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,45 @@
+Test run started : 05/29/2008 02:55:48 PM
+BEGIN Window2
+ TEST START : Test Window.SplitRow
+  ITEM Assertion OK : Test SplitColumn: 2
+  ITEM Assertion FAIL : Test SplitRow: 5
+  ITEM Assertion FAIL : Test SplitVertical: 64.5090003183026
+  ITEM Assertion OK : Test SplitHorizontal: 502.570118758869
+  ITEM Assertion OK : Test SplitVertical: 242.283803521067
+  ITEM Assertion OK : Test SplitRow: 19
+  ITEM Assertion OK : Test SplitHorizontal: 242.283803521067
+  ITEM Assertion OK : Test SplitColumn: 1
+  ITEM Assertion FAIL : Test SplitRow: 8
+  ITEM Assertion OK : Test SplitColumn: 10
+  ITEM Assertion OK : Test SplitColumn: 0
+  ITEM Assertion OK : Test SplitRow: 0
+ TEST OK : Test Window.SplitRow
+TEST ERROR - no test begun: Test Window.SplitRow
+ TEST START : Test Window.DisplayGridlines
+  ITEM Assertion OK : Test gridlines are on
+  ITEM Assertion OK : Test gridlines are off
+ TEST OK : Test Window.DisplayGridlines
+ TEST START : Test Window.DisplayHeadings
+  ITEM Assertion OK : Test Headings are on
+  ITEM Assertion OK : Test Headings are off
+ TEST OK : Test Window.DisplayHeadings
+ TEST START : Test Window.Visibility
+  ITEM Assertion OK : Window is visible
+ TEST FAIL : Test Window.Visibility (hit error handler).
+ TEST START : Test Window.FreezePanes
+  ITEM Assertion OK : Test no panes frozen
+  ITEM Assertion OK : Test panes frozen at center
+  ITEM Assertion OK : Test panes frozen at split
+ TEST OK : Test Window.FreezePanes
+ TEST START : Test Window.View
+ TEST OK : Test Window.View
+ TEST START : Test Window.Zoom
+  ITEM Assertion OK : Test zoom=100%
+  ITEM Assertion OK : Test zoom=150%
+ TEST OK : Test Window.Zoom
+ TEST START : Test Windows.Count
+  ITEM Assertion OK : Windows Count: 1
+  ITEM Assertion OK : Application.Windows Count: 1
+ TEST OK : Test Windows.Count
+END  Window2
+Test run finished : 05/29/2008 02:55:48 PM

Added: trunk/scratch/sc-vba/testvba/TestDocuments/notwork/error.xls
==============================================================================
Binary file. No diff available.

Added: trunk/scratch/sc-vba/testvba/TestDocuments/notwork/objectmodule.xls
==============================================================================
Binary file. No diff available.

Added: trunk/scratch/sc-vba/testvba/TestDocuments/notwork/stringtodouble.ods
==============================================================================
Binary file. No diff available.

Added: trunk/scratch/sc-vba/testvba/TestDocuments/pagesetup.xls
==============================================================================
Binary file. No diff available.

Added: trunk/scratch/sc-vba/testvba/TestDocuments/partition.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/partition.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/range-4.xls
==============================================================================
Binary file. No diff available.

Added: trunk/scratch/sc-vba/testvba/TestDocuments/replace.xls
==============================================================================
Binary files (empty file) and trunk/scratch/sc-vba/testvba/TestDocuments/replace.xls	Tue Jul 15 06:34:22 2008 differ

Added: trunk/scratch/sc-vba/testvba/TestDocuments/stringplusdouble.xls
==============================================================================
Binary file. No diff available.

Added: trunk/scratch/sc-vba/testvba/TestDocuments/window2.xls
==============================================================================
Binary file. No diff available.

Modified: trunk/scratch/sc-vba/testvba/makefile.mk
==============================================================================
--- trunk/scratch/sc-vba/testvba/makefile.mk	(original)
+++ trunk/scratch/sc-vba/testvba/makefile.mk	Tue Jul 15 06:34:22 2008
@@ -36,7 +36,7 @@
 PRJ=..$/..$/..$/..$/
 
 PRJNAME=sc
-TARGET=testvbac++
+TARGET=testvba
 ENABLE_EXCEPTIONS=TRUE
 
 # --- Settings -----------------------------------------------------
@@ -54,11 +54,12 @@
 # ------------------------------------------------------------------
 
 SLOFILES= \
-		$(SLO)$/main.obj \
+		$(SLO)$/testvba.obj \
  
 
 # --- Targets ------------------------------------------------------
-APP1TARGET=     testclient
+
+APP1TARGET=testclient
 APP1OBJS= $(SLOFILES)
 
 APP1STDLIBS=\
@@ -67,10 +68,10 @@
         $(CPPULIB) \
         $(CPPUHELPERLIB) \
         $(COMPHELPERLIB) \
-	$(TOOLSLIB) \
-        $(UNOTOOLSLIB) 
+	    $(TOOLSLIB) \
+        $(UNOTOOLSLIB) \
 
 #APP1OBJS= $(OBJ)$/testclient.obj
-
 .INCLUDE :	target.mk
 
+

Modified: trunk/scratch/sc-vba/testvba/runTests.pl
==============================================================================
--- trunk/scratch/sc-vba/testvba/runTests.pl	(original)
+++ trunk/scratch/sc-vba/testvba/runTests.pl	Tue Jul 15 06:34:22 2008
@@ -4,15 +4,41 @@
 use Cwd;
 use Cwd 'abs_path';
 
+$numArgs = $#ARGV + 1;
+print "thanks, you gave me $numArgs command-line arguments.\n";
+
+foreach $argnum (0 .. $#ARGV) {
+   print "$ARGV[$argnum]\n";
+}
+
+
 my $binDir = abs_path( dirname($0) );
 
 my $sysDir = "unix";
 my $fileSep = "/";
 my $theResult;
 my $officepath = shift || die "please specify path to office installation program dir";
+my $DocName = shift || "";
+my $programpath = "$officepath/program";
+my $basiclibrarypath = "$officepath/basis3.0/program";
+my $urelibpath = "$officepath/ure/lib";
 my $binext = "";
 my $testDocDir = "$binDir/TestDocuments";
 my $testLogDir = "$binDir/Logs";
+my $testclientname = "testclient";
+my $buildtestclient = "../../../../unxlngi6.pro/bin/$testclientname";
+
+# test testclient
+if ( -e "$buildtestclient" )
+{
+    print "use the latest build\n";
+    system( "cp $buildtestclient ." );
+}
+elsif ( !( -e "$testclientname" ) )
+{
+    print "$testclientname do not exist\n";
+    exit;
+}
 
 # test for uname
 system("uname");
@@ -31,7 +57,7 @@
       # windows under cygwin
       $sysDir = "win" ;
       $tmpPath=$ENV{"PATH"};
-      $ENV{"PATH"} = "$tmpPath:$officepath";
+      $ENV{"PATH"} = "$officepath:$tmpPath";
       $testDocDir=`cygpath -m  $testDocDir`;
       uri_escape($testDocDir);
       # hacky windows url construction
@@ -48,8 +74,19 @@
    }
    else{
       # unix we need to find sal etc. ( from the office path )
-      my $tmpPATH = $ENV{"LD_LIBRARY_PATH"};
-      $ENV{"LD_LIBRARY_PATH"} = "$tmpPATH:$officepath";
+      my $tmpPath=$ENV{"PATH"};
+      $ENV{"PATH"} = "$programpath:$basiclibrarypath:$urelibpath/../bin:$tmpPath";
+      $tmpPATH = $ENV{"LD_LIBRARY_PATH"};
+      $ENV{"LD_LIBRARY_PATH"} = "$officepath:$programpath:$basiclibrarypath:$urelibpath:$urelibpath../bin/javaldx:$urelibpath/../bin:$tmpPATH";
+      $ENV{"LD_LIBRARY_PATH"} = "$officepath:$programpath:$basiclibrarypath:$urelibpath:$tmpPATH";
+      my $testPath = $ENV{"LD_LIBRARY_PATH"};
+      print "$testPath\n";
+      $testPath = $ENV{"PATH"};
+      print "$testPath\n";
+      $ENV{"STAR_RESOURCEPATH"} = "$officepath/basis3.0/program/resource";
+      $ENV{"SAL_ALLOW_LINKOO_SYMLINKS"} = "1";
+      $testPath = $ENV{"LANG"};
+      print "$testPath\n";
    }
 }
 else
@@ -63,10 +100,22 @@
 
 # the exe needs system paths or urls ( urls are by far the least troublesome )
 
-my $runCmd = "$binDir/testclient$binext $testDocDir $testLogDir";
-my $analyseCmd = "perl $binDir/testResults.pl $binDir/Logs $binDir/TestDocuments/logs/$sysDir";
+my $runCmd = "";
+my $analyseCmd = "";
+
+if ( "$DocName" eq "" )
+{
+    $runCmd = "$binDir/testclient$binext $testDocDir $testLogDir";
+    $analyseCmd = "perl $binDir/testResults.pl $binDir/Logs $binDir/TestDocuments/logs/$sysDir";
+}
+else
+{
+    $runCmd = "$binDir/testclient$binext $testDocDir $testLogDir $testDocDir/$DocName";
+    $analyseCmd = "perl $binDir/testResult.pl $binDir/Logs $binDir/TestDocuments/logs/$sysDir $DocName";
+}
 print "runCmd = $runCmd\n";
 
+system ("rm -rf $testLogDir/*");
 my $status = system( $runCmd );
 print "analyseCmd = $analyseCmd\n";
 $status = system( $analyseCmd );

Added: trunk/scratch/sc-vba/testvba/testResult.pl
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/testResult.pl	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,171 @@
+#!/usr/bin/perl -w
+use File::Temp qw/ tempfile tempdir /;
+use File::Basename;
+use File::stat;
+use File::Copy;
+
+my $binDir = dirname($0);
+my $timestampclean= "perl $binDir/timestampsClean.pl";
+#sub gen_diff($)
+
+sub testLog
+{
+   # 2 No Log to compare against
+   # 1 Log passed 
+   # 0 Log failed
+   my $result = 0;
+   my $testfile = shift;
+   my $dirtocheck = shift;
+   my $filename = basename($testfile);
+   $filename = "$logdir/$filename"; 
+   print "processing $testfile $filename\n";
+   if ( -f $filename )  {
+      my $tmpFile;
+      $dir = tempdir( CLEANUP => 1 );
+      ($fh, $tmpFile) = tempfile( DIR => $dir );
+      close($fh);
+      #
+      my $status = system("diff -U 0 -p $testfile $filename |  $timestampclean > $tmpFile");
+      my $info = stat($tmpFile) or die "no $tmpFile: $!";
+      if ( ($status >>=8) == 0 &&  ( $info->size == 0)  ) {
+         #print "diff worked size is 0\n";
+         $result = 1; 
+      }
+      elsif ( ($status >>=8) == 0 &&  ( $info->size > 0)  ) 
+      {
+         #print "diff worked size > 0\n";
+         $result = 0;
+      }
+      else
+      {
+         #print "diff failed size > 0\n";
+         $result = 0;
+      }
+   }
+   else
+   {
+      #print "not file > 0\n";
+      $result = 2;
+   }
+   #print "diff result = $result\n";
+   return $result;
+}
+
+if ( ! ( $logdir = shift @ARGV ) ) {
+    print STDERR "No logdir specified!\n";
+    usage();
+    exit 1;
+}
+
+if ( ! ( $testlogdir = shift @ARGV ) ) {
+    print STDERR "No testdocuments dir to compare against specified!\n";
+    usage();
+    exit 1;
+}
+
+if ( !(-d $logdir ) ) {
+   print STDERR "No output directory $logdir exists, please create it!!!!\n";
+   exit 1;
+}
+if ( !(-d $testlogdir ) ) {
+   print STDERR "the directory containing the logfiles to compare against \"$logdir\" does not exist\n";
+    usage();
+    exit 1;
+}
+print "logdir $logdir\n";
+print "testlogdir $testlogdir\n";
+sub filter_crud($)
+{
+    my $a = shift;
+
+    $a =~ /~$/ && return;
+    $a =~ /\#$/ && return;
+    $a =~ /\.orig$/ && return;
+    $a =~ /unxlng.*\.pro$/ && return;
+    $a =~ /wntmsc.*\.pro$/ && return;
+    $a =~ /.swp$/ && return;
+    $a =~ /POSITION/ && return;
+    $a =~ /ReadMe/ && return;
+    $a =~ /.tmp$/ && return;
+    $a =~ /\.svn/ && return;
+    $a eq 'CVS' && return;
+    $a eq '.' && return;
+    $a eq '..' && return;
+
+    return $a;
+}
+sub slurp_dir($);
+
+sub slurp_dir($)
+{
+    my $dir = shift;
+    my ($dirhandle, $fname);
+    my @files = ();
+
+    opendir ($dirhandle, $dir) || die "Can't open $dir";
+    while ($fname = readdir ($dirhandle)) {
+	$fname = filter_crud($fname);
+	defined $fname || next;
+#	if (-d "$dir/$fname") {
+#	    push @files, slurp_dir("$dir/$fname");
+#	} else 
+        {
+	    push @files, "$dir/$fname";
+	}
+    }
+    closedir ($dirhandle);
+
+    return @files;
+}
+
+if (-d $testlogdir) {
+    push @files, slurp_dir($testlogdir);
+}
+
+my $processed = 0;
+my $passed = 0;
+my @passedTests=();
+my @skippedTests=();
+my @failedTests=();
+
+my $failureCmd="";
+my $testfile = shift @ARGV;
+my $testfilepath = "$testlogdir/$testfile";
+$testfilepath =~ s/\.xls/\.log/;
+print "$testfilepath\n";
+for $a (@files) {
+   $filename = $a;
+   if ( "$testfilepath" eq "$filename" )
+   { 
+   $processed++;
+   my $testcase = $a;  
+   $testcase =~ s/\.log/\.xls/;
+   my $result = testLog( $a, $logdir );
+   if ( $result == 0 ) {
+      push @failedTests, basename($testcase);
+      if ( $failureCmd eq "" ) { $failureCmd = " diff -up $a $logdir "; }
+   }
+   elsif ( $result == 2 ) {
+      #print "skipped $a\n";
+      push @skippedTests, $testcase;
+   } 
+   else {
+      $passed++;
+      push @passedTests, $testcase;
+      #print "Test document for $a \t \t passed. \n"; 
+   }
+   } 
+}
+my $compared= passedTests+@failedTests;
+my $skip = @skippedTests;
+print "skipped $skip test-cases(s)\n";
+print "compared $compared test-case documents\n";
+print "\t \t $passed tests $ passedTests\n";
+if ( @failedTests > 0 ) {
+   print "the following test-case documents failed, please examine the logs manually\n";
+   
+   for $a (@failedTests) {
+      print "\t$a\n";
+   }
+   print "e.g. $failureCmd\n"
+}

Added: trunk/scratch/sc-vba/testvba/testvba.cxx
==============================================================================
--- (empty file)
+++ trunk/scratch/sc-vba/testvba/testvba.cxx	Tue Jul 15 06:34:22 2008
@@ -0,0 +1,286 @@
+#include "cppuhelper/bootstrap.hxx"
+
+#include <com/sun/star/beans/Property.hpp>
+#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/beans/XPropertySetInfo.hpp>
+#include <com/sun/star/container/XNameAccess.hpp>
+#include <com/sun/star/container/XNameContainer.hpp>
+#include <com/sun/star/frame/XComponentLoader.hpp>
+#include <com/sun/star/lang/XMultiComponentFactory.hpp>
+#include <com/sun/star/sheet/XSpreadsheet.hpp>
+#include <com/sun/star/sheet/XSpreadsheetDocument.hpp>
+#include <com/sun/star/util/XCloseable.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
+#include <com/sun/star/ucb/XSimpleFileAccess.hpp>
+#include <com/sun/star/script/provider/XScriptProviderSupplier.hpp>
+#include <com/sun/star/document/XTypeDetection.hpp>
+
+#include <tools/urlobj.hxx>
+#include <osl/file.hxx>
+
+#include <memory>
+#include <iostream>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::sheet;
+
+using ::com::sun::star::beans::Property;
+using ::com::sun::star::beans::PropertyValue;
+using ::com::sun::star::beans::XPropertySet;
+using ::com::sun::star::beans::XPropertySetInfo;
+using ::com::sun::star::container::XNameContainer;
+using ::com::sun::star::lang::XComponent;
+using ::com::sun::star::lang::XMultiComponentFactory;
+using ::com::sun::star::frame::XComponentLoader;
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::Sequence;
+using ::com::sun::star::uno::UNO_QUERY;
+using ::com::sun::star::uno::UNO_QUERY_THROW;
+using ::com::sun::star::uno::XComponentContext;
+using ::com::sun::star::uno::XInterface;
+using ::com::sun::star::ucb::XSimpleFileAccess;
+using ::com::sun::star::document::XTypeDetection;
+using ::rtl::OUString;
+
+using ::std::auto_ptr;
+
+const OUString EXTN = rtl::OUString::createFromAscii(".xls"); 
+
+OUString convertToURL( const OUString& rPath )
+{
+        rtl::OUString aURL;
+        INetURLObject aObj;
+        aObj.SetURL( rPath );
+        bool bIsURL = aObj.GetProtocol() != INET_PROT_NOT_VALID;
+        if ( bIsURL )
+                aURL = rPath;
+        else
+		{
+                osl::FileBase::getFileURLFromSystemPath( rPath, aURL );
+				if ( aURL.equals( rPath ) )
+					throw uno::RuntimeException( rtl::OUString::createFromAscii( "could'nt convert " ).concat( rPath ).concat( rtl::OUString::createFromAscii( " to a URL, is it a fully qualified path name? " ) ), Reference< uno::XInterface >() );
+		}
+		return aURL;
+}
+
+OUString ascii(const sal_Char* cstr)
+{
+	return OUString::createFromAscii(cstr);
+}
+
+const sal_Char* getStr(const OUString& ou)
+{
+    return OUStringToOString(ou, RTL_TEXTENCODING_UTF8).getStr();
+}
+
+
+int usage( const char* pName )
+{
+	std::cerr << "usage: " << pName << "<path to testdocument dir> <output_directory>" << std::endl;
+        return 1;
+
+}
+
+class TestVBA
+{
+private:
+	Reference< XComponentContext >  mxContext;
+	Reference< XMultiComponentFactory > mxMCF;
+	Reference< XComponentLoader > mxCompLoader;
+	Reference< XSimpleFileAccess > mxSFA;
+	rtl::OUString msOutDirPath;
+protected:
+public:
+	TestVBA( const Reference< XComponentContext >&  _xContext, 
+		const Reference< XMultiComponentFactory >& _xMCF, 
+		const Reference< XComponentLoader >& _xCompLoader, 
+		const rtl::OUString& _outDirPath ) : mxContext( _xContext ), mxMCF( _xMCF ), 
+mxCompLoader( _xCompLoader ), msOutDirPath( convertToURL( _outDirPath  ) ) 
+	{
+		mxSFA.set( mxMCF->createInstanceWithContext( rtl::OUString::createFromAscii( "com.sun.star.ucb.SimpleFileAccess" ), mxContext), uno::UNO_QUERY_THROW );
+	} 
+
+	rtl::OUString getLogLocation() throw (  beans::UnknownPropertyException,  lang::IllegalArgumentException, lang::WrappedTargetException,  uno::Exception ) 
+	{
+		rtl::OUString sLogLocation;
+		Reference< XPropertySet > pathSettings( mxMCF->createInstanceWithContext( rtl::OUString::createFromAscii( "com.sun.star.comp.framework.PathSettings" ), mxContext), uno::UNO_QUERY_THROW );
+		pathSettings->getPropertyValue( rtl::OUString::createFromAscii( "Work" ) ) >>= sLogLocation;
+		sLogLocation = sLogLocation.concat( rtl::OUString::createFromAscii( "/" ) ).concat( rtl::OUString::createFromAscii( "HelperAPI-test.log" ) );
+		return sLogLocation;
+	}
+	rtl::OUString getLogLocationWithName( OUString fileName ) throw (  beans::UnknownPropertyException,  lang::IllegalArgumentException, lang::WrappedTargetException,  uno::Exception ) 
+    {
+		//rtl::OUString sLogLocation( rtl::OUString::createFromAscii( getenv("HOME") ) );
+		rtl::OUString sLogLocation;
+		Reference< XPropertySet > pathSettings( mxMCF->createInstanceWithContext( rtl::OUString::createFromAscii( "com.sun.star.comp.framework.PathSettings" ), mxContext), uno::UNO_QUERY_THROW );
+		pathSettings->getPropertyValue( rtl::OUString::createFromAscii( "Work" ) ) >>= sLogLocation;
+		sLogLocation = sLogLocation.concat( rtl::OUString::createFromAscii( "/" ) ).concat( fileName.copy ( 0, fileName.lastIndexOf( EXTN )  ) + rtl::OUString::createFromAscii( ".log" ) );
+		return sLogLocation;
+    }
+
+	void init() 
+	{
+		// blow away previous logs?
+	}
+
+	void proccessDocument( const rtl::OUString& sUrl ) 
+	{
+			if ( !mxSFA->isFolder( sUrl ) && sUrl.endsWithIgnoreAsciiCaseAsciiL( ".xls", 4 ) ) 
+				
+			{
+				try 
+				{
+					OSL_TRACE( "processing %s",  rtl::OUStringToOString( sUrl, RTL_TEXTENCODING_UTF8 ).getStr() );
+					// Loading the wanted document
+					Sequence< PropertyValue > propertyValues(1);
+					propertyValues[0].Name = rtl::OUString::createFromAscii( "Hidden" );
+					propertyValues[0].Value <<= sal_False;
+
+                    rtl::OUString sfileUrl = convertToURL( sUrl );
+					Reference< uno::XInterface > xDoc =	
+						mxCompLoader->loadComponentFromURL( sfileUrl, rtl::OUString::createFromAscii( "_blank" ), 0, propertyValues);
+
+					OUString logFileURL = convertToURL( getLogLocation() );
+					try
+					{
+						Reference< script::provider::XScriptProviderSupplier > xSupplier( xDoc, uno::UNO_QUERY_THROW ) ; 
+						if ( mxSFA->exists( logFileURL ) )	
+							mxSFA->kill( logFileURL );
+					
+						Reference< script::provider::XScriptProvider > xProv = xSupplier->getScriptProvider();
+                        Reference< script::provider::XScript > xScript;
+						try
+                        {
+						    xScript = xProv->getScript( rtl::OUString::createFromAscii( "vnd.sun.star.script:Standard.TestMacros.Main?language=Basic&location=document" ));
+                        } catch ( uno::Exception& e )
+                        {
+                            try
+                            {
+						        xScript = xProv->getScript( rtl::OUString::createFromAscii( "vnd.sun.star.script:Standard.testMacro.Main?language=Basic&location=document" ));
+                            } catch ( uno::Exception& e2 )
+                            {
+						        xScript = xProv->getScript( rtl::OUString::createFromAscii( "vnd.sun.star.script:Standard.testMain.Main?language=Basic&location=document" ));
+                            }
+                        }
+						OSL_TRACE("Got script for doc %s", rtl::OUStringToOString( sUrl, RTL_TEXTENCODING_UTF8 ).getStr() );
+						Sequence< uno::Any > aArgs;
+						Sequence< sal_Int16 > aOutArgsIndex;
+						Sequence< uno::Any > aOutArgs;
+						
+						xScript->invoke(aArgs, aOutArgsIndex, aOutArgs); 
+		
+						OUString fileName = sUrl.copy ( sUrl.lastIndexOf( '/' ) );
+						OUString newLocation = msOutDirPath + fileName.copy ( 0, fileName.lastIndexOf( EXTN )  ) + rtl::OUString::createFromAscii( ".log" );
+                        try
+                        {
+	    					mxSFA->move( logFileURL, newLocation );
+		    				OSL_TRACE("new logfile location is %s ", rtl::OUStringToOString( newLocation, RTL_TEXTENCODING_UTF8 ).getStr() );
+                        }
+                        catch ( uno::Exception& e )
+                        {
+                            logFileURL = convertToURL( getLogLocationWithName( fileName ) );
+	    					mxSFA->move( logFileURL, newLocation );
+		    				OSL_TRACE("new logfile location is %s ", rtl::OUStringToOString( newLocation, RTL_TEXTENCODING_UTF8 ).getStr() );
+                        }
+						
+					}
+					catch ( uno::Exception& e )
+					{
+						std::cerr << "Caught exception " << rtl::OUStringToOString( e.Message, RTL_TEXTENCODING_UTF8 ).getStr() << std::endl;
+					}
+
+					// interface is supported, otherwise use XComponent.dispose
+					Reference< util::XCloseable > xCloseable ( xDoc, uno::UNO_QUERY );
+		
+					if ( xCloseable.is() ) 
+					{
+                        // will close application. and only run a test case for 3.0
+                        // maybe it is a bug. yes, it is a bug
+                        // if only one frame and model, click a button which related will colse.
+                        // will make a crash. It related with window listener.
+                        // so, for run all test cases, it should not close the document at this moment.
+						xCloseable->close(sal_False);
+					} 
+					else 
+					{
+						Reference< XComponent > xComp( xDoc, uno::UNO_QUERY_THROW );
+                        // same as close.
+						xComp->dispose();
+					}
+				}
+				catch( uno::Exception& e ) 
+				{
+					std::cerr << "Caught exception " << rtl::OUStringToOString( e.Message, RTL_TEXTENCODING_UTF8 ).getStr() << std::endl;
+				}
+		                
+			}
+	}
+
+	void traverse( const rtl::OUString& sFileDirectory ) 
+	{
+		rtl::OUString sFileDirectoryURL = convertToURL( sFileDirectory );	
+		if ( !mxSFA->isFolder( sFileDirectoryURL) ) 
+		{
+			throw lang::IllegalArgumentException( rtl::OUString::createFromAscii( "not a directory: ").concat( sFileDirectoryURL ), Reference<uno::XInterface>(), 1 );
+		}	
+		// Getting all files and directories in the current directory
+		Sequence<OUString> entries = mxSFA->getFolderContents( sFileDirectoryURL, sal_False );
+	   	 
+		// Iterating for each file and directory
+		for ( sal_Int32 i = 0; i < entries.getLength(); ++i ) 
+		{
+            proccessDocument( entries[ i ] );
+		}
+	}	
+};
+
+void tryDispose( Reference< uno::XInterface > xIF, const char* sComp )
+{
+	Reference< lang::XComponent > xComponent( xIF, uno::UNO_QUERY );
+	if ( xComponent.is() )
+	{
+		try
+		{
+			xComponent->dispose();
+		}	
+		catch( uno::Exception& e )
+		{
+			std::cerr << "tryDispose caught exception " <<rtl::OUStringToOString( e.Message, RTL_TEXTENCODING_UTF8 ).getStr() << " while disposing " <<  sComp << std::endl;
+		}
+	}
+}
+int main( int argv, char** argc )
+{
+	if ( !( argv > 2 ) )
+		return usage( argc[0] );
+	try
+	{
+
+		OSL_TRACE("Attempting to bootstrap normal");
+		Reference<XComponentContext> xCC = ::cppu::bootstrap();
+		Reference<XMultiComponentFactory> xFactory = xCC->getServiceManager();
+		OSL_TRACE("got servicemanager");
+		Reference<XInterface> desktop = xFactory->createInstanceWithContext(
+		ascii("com.sun.star.frame.Desktop"), xCC);
+		OSL_TRACE("got desktop");
+		Reference<frame::XComponentLoader> xLoader(desktop, UNO_QUERY_THROW);
+		TestVBA* dTest = new TestVBA( xCC, xFactory, xLoader, ascii( argc[ 2 ] ) );
+        if ( argv == 4 )
+        {
+            dTest->proccessDocument( ascii( argc[ 3 ] ) );
+        }
+        else
+        {
+		    dTest->traverse( ascii( argc[ 1 ] ) );
+        }
+		delete dTest;
+//		tryDispose( xLoader, "desktop" );
+//		tryDispose( xCC, "remote context" );
+
+	}
+	catch( uno::Exception& e )
+	{
+		std::cerr << "Caught Exception " << rtl::OUStringToOString( e.Message, RTL_TEXTENCODING_UTF8 ).getStr() << std::endl;
+	}
+
+}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]