diff options
author | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2015-04-16 03:57:32 +0200 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2015-04-16 04:04:37 +0200 |
commit | 2a88873e96d5aa916146a74c20b34b2715418350 (patch) | |
tree | 25b6f3e17104afd31b7482aa89c29121990af920 /sc/qa | |
parent | 514433a819102e8463d90a907fcdb8e429e07917 (diff) |
add test for tdf#90511
Change-Id: Id4f338d8f19b796be10f035df0bdf28076f6511e
Diffstat (limited to 'sc/qa')
-rw-r--r-- | sc/qa/unit/data/xlsx/condformat_theme_color.xlsx | bin | 0 -> 8937 bytes | |||
-rw-r--r-- | sc/qa/unit/subsequent_filters-test.cxx | 35 |
2 files changed, 35 insertions, 0 deletions
diff --git a/sc/qa/unit/data/xlsx/condformat_theme_color.xlsx b/sc/qa/unit/data/xlsx/condformat_theme_color.xlsx Binary files differnew file mode 100644 index 000000000000..8bab237406f4 --- /dev/null +++ b/sc/qa/unit/data/xlsx/condformat_theme_color.xlsx diff --git a/sc/qa/unit/subsequent_filters-test.cxx b/sc/qa/unit/subsequent_filters-test.cxx index 07b224f3dd7b..dbc5ac173330 100644 --- a/sc/qa/unit/subsequent_filters-test.cxx +++ b/sc/qa/unit/subsequent_filters-test.cxx @@ -131,6 +131,7 @@ public: void testColorScaleXLSX(); void testNewCondFormatODS(); void testNewCondFormatXLSX(); + void testCondFormatThemeColorXLSX(); void testLiteralInFormulaXLS(); @@ -237,6 +238,7 @@ public: CPPUNIT_TEST(testColorScaleXLSX); CPPUNIT_TEST(testNewCondFormatODS); CPPUNIT_TEST(testNewCondFormatXLSX); + CPPUNIT_TEST(testCondFormatThemeColorXLSX); CPPUNIT_TEST(testLiteralInFormulaXLS); CPPUNIT_TEST(testNumberFormatHTML); @@ -2342,6 +2344,39 @@ void ScFiltersTest::testNewCondFormatXLSX() xDocSh->DoClose(); } +void ScFiltersTest::testCondFormatThemeColorXLSX() +{ + ScDocShellRef xDocSh = ScBootstrapFixture::loadDoc( "condformat_theme_color.", XLSX ); + + CPPUNIT_ASSERT_MESSAGE("Failed to load condformat_theme_color.xlsx", xDocSh.Is()); + + ScDocument& rDoc = xDocSh->GetDocument(); + ScConditionalFormat* pFormat = rDoc.GetCondFormat(0, 0, 0); + const ScFormatEntry* pEntry = pFormat->GetEntry(0); + CPPUNIT_ASSERT(pEntry); + CPPUNIT_ASSERT_EQUAL(pEntry->GetType(), condformat::DATABAR); + const ScDataBarFormat* pDataBar = static_cast<const ScDataBarFormat*>(pEntry); + const ScDataBarFormatData* pDataBarFormatData = pDataBar->GetDataBarData(); + + CPPUNIT_ASSERT_EQUAL(Color(157, 195, 230), pDataBarFormatData->maPositiveColor); + CPPUNIT_ASSERT(pDataBarFormatData->mpNegativeColor.get()); + CPPUNIT_ASSERT_EQUAL(Color(COL_LIGHTRED), *pDataBarFormatData->mpNegativeColor.get()); + + pFormat = rDoc.GetCondFormat(0, 0, 1); + pEntry = pFormat->GetEntry(0); + CPPUNIT_ASSERT(pEntry); + CPPUNIT_ASSERT_EQUAL(pEntry->GetType(), condformat::COLORSCALE); + const ScColorScaleFormat* pColorScale = static_cast<const ScColorScaleFormat*>(pEntry); + CPPUNIT_ASSERT_EQUAL(size_t(2), pColorScale->size()); + const ScColorScaleEntry* pColorScaleEntry = pColorScale->GetEntry(0); + CPPUNIT_ASSERT(pColorScaleEntry); + CPPUNIT_ASSERT_EQUAL(Color(255, 230, 153), pColorScaleEntry->GetColor()); + + pColorScaleEntry = pColorScale->GetEntry(1); + CPPUNIT_ASSERT(pColorScaleEntry); + CPPUNIT_ASSERT_EQUAL(Color(157, 195, 230), pColorScaleEntry->GetColor()); +} + void ScFiltersTest::testLiteralInFormulaXLS() { ScDocShellRef xDocSh = loadDoc("shared-string/literal-in-formula.", XLS); |