[Libreoffice-commits] core.git: test/qa test/source
Mike Kaganski (via logerrit)
logerrit at kemper.freedesktop.org
Thu Jul 15 06:02:03 UTC 2021
test/qa/cppunit/test_xpath.cxx | 3 +++
test/source/xmltesttools.cxx | 4 ++--
2 files changed, 5 insertions(+), 2 deletions(-)
New commits:
commit 798d19c80853166042ce8a14edf4a25cd491d6aa
Author: Mike Kaganski <mike.kaganski at collabora.com>
AuthorDate: Thu Jul 15 00:03:13 2021 +0200
Commit: Mike Kaganski <mike.kaganski at collabora.com>
CommitDate: Thu Jul 15 08:01:29 2021 +0200
Fix UB calling operator<<(std::basic_ostream) with nullptr
This resulted in segfault instead of a useful test failure message.
Was this way ever since 548b360c0e4693aac0cbdd2fcc1aab433fc54010,
and before in 6e31cbb4eaea3c6600248ba59a22853acc1d6606 and
9791453283407a0a129a71767a290058ac759da2.
Change-Id: I498d1c84a4eaf3e8180dedd67d1176cf6f8c1a60
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118916
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski at collabora.com>
diff --git a/test/qa/cppunit/test_xpath.cxx b/test/qa/cppunit/test_xpath.cxx
index 12852fc7dc6e..87d6a7ac177e 100644
--- a/test/qa/cppunit/test_xpath.cxx
+++ b/test/qa/cppunit/test_xpath.cxx
@@ -35,6 +35,9 @@ CPPUNIT_TEST_FIXTURE(TestXPath, test_getXPath)
CPPUNIT_ASSERT_EQUAL(OUString("val"), getXPath(pTable, "/xml/item", "attrib"));
// Trying to get position of missing child of a node must fail assertion
CPPUNIT_ASSERT_ASSERTION_FAIL(getXPathPosition(pTable, "/xml/item", "absent"));
+ // Asserting that an attribute is absent
+ CPPUNIT_ASSERT_ASSERTION_FAIL(assertXPathNoAttribute(pTable, "/xml/item", "attrib"));
+ CPPUNIT_ASSERT_ASSERTION_PASS(assertXPathNoAttribute(pTable, "/xml/item", "foo"));
}
CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/test/source/xmltesttools.cxx b/test/source/xmltesttools.cxx
index 12aed37f18e0..f92c380d9bf8 100644
--- a/test/source/xmltesttools.cxx
+++ b/test/source/xmltesttools.cxx
@@ -247,8 +247,8 @@ void XmlTestTools::assertXPathNoAttribute(const xmlDocUniquePtr& pXmlDoc, const
CPPUNIT_ASSERT_EQUAL_MESSAGE(OString(OString::Concat("In <") + pXmlDoc->name + ">, XPath '" + rXPath + "' number of nodes is incorrect").getStr(),
1, xmlXPathNodeSetGetLength(pXmlNodes));
xmlNodePtr pXmlNode = pXmlNodes->nodeTab[0];
- CPPUNIT_ASSERT_EQUAL_MESSAGE(OString(OString::Concat("In <") + pXmlDoc->name + ">, XPath '" + rXPath + "' unexpected '" + rAttribute + "' attribute").getStr(),
- static_cast<xmlChar*>(nullptr), xmlGetProp(pXmlNode, BAD_CAST(rAttribute.getStr())));
+ CPPUNIT_ASSERT_MESSAGE(OString(OString::Concat("In <") + pXmlDoc->name + ">, XPath '" + rXPath + "' unexpected '" + rAttribute + "' attribute").getStr(),
+ !xmlGetProp(pXmlNode, BAD_CAST(rAttribute.getStr())));
xmlXPathFreeObject(pXmlObj);
}
More information about the Libreoffice-commits
mailing list