persistence: replace arbitrary limit of cn to 4 by CV_CN_MAX (#10636)
* persistence: replace arbitrary limit of cn to 4 by CV_CN_MAX * python: added persistence test, remove temp files * fixup! python: added persistence test, remove temp files * fixup! python: added persistence test, remove temp filespull/10675/head
parent
479179638e
commit
2d674fc151
3 changed files with 47 additions and 8 deletions
@ -0,0 +1,35 @@ |
|||||||
|
#!/usr/bin/env python |
||||||
|
""""Core serializaion tests.""" |
||||||
|
import tempfile |
||||||
|
import os |
||||||
|
import cv2 as cv |
||||||
|
import numpy as np |
||||||
|
from tests_common import NewOpenCVTests |
||||||
|
|
||||||
|
|
||||||
|
class persistence_test(NewOpenCVTests): |
||||||
|
def test_yml_rw(self): |
||||||
|
fd, fname = tempfile.mkstemp(prefix="opencv_python_persistence_", suffix=".yml") |
||||||
|
os.close(fd) |
||||||
|
|
||||||
|
# Writing ... |
||||||
|
expected = np.array([[[0, 1, 2, 3, 4]]]) |
||||||
|
fs = cv.FileStorage(fname, cv.FILE_STORAGE_WRITE) |
||||||
|
fs.write("test", expected) |
||||||
|
fs.release() |
||||||
|
|
||||||
|
# Reading ... |
||||||
|
fs = cv.FileStorage(fname, cv.FILE_STORAGE_READ) |
||||||
|
root = fs.getFirstTopLevelNode() |
||||||
|
self.assertEqual(root.name(), "test") |
||||||
|
test = fs.getNode("test") |
||||||
|
self.assertEqual(test.empty(), False) |
||||||
|
self.assertEqual(test.name(), "test") |
||||||
|
self.assertEqual(test.type(), cv.FILE_NODE_MAP) |
||||||
|
self.assertEqual(test.isMap(), True) |
||||||
|
actual = test.mat() |
||||||
|
self.assertEqual(actual.shape, expected.shape) |
||||||
|
self.assertEqual(np.array_equal(expected, actual), True) |
||||||
|
fs.release() |
||||||
|
|
||||||
|
os.remove(fname) |
Loading…
Reference in new issue