"atomic bomb" commit. Reorganized OpenCV directory structure
This commit is contained in:
81
tests/swig_python/cvtestutils.py
Normal file
81
tests/swig_python/cvtestutils.py
Normal file
@@ -0,0 +1,81 @@
|
||||
# cvtestutils.py
|
||||
#
|
||||
# This module is meant to aid writing and running Python-based tests
|
||||
# within the OpenCV tree.
|
||||
#
|
||||
# 2009-01-23, Roman Stanchak <rstanchak@gmail.com>
|
||||
#
|
||||
#
|
||||
# Upon importing, this module adds the following python module
|
||||
# directories from the dev tree to sys.path (i.e. PYTHON_PATH):
|
||||
# opencv/interfaces/swig/python and opencv/lib
|
||||
#
|
||||
# Using it in a test case is simple, just be sure to import
|
||||
# cvtestutils before cv, highgui, etc
|
||||
#
|
||||
# Usage:
|
||||
# import cvtestutils
|
||||
# import cv
|
||||
|
||||
import os
|
||||
import imp
|
||||
import sys
|
||||
|
||||
def top_srcdir():
|
||||
"""
|
||||
Return a string containing the top-level source directory in the OpenCV tree
|
||||
"""
|
||||
dir = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
# top level dir should be two levels up from this file
|
||||
return os.path.realpath( os.path.join( dir, '..', '..' ) )
|
||||
|
||||
def top_builddir():
|
||||
"""
|
||||
Return a string containing the top-level build directory in the OpenCV tree.
|
||||
Either returns realpath(argv[1]) or top_srcdir();
|
||||
"""
|
||||
if len(sys.argv)>1: return os.path.realpath( sys.argv[1] );
|
||||
else: return top_srcdir();
|
||||
|
||||
def initpath():
|
||||
"""
|
||||
Prepend the python module directories from the dev tree to sys.path
|
||||
(i.e. PYTHON_PATH)
|
||||
"""
|
||||
|
||||
# add path for OpenCV source directory (for adapters.py)
|
||||
moduledir = os.path.join(top_srcdir(), 'interfaces','swig','python')
|
||||
moduledir = os.path.realpath(moduledir)
|
||||
sys.path.insert(0, moduledir)
|
||||
|
||||
# add path for OpenCV build directory
|
||||
moduledir = os.path.join(top_builddir(), 'interfaces','swig','python')
|
||||
moduledir = os.path.realpath(moduledir)
|
||||
sys.path.insert(0, moduledir)
|
||||
|
||||
libdir = os.path.join(top_builddir(), 'lib' )
|
||||
libdir = os.path.realpath(libdir)
|
||||
sys.path.insert(0, libdir)
|
||||
|
||||
def which():
|
||||
"""
|
||||
Print the directory containing cv.py
|
||||
"""
|
||||
import cv
|
||||
print "Using OpenCV Python in: " + os.path.dirname(cv.__file__)
|
||||
|
||||
def datadir():
|
||||
"""
|
||||
Return a string containing the full path to the python testdata directory
|
||||
"""
|
||||
return os.path.sep.join([top_srcdir(), '..', 'opencv_extra', 'testdata', 'python'])
|
||||
|
||||
### Module Initialization
|
||||
try:
|
||||
if MODULE_LOADED:
|
||||
pass
|
||||
except NameError:
|
||||
initpath()
|
||||
which()
|
||||
MODULE_LOADED=1
|
Reference in New Issue
Block a user