Hi, Markus,

I extended the current sc database range unit test to also check xlsx and xls. I mainly did this for when I eventually do more work on EasyHack fdo48140 https://bugs.freedesktop.org/show_bug.cgi?id=48140. This EasyHack kind of slipped my mind with all the excitement of GSOC and end of school semester work. Ever since I remembered it, it's been bothering me, so I'd like to at least finish the database ranges at some point. (And whatever else you think should fall under this easyhack.)


Very respectfully,
Daniel Bankston
>From 51b83940b602f75800ed0e80216dd7a4d26cdcc7 Mon Sep 17 00:00:00 2001
From: Daniel Bankston <daniel.e.banks...@gmail.com>
Date: Mon, 11 Jun 2012 02:42:30 -0500
Subject: [PATCH] Extend current database range unit test to also check xls
 and xlsx

Since Excel doesn't support named database ranges, I also added tests for
unnamed database ranges for ods, xls, and xlsx.

Change-Id: I491324883c95cf2edb13c0561e975a13d13ba7d7
---
 sc/qa/unit/data/ods/database.ods       |  Bin 8193 -> 9155 bytes
 sc/qa/unit/data/xls/database.xls       |  Bin 0 -> 8704 bytes
 sc/qa/unit/data/xlsx/database.xlsx     |  Bin 0 -> 7823 bytes
 sc/qa/unit/subsequent_filters-test.cxx |   71 ++++++++++++++++++++++++++------
 4 files changed, 58 insertions(+), 13 deletions(-)
 create mode 100644 sc/qa/unit/data/xls/database.xls
 create mode 100644 sc/qa/unit/data/xlsx/database.xlsx

diff --git a/sc/qa/unit/data/ods/database.ods b/sc/qa/unit/data/ods/database.ods
index c8039f95ddbee50746b5924bb04c18a2ea689f9d..612919f21a595b57822f4db3548cbe16ef408373 100644
GIT binary patch
literal 9155
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

literal 8193
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

diff --git a/sc/qa/unit/data/xls/database.xls b/sc/qa/unit/data/xls/database.xls
new file mode 100644
index 0000000000000000000000000000000000000000..04f473c1206eb88cd3844d5012f76504ed023c5c
GIT binary patch
literal 8704
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
O8tM9{e}8+>`u_u|RdwV5

literal 0
HcmV?d00001

diff --git a/sc/qa/unit/data/xlsx/database.xlsx b/sc/qa/unit/data/xlsx/database.xlsx
new file mode 100644
index 0000000000000000000000000000000000000000..646b79dc1b3ca1f4f177ac352f45a87b4ce6ca67
GIT binary patch
literal 7823
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

literal 0
HcmV?d00001

diff --git a/sc/qa/unit/subsequent_filters-test.cxx b/sc/qa/unit/subsequent_filters-test.cxx
index 68b5bf0..d293bd5 100644
--- a/sc/qa/unit/subsequent_filters-test.cxx
+++ b/sc/qa/unit/subsequent_filters-test.cxx
@@ -101,6 +101,8 @@ public:
     void testRangeNameXLSX();
     void testFunctionsODS();
     void testDatabaseRangesODS();
+    void testDatabaseRangesXLS();
+    void testDatabaseRangesXLSX();
     void testFormatsODS();
     void testFormatsXLS();
     void testFormatsXLSX();
@@ -127,6 +129,8 @@ public:
     CPPUNIT_TEST(testRangeNameXLSX);
     CPPUNIT_TEST(testFunctionsODS);
     CPPUNIT_TEST(testDatabaseRangesODS);
+    CPPUNIT_TEST(testDatabaseRangesXLS);
+    CPPUNIT_TEST(testDatabaseRangesXLSX);
     CPPUNIT_TEST(testFormatsODS);
     CPPUNIT_TEST(testFormatsXLS);
     CPPUNIT_TEST(testFormatsXLSX);
@@ -318,13 +322,10 @@ void ScFiltersTest::testFunctionsODS()
     xDocSh->DoClose();
 }
 
-void ScFiltersTest::testDatabaseRangesODS()
-{
-    const rtl::OUString aFileNameBase(RTL_CONSTASCII_USTRINGPARAM("database."));
-    ScDocShellRef xDocSh = loadDoc(aFileNameBase, 0);
-    xDocSh->DoHardRecalc(true);
+namespace {
 
-    ScDocument* pDoc = xDocSh->GetDocument();
+void testDBRanges_Impl(ScDocument* pDoc, sal_Int32 nFormat)
+{
     ScDBCollection* pDBCollection = pDoc->GetDBCollection();
     CPPUNIT_ASSERT_MESSAGE("no database collection", pDBCollection);
 
@@ -343,15 +344,59 @@ void ScFiltersTest::testDatabaseRangesODS()
     CPPUNIT_ASSERT_MESSAGE("Sheet1: row 4-5 should be hidden", bHidden && nRow1 == 4 && nRow2 == 5);
     bHidden = pDoc->RowHidden(6, 0, &nRow1, &nRow2);
     CPPUNIT_ASSERT_MESSAGE("Sheet1: row 6-end should be visible", !bHidden && nRow1 == 6 && nRow2 == MAXROW);
+    if(nFormat == ODS) //excel doesn't support named db ranges
+    {
+        double aValue;
+        pDoc->GetValue(0,10,1, aValue);
+        rtl::OUString aString;
+        CPPUNIT_ASSERT_MESSAGE("Sheet2: A11: formula result is incorrect", aValue == 4);
+        pDoc->GetValue(1, 10, 1, aValue);
+        CPPUNIT_ASSERT_MESSAGE("Sheet2: B11: formula result is incorrect", aValue == 2);
+    }
     double aValue;
-    pDoc->GetValue(0,10,1, aValue);
+    pDoc->GetValue(3,10,1, aValue);
     rtl::OUString aString;
-    pDoc->GetFormula(0,10,1,aString);
-    rtl::OString aOString;
-    aOString = rtl::OUStringToOString(aString, RTL_TEXTENCODING_UTF8);
-    CPPUNIT_ASSERT_MESSAGE("Sheet2: A11: formula result is incorrect", aValue == 4);
-    pDoc->GetValue(1, 10, 1, aValue);
-    CPPUNIT_ASSERT_MESSAGE("Sheet2: B11: formula result is incorrect", aValue == 2);
+    CPPUNIT_ASSERT_MESSAGE("Sheet2: D11: formula result is incorrect", aValue == 4);
+    pDoc->GetValue(4, 10, 1, aValue);
+    CPPUNIT_ASSERT_MESSAGE("Sheet2: E11: formula result is incorrect", aValue == 2);
+
+}
+
+}
+
+void ScFiltersTest::testDatabaseRangesODS()
+{
+    const rtl::OUString aFileNameBase(RTL_CONSTASCII_USTRINGPARAM("database."));
+    ScDocShellRef xDocSh = loadDoc(aFileNameBase, 0);
+    xDocSh->DoHardRecalc(true);
+
+    ScDocument* pDoc = xDocSh->GetDocument();
+
+    testDBRanges_Impl(pDoc, ODS);
+    xDocSh->DoClose();
+}
+
+void ScFiltersTest::testDatabaseRangesXLS()
+{
+    const rtl::OUString aFileNameBase(RTL_CONSTASCII_USTRINGPARAM("database."));
+    ScDocShellRef xDocSh = loadDoc(aFileNameBase, 1);
+    xDocSh->DoHardRecalc(true);
+
+    ScDocument* pDoc = xDocSh->GetDocument();
+
+    testDBRanges_Impl(pDoc, XLS);
+    xDocSh->DoClose();
+}
+
+void ScFiltersTest::testDatabaseRangesXLSX()
+{
+    const rtl::OUString aFileNameBase(RTL_CONSTASCII_USTRINGPARAM("database."));
+    ScDocShellRef xDocSh = loadDoc(aFileNameBase, 2);
+    xDocSh->DoHardRecalc(true);
+
+    ScDocument* pDoc = xDocSh->GetDocument();
+
+    testDBRanges_Impl(pDoc, XLSX);
     xDocSh->DoClose();
 }
 
-- 
1.7.9.1

_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to