From 3b47c8fda324af275aac9e6d237b6da6c8e5ca00 Mon Sep 17 00:00:00 2001 From: Kohei Yoshida Date: Mon, 1 Dec 2014 23:02:38 -0500 Subject: [PATCH] Add test to make sure sheet names with '&' get imported correctly. Change-Id: Iea7bb77cdbd5f3ba3b658c373b7d4156b2ca6337 --- sc/qa/unit/data/xlsx/sheet-names.xlsx | Bin 0 -> 9425 bytes sc/qa/unit/filters-test.cxx | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 sc/qa/unit/data/xlsx/sheet-names.xlsx diff --git a/sc/qa/unit/data/xlsx/sheet-names.xlsx b/sc/qa/unit/data/xlsx/sheet-names.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..97e0488f4374afac2ea876e9e62ad2b36a4911b3 GIT binary patch literal 9425 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 O1?VBt-j?Cpum1sM%DoClose(); } +void ScFiltersTest::testSheetNamesXLSX() +{ + ScDocShellRef xDocSh = loadDoc("sheet-names.", XLSX); + ScDocument& rDoc = xDocSh->GetDocument(); + + std::vector aTabNames = rDoc.GetAllTableNames(); + CPPUNIT_ASSERT_MESSAGE("The document should have 5 sheets in total.", aTabNames.size() == 5); + CPPUNIT_ASSERT_EQUAL(OUString("S&P"), aTabNames[0]); + CPPUNIT_ASSERT_EQUAL(OUString("Sam's Club"), aTabNames[1]); + CPPUNIT_ASSERT_EQUAL(OUString("\"The Sheet\""), aTabNames[2]); + CPPUNIT_ASSERT_EQUAL(OUString("AD"), aTabNames[4]); + + xDocSh->DoClose(); +} + void impl_testLegacyCellAnchoredRotatedShape( ScDocument& rDoc, Rectangle& aRect, ScDrawObjData& aAnchor, long TOLERANCE = 30 /* 30 hmm */ ) { ScDrawLayer* pDrawLayer = rDoc.GetDrawLayer();