diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> | 2024-06-27 21:01:26 +0900 |
---|---|---|
committer | Tomaž Vajngerl <quikee@gmail.com> | 2024-06-27 17:31:42 +0200 |
commit | e3d865274ba8628b29872bb533fcf257279c6fb6 (patch) | |
tree | e804ac7860d1960418a8a98a7e592ee6f421d0c2 /sd | |
parent | 16d8f37cae3e6b68e4c41fbbacd94f48c3e304ab (diff) |
annot: rename testAnnotationUpdate and add comments
testAnnotationUpdate is not specific, so rename the test name to
testAnnotationPositionUpdate.
Change-Id: I1608025143455ad789cf2cce84b80e8b8b6b2e34
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169641
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Jenkins
Diffstat (limited to 'sd')
-rw-r--r-- | sd/qa/unit/AnnotationTest.cxx | 36 |
1 files changed, 26 insertions, 10 deletions
diff --git a/sd/qa/unit/AnnotationTest.cxx b/sd/qa/unit/AnnotationTest.cxx index 0f9e1c81ad0f..a1b73be924ba 100644 --- a/sd/qa/unit/AnnotationTest.cxx +++ b/sd/qa/unit/AnnotationTest.cxx @@ -194,52 +194,68 @@ CPPUNIT_TEST_FIXTURE(AnnotationTest, testAnnotationInsertUndoRedo) CPPUNIT_ASSERT_EQUAL(sal_uInt32(nID + 1), pPage->getAnnotations().at(1)->GetId()); } -CPPUNIT_TEST_FIXTURE(AnnotationTest, testAnnotationUpdate) +CPPUNIT_TEST_FIXTURE(AnnotationTest, testAnnotationPositionUpdate) { createSdDrawDoc(); auto pXImpressDocument = dynamic_cast<SdXImpressDocument*>(mxComponent.get()); sd::ViewShell* pViewShell = pXImpressDocument->GetDocShell()->GetViewShell(); + // Check current page SdPage* pPage = pViewShell->GetActualPage(); + + // Should have no objects yet CPPUNIT_ASSERT_EQUAL(size_t(0), pPage->GetObjCount()); + // Insert new annotation uno::Sequence<beans::PropertyValue> aArgs; - aArgs = comphelper::InitPropertySequence({ { "Text", uno::Any(u"Comment"_ustr) }, }); dispatchCommand(mxComponent, u".uno:InsertAnnotation"_ustr, aArgs); + // 1 object in the page now CPPUNIT_ASSERT_EQUAL(size_t(1), pPage->GetObjCount()); + // .. and is an annotation object SdrObject* pObject = pPage->GetObj(0); CPPUNIT_ASSERT_EQUAL(SdrObjKind::Annotation, pObject->GetObjIdentifier()); - auto& pAnnotationData = pObject->getAnnotationData(); CPPUNIT_ASSERT(pAnnotationData); + + // Remember the annotation ID sal_Int32 nID = pAnnotationData->mxAnnotation->GetId(); + // Current annotation position CPPUNIT_ASSERT_EQUAL(tools::Long(0), pObject->GetLogicRect().Left()); CPPUNIT_ASSERT_EQUAL(tools::Long(0), pObject->GetLogicRect().Top()); + // Move the object pObject->Move({ 200, 200 }); - CPPUNIT_ASSERT_EQUAL(tools::Long(200), pObject->GetLogicRect().Left()); + // Object at a new postion + CPPUNIT_ASSERT_EQUAL(tools::Long(200), + pObject->GetLogicRect().Left()); // in 100th of an mm (hmm) CPPUNIT_ASSERT_EQUAL(tools::Long(200), pObject->GetLogicRect().Top()); - CPPUNIT_ASSERT_DOUBLES_EQUAL(2.0, pAnnotationData->mxAnnotation->getPosition().X, 1E-4); + // Position of the annotation whould be the same as the object (2.0 mm equals 200 hmm) + CPPUNIT_ASSERT_DOUBLES_EQUAL(2.0, pAnnotationData->mxAnnotation->getPosition().X, 1E-4); // mm CPPUNIT_ASSERT_DOUBLES_EQUAL(2.0, pAnnotationData->mxAnnotation->getPosition().Y, 1E-4); - aArgs = comphelper::InitPropertySequence({ { "Id", uno::Any(OUString::number(nID)) }, - { "PositionX", uno::Any(sal_Int32(1440)) }, - { "PositionY", uno::Any(sal_Int32(14400)) } }); + // Change the annotation position + aArgs = comphelper::InitPropertySequence( + { { "Id", uno::Any(OUString::number(nID)) }, + { "PositionX", uno::Any(sal_Int32(1440)) }, // 1440 twips = 2540 hmm + { "PositionY", uno::Any(sal_Int32(14400)) } }); dispatchCommand(mxComponent, u".uno:EditAnnotation"_ustr, aArgs); - CPPUNIT_ASSERT_DOUBLES_EQUAL(25.4, pAnnotationData->mxAnnotation->getPosition().X, 1E-4); + // Position of the annotation changed again + CPPUNIT_ASSERT_DOUBLES_EQUAL(25.4, pAnnotationData->mxAnnotation->getPosition().X, + 1E-4); // in mm CPPUNIT_ASSERT_DOUBLES_EQUAL(254.0, pAnnotationData->mxAnnotation->getPosition().Y, 1E-4); - CPPUNIT_ASSERT_EQUAL(tools::Long(2540), pObject->GetLogicRect().Left()); + // Position of the annotation object changed also to the same value + CPPUNIT_ASSERT_EQUAL(tools::Long(2540), pObject->GetLogicRect().Left()); // in hmm CPPUNIT_ASSERT_EQUAL(tools::Long(25400), pObject->GetLogicRect().Top()); } |