diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> | 2020-01-09 11:34:11 +0100 |
---|---|---|
committer | Tomaž Vajngerl <quikee@gmail.com> | 2020-01-09 17:05:25 +0100 |
commit | 912cd707b5128c5ef9d365d8179cf2b65aeaaa1d (patch) | |
tree | 6178a0e9b25876d38a97204408c4aad1d93941b5 /sw | |
parent | 08886d9d01eb5d3356290ba6d8eeca899cde45cc (diff) |
tdf#45636: test for no-alt and table split/merge access. check
Change-Id: I6474b5e0db90143efa1ea066142961c2fe250ae6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86492
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'sw')
-rw-r--r-- | sw/qa/core/accessibilitycheck/AccessibilityCheckTest.cxx | 20 | ||||
-rw-r--r-- | sw/qa/core/accessibilitycheck/data/AccessibilityTests1.odt | bin | 0 -> 20915 bytes | |||
-rw-r--r-- | sw/source/core/access/AccessibilityCheck.cxx | 11 |
3 files changed, 26 insertions, 5 deletions
diff --git a/sw/qa/core/accessibilitycheck/AccessibilityCheckTest.cxx b/sw/qa/core/accessibilitycheck/AccessibilityCheckTest.cxx index 7360ccd1d862..61902aabc459 100644 --- a/sw/qa/core/accessibilitycheck/AccessibilityCheckTest.cxx +++ b/sw/qa/core/accessibilitycheck/AccessibilityCheckTest.cxx @@ -23,7 +23,7 @@ public: } }; -CPPUNIT_TEST_FIXTURE(AccessibilityCheckTest, testCheck) +CPPUNIT_TEST_FIXTURE(AccessibilityCheckTest, testCheckDocumentIssues) { SwDoc* pDoc = createDoc("DocumentTest.odt"); CPPUNIT_ASSERT(pDoc); @@ -35,6 +35,24 @@ CPPUNIT_TEST_FIXTURE(AccessibilityCheckTest, testCheck) CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::DOCUMENT_TITLE, aIssues[1]->m_eIssueID); } +CPPUNIT_TEST_FIXTURE(AccessibilityCheckTest, testTableSplitMergeAndAltText) +{ + SwDoc* pDoc = createDoc("AccessibilityTests1.odt"); + CPPUNIT_ASSERT(pDoc); + sw::AccessibilityCheck aCheck(pDoc); + aCheck.check(); + auto& aIssues = aCheck.getIssueCollecton().getIssues(); + CPPUNIT_ASSERT_EQUAL(size_t(7), aIssues.size()); + + CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::NO_ALT_GRAPHIC, aIssues[0]->m_eIssueID); + CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::NO_ALT_OLE, aIssues[1]->m_eIssueID); + CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TABLE_MERGE_SPLIT, aIssues[2]->m_eIssueID); + CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TABLE_MERGE_SPLIT, aIssues[3]->m_eIssueID); + CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TABLE_MERGE_SPLIT, aIssues[4]->m_eIssueID); + CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TABLE_MERGE_SPLIT, aIssues[5]->m_eIssueID); + CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::NO_ALT_SHAPE, aIssues[6]->m_eIssueID); +} + CPPUNIT_PLUGIN_IMPLEMENT(); /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sw/qa/core/accessibilitycheck/data/AccessibilityTests1.odt b/sw/qa/core/accessibilitycheck/data/AccessibilityTests1.odt Binary files differnew file mode 100644 index 000000000000..2e319f58e7a2 --- /dev/null +++ b/sw/qa/core/accessibilitycheck/data/AccessibilityTests1.odt diff --git a/sw/source/core/access/AccessibilityCheck.cxx b/sw/source/core/access/AccessibilityCheck.cxx index 06a90e98ac4c..aaeacae84bac 100644 --- a/sw/source/core/access/AccessibilityCheck.cxx +++ b/sw/source/core/access/AccessibilityCheck.cxx @@ -83,16 +83,18 @@ class NoTextNodeAltTextCheck : public NodeCheck OUString sIssueText = SwResId(STR_NO_ALT).replaceAll("%OBJECT_NAME%", sName); - auto pIssue = lclAddIssue(m_rIssueCollection, sIssueText); - if (pNoTextNode->IsOLENode()) { + auto pIssue = lclAddIssue(m_rIssueCollection, sIssueText, + sfx::AccessibilityIssueID::NO_ALT_OLE); pIssue->setDoc(pNoTextNode->GetDoc()); pIssue->setIssueObject(IssueObject::OLE); pIssue->setObjectID(pNoTextNode->GetFlyFormat()->GetName()); } else if (pNoTextNode->IsGrfNode()) { + auto pIssue = lclAddIssue(m_rIssueCollection, sIssueText, + sfx::AccessibilityIssueID::NO_ALT_GRAPHIC); pIssue->setDoc(pNoTextNode->GetDoc()); pIssue->setIssueObject(IssueObject::GRAPHIC); pIssue->setObjectID(pNoTextNode->GetFlyFormat()->GetName()); @@ -126,7 +128,8 @@ private: const SwTableFormat* pFormat = rTable.GetFrameFormat(); OUString sName = pFormat->GetName(); OUString sIssueText = SwResId(STR_TABLE_MERGE_SPLIT).replaceAll("%OBJECT_NAME%", sName); - auto pIssue = lclAddIssue(m_rIssueCollection, sIssueText); + auto pIssue = lclAddIssue(m_rIssueCollection, sIssueText, + sfx::AccessibilityIssueID::TABLE_MERGE_SPLIT); pIssue->setDoc(pDoc); pIssue->setIssueObject(IssueObject::TABLE); pIssue->setObjectID(sName); @@ -617,7 +620,7 @@ void AccessibilityCheck::checkObject(SdrObject* pObject) { OUString sName = pObject->GetName(); OUString sIssueText = SwResId(STR_NO_ALT).replaceAll("%OBJECT_NAME%", sName); - lclAddIssue(m_aIssueCollection, sIssueText); + lclAddIssue(m_aIssueCollection, sIssueText, sfx::AccessibilityIssueID::NO_ALT_SHAPE); } } } |