From 47e4a33a6405eb1b5186027f55bd9cb99b0c1fe7 Mon Sep 17 00:00:00 2001 From: Daniel Bankston 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 zcmeHMU2IfU5T1K?Teg4PEl@zv=0c=Esf4zGC<0qb`7r_wKk5Spw(a%@N~=pr%7bA+ zc#{Nw5+6hj2}X?x;!pHJ2_?Sp0MVH6pif|YA@Z;oj3EN+_szMN?rwHVTL}cx*_=7& z&Y3wg=bSk+=kERar}9h3znpeivS6tM%YDL~<#k3$Ke6rmKOaF1Eaytd=j57AV|OwF+Zo1_=NK5?ZIK8S>a7fx$_d8UHBB3u zHZ{C(NhV?R6Y_V;MeW0YOF9ix`t{+_IqO{f`RE)q7yqM6KY=xMIXw^jb)IL|A(>5| zn}=SLhhCkBUX+v0eOG&!ZWRXHcWj)ugrr!969KKu6NOq&NCdT>m>8$^q(nh#2YlL+ z!#Ed5n80z0H+RNjeYK>t^P1*U>PUGJNB$0_{!N^13%`?A5U0xuPC?$M&k?4|beVxm zo`2H=scb1bs3jn0tq_XHmLrz@DLVz1f@BN3r7$^%RjIjDFtYH1!C@&$S7h6#)k{f| zNB9g>hva~TOGjt`2UtQ8sk}yOaqS3Uu+S8ge?-DJEO29IS9e=H)&nbgK(F=cIV;mt$g3CQcy8U()zjfps?BX{apTdR zj@V?MytgN_12bG+2d&GOEllD5R4zZl5==l^Llr1!cu?WhHZNHw7>6^0aVb`-4J*qH zF4vU{V~uWpcI}t-EzK*oD?I^<53}exl9B`HIUB52iFt|-D(@tO9dJ}NRy9<>A}n=P zV{^14=2kVop=^f~S7FF{g)1v&r?uyx-L8;aF*mJ!TxMddHW4ATH9N}Q6jJFdWrRJ3GbQ!+q`?2Hxf=VWUC`{IvfhvQJRkH z(Oi#4H9ntDqx<2gh=xN^!N~`HJg+%@~}8BP$gzSNyEv#lVJx zb8=+0;^!4_P`n8^AXnuSdhO&nObPCmqfA$y1;^64XO(Nm0`51DMjlmSUCT z(iv^R;ht-Odx(hYs1y(k2M_Asbs~b}TJqXVd76*)(o> zHjUe#O=G~xrZI73)A;uW zLDEkjCPnax!#nzS%xMHSCfD@zVXHh>3aJm6JiIBSCl|v53qa+3$%A8zCzE=(E{2Ep z7)kQ*T4)jzZy!F73FW*HlBYm?y>> zfIHwNeF;aXo7x|*Hhmn;gN(lUkmD!@e7UJIi+5caum>t_nN>=aXgACOkrKf>65@@P zE+I0@VU{ow+z)!f;Lerm+_)yD&qg0-&nNnaqoebQb`8oo8FF0TK{@)1D#b{TK{@+8 z@GJ}nrgBx9(P1aoqR;hmwE80afH``BQ8>ID4H-^C;~njn2$2UG?@H*yu&e~X`xx)U zdY~8C(ZxG|;Ur^|7Nlee-sd*;x5m2NXP$m)OSC1{ z-5pamS=rUzzC^i4iQs=m=_uuIed+K=f8E&F8UFmOkj$I?^{<8ix}zuz`^Qk2us%hh(N}JXzM+NDULTF`+PlYH-`g4Q zjK>Q4G z1`qY~Vnp49jLsn*)_Hvv^ma>Z2+pCqilN_VHh5@m)64nudjp{W|7h&R{CDGv2fzKT z!&ks|-4jy!@Fk=dl>9Kq)6aXuaOcnU`okNtKvqFRtJ)CLFOVa%XUQn$&%dMlJpK2g 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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 ng#EdA^}*q}Kkq literal 0 HcmV?d00001 diff --git a/sc/qa/unit/subsequent_filters-test.cxx b/sc/qa/unit/subsequent_filters-test.cxx index 68b5bf087b7f..d293bd5b4114 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(); }