diff --git a/tests/__init__.py b/tests/__init__.py index 1d4d2e3d..663b89ec 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -22,3 +22,22 @@ def path_to_data_dir(name): path = os.path.abspath(path) return os.path.join(path, name) +class IsA(object): + def __init__(self, klass): + self.klass = klass + + def __eq__(self, rhs): + try: + return isinstance(rhs, self.klass) + except TypeError: + return type(rhs) == type(self.klass) + + def __ne__(self, rhs): + return not self.__eq__(rhs) + + def __repr__(self): + return str(self.klass) + +any_int = IsA(int) +any_str = IsA(str) +any_unicode = IsA(unicode)