Kaydet (Commit) 09fcdbd5 authored tarafından Stephan Bergmann's avatar Stephan Bergmann

Fix random range for XFunctionDescriptions::testGetById

...regression introduced with eff70347
"tdf#45904 Move _XFunctionDescriptions Java test to C++" (where
java.util.Random.nextInt(n) returned a value 0 <= x < n), apparently causing
sporadic failures of CppunitTest_sc_functionlistobj like <https://
ci.libreoffice.org/job/lo_gerrit/27696/Config=linux_clang_dbgutil_64/console>

> ##Failure Location unknown## : Error
> Test name: sc_apitest::ScFunctionListObj::testGetById
> An uncaught exception of type com.sun.star.lang.IndexOutOfBoundsException

Also verify that nCount is not negative, so that the requirements of the
std::uniform_int_distribution ctor are guaranteed to be satisfied.

Change-Id: I90a5dc234fdd07f52fea69ae1d406f0818efb007
üst 57574c2b
......@@ -30,12 +30,12 @@ void XFunctionDescriptions::testGetById()
uno::Reference<sheet::XFunctionDescriptions> xFD(init(), UNO_QUERY_THROW);
const sal_Int32 nCount = xFD->getCount();
CPPUNIT_ASSERT_MESSAGE("No FunctionDescriptions available", 0 != nCount);
CPPUNIT_ASSERT_MESSAGE("No FunctionDescriptions available", 0 < nCount);
// first grab a random function descriptions
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<> distr(1, nCount);
std::uniform_int_distribution<> distr(0, nCount - 1);
int nNumber = distr(gen);
sal_Int32 aId1 = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment