diff --git a/modules/core/test/test_umat.cpp b/modules/core/test/test_umat.cpp index cfea5c5931..270de1323f 100644 --- a/modules/core/test/test_umat.cpp +++ b/modules/core/test/test_umat.cpp @@ -248,3 +248,28 @@ TEST(UMat, Sync) EXPECT_EQ(0, cv::norm(um.getMat(ACCESS_READ), cv::Mat(um.size(), um.type(), 19), NORM_INF)); } + +TEST(UMat, setOpenCL) +{ + Mat m = (Mat_(3,3)<<0,1,2,3,4,5,6,7,8); + + ocl::setUseOpenCL(true); + UMat um1; + m.copyTo(um1); + + ocl::setUseOpenCL(false); + UMat um2; + m.copyTo(um2); + + ocl::setUseOpenCL(true); + countNonZero(um1); + countNonZero(um2); + um1.copyTo(um2); + um2.copyTo(um1); + + ocl::setUseOpenCL(false); + countNonZero(um1); + countNonZero(um2); + um1.copyTo(um2); + um2.copyTo(um1); +}