Merge pull request #18929 from alalek:gapi_test_eliminate_rand

pull/18936/head
Alexander Alekhin 4 years ago
commit 3c9d03c36f
  1. 7
      modules/gapi/test/common/gapi_parsers_tests_common.hpp
  2. 4
      modules/gapi/test/rmat/rmat_tests.cpp
  3. 3
      modules/gapi/test/test_precomp.hpp

@ -176,7 +176,7 @@ private:
int randInRange(const int start, const int end) int randInRange(const int start, const int end)
{ {
GAPI_Assert(start <= end); GAPI_Assert(start <= end);
return start + std::rand() % (end - start + 1); return theRNG().uniform(start, end);
} }
cv::Rect generateBox(const cv::Size& in_sz) cv::Rect generateBox(const cv::Size& in_sz)
@ -211,7 +211,7 @@ private:
SSDitem it; SSDitem it;
it.image_id = static_cast<float>(i); it.image_id = static_cast<float>(i);
it.label = static_cast<float>(randInRange(0, 9)); it.label = static_cast<float>(randInRange(0, 9));
it.confidence = static_cast<float>(std::rand()) / RAND_MAX; it.confidence = theRNG().uniform(0.f, 1.f);
auto box = generateBox(in_sz); auto box = generateBox(in_sz);
it.rc_left = normalize(box.x, in_sz.width); it.rc_left = normalize(box.x, in_sz.width);
it.rc_right = normalize(box.x + box.width, in_sz.width); it.rc_right = normalize(box.x + box.width, in_sz.width);
@ -245,9 +245,10 @@ public:
auto data = mat.ptr<float>(); auto data = mat.ptr<float>();
const size_t range = std::accumulate(dims.begin(), dims.end(), 1, std::multiplies<int>()); const size_t range = std::accumulate(dims.begin(), dims.end(), 1, std::multiplies<int>());
cv::RNG& rng = theRNG();
for (size_t i = 0; i < range; ++i) for (size_t i = 0; i < range; ++i)
{ {
data[i] = static_cast<float>(std::rand()) / RAND_MAX; data[i] = rng.uniform(0.f, 1.f);
} }
return mat; return mat;
} }

@ -116,11 +116,11 @@ public:
// we have some specific data hidden under RMat, // we have some specific data hidden under RMat,
// test that we can obtain it via RMat.as<T>() method // test that we can obtain it via RMat.as<T>() method
TEST(RMat, UsageInBackend) { TEST(RMat, UsageInBackend) {
int i = std::rand(); int i = 123456;
auto rmat = cv::make_rmat<RMatAdapterForBackend>(i); auto rmat = cv::make_rmat<RMatAdapterForBackend>(i);
auto adapter = rmat.get<RMatAdapterForBackend>(); auto adapter = rmat.get<RMatAdapterForBackend>();
EXPECT_NE(nullptr, adapter); ASSERT_NE(nullptr, adapter);
EXPECT_EQ(i, adapter->deviceSpecificData()); EXPECT_EQ(i, adapter->deviceSpecificData());
} }
} // namespace opencv_test } // namespace opencv_test

@ -34,4 +34,7 @@ static inline void countNonZero_is_forbidden_in_tests_use_norm_instead() {}
} }
#define countNonZero() countNonZero_is_forbidden_in_tests_use_norm_instead() #define countNonZero() countNonZero_is_forbidden_in_tests_use_norm_instead()
#undef RAND_MAX
#define RAND_MAX RAND_MAX_is_banned_in_tests__use_cv_theRNG_instead
#endif // __OPENCV_GAPI_TEST_PRECOMP_HPP__ #endif // __OPENCV_GAPI_TEST_PRECOMP_HPP__

Loading…
Cancel
Save