summaryrefslogtreecommitdiff
path: root/sd/qa
diff options
context:
space:
mode:
authorXisco Fauli <xiscofauli@libreoffice.org>2025-01-29 11:42:11 +0100
committerXisco Fauli <xiscofauli@libreoffice.org>2025-01-29 13:39:41 +0100
commit7f8ee2ccc0a1059759706ecbb1a7d592084dedc9 (patch)
tree38df06b957b16bdd3f34bfd650178382fbc0e223 /sd/qa
parentbf6ba4620bc5e7c8c18745f72c9018a6abe62256 (diff)
tdf#164855: sd_uiimpress: Add unittest
Change-Id: If912bd0a1c33f7eaefc5872643a7073dbc836c31 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180888 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Diffstat (limited to 'sd/qa')
-rw-r--r--sd/qa/unit/uiimpress.cxx36
1 files changed, 36 insertions, 0 deletions
diff --git a/sd/qa/unit/uiimpress.cxx b/sd/qa/unit/uiimpress.cxx
index 6d7c772afa15..8d399f024b03 100644
--- a/sd/qa/unit/uiimpress.cxx
+++ b/sd/qa/unit/uiimpress.cxx
@@ -23,6 +23,9 @@
#include <com/sun/star/view/XSelectionSupplier.hpp>
#include <comphelper/propertysequence.hxx>
+#include <editeng/adjustitem.hxx>
+#include <editeng/editobj.hxx>
+#include <editeng/eeitem.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/request.hxx>
#include <sfx2/viewfrm.hxx>
@@ -819,6 +822,39 @@ CPPUNIT_TEST_FIXTURE(SdUiImpressTest, testTdf141703)
CPPUNIT_ASSERT_EQUAL(u"B"_ustr, xTextA2->getString());
}
+CPPUNIT_TEST_FIXTURE(SdUiImpressTest, testTdf164855)
+{
+ createSdImpressDoc();
+
+ uno::Sequence<beans::PropertyValue> aArgs(comphelper::InitPropertySequence(
+ { { "Rows", uno::Any(sal_Int32(2)) }, { "Columns", uno::Any(sal_Int32(2)) } }));
+
+ dispatchCommand(mxComponent, u".uno:InsertTable"_ustr, aArgs);
+
+ auto pXImpressDocument = dynamic_cast<SdXImpressDocument*>(mxComponent.get());
+ sd::ViewShell* pViewShell = pXImpressDocument->GetDocShell()->GetViewShell();
+ SdPage* pActualPage = pViewShell->GetActualPage();
+ CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(3), pActualPage->GetObjCount());
+
+ auto pTableObject = dynamic_cast<sdr::table::SdrTableObj*>(pActualPage->GetObj(2));
+ CPPUNIT_ASSERT(pTableObject);
+
+ const EditTextObject& rEdit
+ = pTableObject->getText(0)->GetOutlinerParaObject()->GetTextObject();
+ const SfxItemSet& rParaAttribs = rEdit.GetParaAttribs(0);
+ auto pAdjust = rParaAttribs.GetItem(EE_PARA_JUST);
+ CPPUNIT_ASSERT_EQUAL(SvxAdjust::Left, pAdjust->GetAdjust());
+
+ // Without the fix in place, this test would have crashed here
+ dispatchCommand(mxComponent, u".uno:RightPara"_ustr, {});
+
+ const EditTextObject& rEdit2
+ = pTableObject->getText(0)->GetOutlinerParaObject()->GetTextObject();
+ const SfxItemSet& rParaAttribs2 = rEdit2.GetParaAttribs(0);
+ pAdjust = rParaAttribs2.GetItem(EE_PARA_JUST);
+ CPPUNIT_ASSERT_EQUAL(SvxAdjust::Right, pAdjust->GetAdjust());
+}
+
CPPUNIT_TEST_FIXTURE(SdUiImpressTest, testTdf127481)
{
createSdImpressDoc();