From 0ea7455b9af0e5bbc16e646c5506945fd333f5b4 Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sat, 21 Jan 2017 17:11:02 -0700 Subject: [PATCH 01/13] Clean-up tests & remove warnfilter Ensure they are using the same functions in py2/py3 Ensure py2/py3 compat Misc. cleanup Add _compat The unittest module has been also updated to use the 'default' filter while running tests. DeprecationWarnings are ignored by default https://docs.python.org/3.3/library/warnings.html#updating-code-for-new-versions-of-python https://docs.python.org/3.3/library/warnings.html#default-warning-filters --- src/tests/PyImportTest/__init__.py | 1 + src/tests/PyImportTest/test/__init__.py | 1 + src/tests/PyImportTest/test/one.py | 1 + src/tests/__init__.py | 1 + src/tests/_compat.py | 65 +++++++++++++++++++ src/tests/leaktest.py | 53 ++++++++------- src/tests/profile.py | 20 ++++-- src/tests/runtests.py | 30 ++++++--- src/tests/stress.py | 40 ++++++++---- src/tests/stresstest.py | 51 ++++++++++----- src/tests/test_array.py | 4 +- src/tests/test_class.py | 6 +- src/tests/test_compat.py | 5 +- src/tests/test_constructors.py | 4 +- src/tests/test_conversion.py | 4 +- src/tests/test_delegate.py | 5 +- src/tests/test_docstring.py | 2 + src/tests/test_engine.py | 11 ++-- src/tests/test_enum.py | 5 +- src/tests/test_event.py | 4 +- src/tests/test_exceptions.py | 5 +- src/tests/test_field.py | 17 +++-- src/tests/test_generic.py | 4 +- src/tests/test_indexer.py | 4 +- src/tests/test_interface.py | 5 +- src/tests/test_method.py | 20 +++--- src/tests/test_module.py | 6 +- src/tests/test_property.py | 13 ++-- src/tests/test_subclass.py | 4 +- src/tests/test_suite/__init__.py | 9 ++- src/tests/test_suite/_missing_import.py | 3 +- src/tests/test_suite/test_callback.py | 12 +++- src/tests/test_suite/test_import.py | 10 ++- ...ursiveTypes.py => test_recursive_types.py} | 12 +++- src/tests/test_thread.py | 16 +++-- src/tests/warnfilter.py | 11 ---- 36 files changed, 327 insertions(+), 137 deletions(-) create mode 100644 src/tests/__init__.py create mode 100644 src/tests/_compat.py rename src/tests/test_suite/{test_recursiveTypes.py => test_recursive_types.py} (77%) delete mode 100644 src/tests/warnfilter.py diff --git a/src/tests/PyImportTest/__init__.py b/src/tests/PyImportTest/__init__.py index e69de29bb..40a96afc6 100644 --- a/src/tests/PyImportTest/__init__.py +++ b/src/tests/PyImportTest/__init__.py @@ -0,0 +1 @@ +# -*- coding: utf-8 -*- diff --git a/src/tests/PyImportTest/test/__init__.py b/src/tests/PyImportTest/test/__init__.py index e69de29bb..40a96afc6 100644 --- a/src/tests/PyImportTest/test/__init__.py +++ b/src/tests/PyImportTest/test/__init__.py @@ -0,0 +1 @@ +# -*- coding: utf-8 -*- diff --git a/src/tests/PyImportTest/test/one.py b/src/tests/PyImportTest/test/one.py index e69de29bb..40a96afc6 100644 --- a/src/tests/PyImportTest/test/one.py +++ b/src/tests/PyImportTest/test/one.py @@ -0,0 +1 @@ +# -*- coding: utf-8 -*- diff --git a/src/tests/__init__.py b/src/tests/__init__.py new file mode 100644 index 000000000..40a96afc6 --- /dev/null +++ b/src/tests/__init__.py @@ -0,0 +1 @@ +# -*- coding: utf-8 -*- diff --git a/src/tests/_compat.py b/src/tests/_compat.py new file mode 100644 index 000000000..3a9d48c7e --- /dev/null +++ b/src/tests/_compat.py @@ -0,0 +1,65 @@ +# -*- coding: utf-8 -*- + +"""Python 2.7, 3.3+ compatibility module. + +Using Python 3 syntax to encourage upgrade unless otherwise noted. +""" + +import operator +import sys +import types + +PY2 = sys.version_info[0] == 2 +PY3 = sys.version_info[0] == 3 + +if PY3: + import _thread as thread # Using PY2 name + import pickle + from collections import UserList + + indexbytes = operator.getitem + input = input + + string_types = str, + binary_type = bytes + text_type = str + + DictProxyType = type(object.__dict__) + ClassType = type + + # No PY3 equivalents, use PY2 name + long = int + unichr = chr + unicode = str + + # from nowhere import Nothing + cmp = lambda a, b: (a > b) - (a < b) # No Py3 equivalent + map = map + range = range + zip = zip + +elif PY2: + import thread # Using PY2 name + import cPickle as pickle + from UserList import UserList + + indexbytes = lambda buf, i: ord(buf[i]) + input = raw_input + + string_types = str, unicode + bytes_type = str + text_type = unicode + + DictProxyType = types.DictProxyType + ClassType = types.ClassType + + # No PY3 equivalents, use PY2 name + long = long + unichr = unichr + unicode = unicode + + from itertools import izip, imap + cmp = cmp + map = imap + range = xrange + zip = izip diff --git a/src/tests/leaktest.py b/src/tests/leaktest.py index 383da87c8..43a0e83a7 100644 --- a/src/tests/leaktest.py +++ b/src/tests/leaktest.py @@ -1,9 +1,18 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# FIXME: TypeError: 'EventBinding' object is not callable + from __future__ import print_function -import System + +import clr import gc +import System + +from _compat import range + -class LeakTest: +class LeakTest(object): """A leak-check test for the objects implemented in the managed runtime. For each kind of object tested, memory should reach a particular level after warming up and stay essentially the @@ -54,7 +63,7 @@ def report(self): def testModules(self): self.notify("Running module leak check...") - for i in xrange(self.count): + for i in range(self.count): if i == 10: self.start_test() @@ -73,7 +82,7 @@ def testClasses(self): self.notify("Running class leak check...") - for i in xrange(self.count): + for i in range(self.count): if i == 10: self.start_test() @@ -86,7 +95,7 @@ def testClasses(self): del x # Delegate type - x = StringDelegate(hello) + x = StringDelegate(hello_func) del x self.end_test() @@ -96,7 +105,7 @@ def testEnumerations(self): self.notify("Running enum leak check...") - for i in xrange(self.count): + for i in range(self.count): if i == 10: self.start_test() @@ -131,7 +140,7 @@ def testEvents(self): self.notify("Running event leak check...") - for i in xrange(self.count): + for i in range(self.count): if i == 10: self.start_test() @@ -210,13 +219,13 @@ def testDelegates(self): self.notify("Running delegate leak check...") - for i in xrange(self.count): + for i in range(self.count): if i == 10: self.start_test() # Delegate from function testob = DelegateTest() - d = StringDelegate(hello) + d = StringDelegate(hello_func) testob.CallStringDelegate(d) testob.stringDelegate = d testob.stringDelegate() @@ -225,7 +234,7 @@ def testDelegates(self): del d # Delegate from instance method - inst = Hello() + inst = HelloClass() testob = DelegateTest() d = StringDelegate(inst.hello) testob.CallStringDelegate(d) @@ -238,7 +247,7 @@ def testDelegates(self): # Delegate from static method testob = DelegateTest() - d = StringDelegate(Hello.s_hello) + d = StringDelegate(HelloClass.s_hello) testob.CallStringDelegate(d) testob.stringDelegate = d testob.stringDelegate() @@ -248,7 +257,7 @@ def testDelegates(self): # Delegate from class method testob = DelegateTest() - d = StringDelegate(Hello.c_hello) + d = StringDelegate(HelloClass.c_hello) testob.CallStringDelegate(d) testob.stringDelegate = d testob.stringDelegate() @@ -257,7 +266,7 @@ def testDelegates(self): del d # Delegate from callable object - inst = Hello() + inst = HelloClass() testob = DelegateTest() d = StringDelegate(inst) testob.CallStringDelegate(d) @@ -290,7 +299,7 @@ def testDelegates(self): # Nested delegates testob = DelegateTest() - d1 = StringDelegate(hello) + d1 = StringDelegate(hello_func) d2 = StringDelegate(d1) testob.CallStringDelegate(d2) testob.stringDelegate = d2 @@ -302,8 +311,8 @@ def testDelegates(self): # Multicast delegates testob = DelegateTest() - d1 = StringDelegate(hello) - d2 = StringDelegate(hello) + d1 = StringDelegate(hello_func) + d2 = StringDelegate(hello_func) md = System.Delegate.Combine(d1, d2) testob.CallStringDelegate(md) testob.stringDelegate = md @@ -317,7 +326,7 @@ def testDelegates(self): self.end_test() -class GenericHandler: +class GenericHandler(object): """A generic handler to test event callbacks.""" def __init__(self): @@ -327,7 +336,7 @@ def handler(self, sender, args): self.value = args.value -class VariableArgsHandler: +class VariableArgsHandler(object): """A variable args handler to test event callbacks.""" def __init__(self): @@ -338,7 +347,7 @@ def handler(self, *args): self.value = eventargs.value -class CallableHandler: +class CallableHandler(object): """A callable handler to test event callbacks.""" def __init__(self): @@ -348,7 +357,7 @@ def __call__(self, sender, args): self.value = args.value -class VarCallableHandler: +class VarCallableHandler(object): """A variable args callable handler to test event callbacks.""" def __init__(self): @@ -381,7 +390,7 @@ def handler(cls, sender, args): handler = classmethod(handler) -class Hello: +class HelloClass(object): def hello(self): return "hello" @@ -399,7 +408,7 @@ def c_hello(cls): c_hello = classmethod(c_hello) -def hello(): +def hello_func(): return "hello" diff --git a/src/tests/profile.py b/src/tests/profile.py index 6117b9616..ddc076e7b 100644 --- a/src/tests/profile.py +++ b/src/tests/profile.py @@ -1,14 +1,25 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# FIXME: FAIL: testImplicitAssemblyLoad AssertionError: 0 != 1 + """Run all of the unit tests for this package over and over, - in order to provide for better profiling.""" + in order to provide for better profiling. +""" + from __future__ import print_function +import gc +import os +import sys +import time -def main(): - import sys, os, gc, time +import runtests +from _compat import range + +def main(): dirname = os.path.split(__file__) sys.path.append(dirname) - import runtests gc.set_debug(gc.DEBUG_LEAK) @@ -28,4 +39,3 @@ def main(): if __name__ == '__main__': main() - sys.exit(0) diff --git a/src/tests/runtests.py b/src/tests/runtests.py index 660d3442d..57d2e0767 100644 --- a/src/tests/runtests.py +++ b/src/tests/runtests.py @@ -1,11 +1,15 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + """Run all of the unit tests for this package.""" +from __future__ import print_function + import os import sys import unittest -import warnfilter -warnfilter.addClrWarnfilter() +from _compat import input try: import System @@ -14,16 +18,17 @@ import clr test_modules = ( - 'test_module', # Passes on its own, but not here if + # Passes on its own, but not here if # other test modules that import System.Windows.Forms # run first. They must not do module level import/AddReference() # of the System.Windows.Forms namespace. + 'test_module', + 'test_suite', 'test_event', 'test_constructors', 'test_enum', 'test_method', - 'test_exceptions', 'test_compat', 'test_generic', @@ -35,11 +40,18 @@ 'test_indexer', 'test_delegate', 'test_array', - 'test_thread' + 'test_thread', + 'test_docstring', + + # FIXME: Fails due to unhandled exception + # 'test_engine', + + # FIXME: Fails in Linux + # 'test_subclass', ) -def removePyc(): +def remove_pyc(): path = os.path.dirname(os.path.abspath(__file__)) for name in test_modules: pyc = os.path.join(path, "%s.pyc" % name) @@ -48,7 +60,7 @@ def removePyc(): def main(verbosity=1): - removePyc() + remove_pyc() suite = unittest.TestSuite() @@ -62,7 +74,7 @@ def main(verbosity=1): if __name__ == '__main__': - main(1) + main() if '--pause' in sys.argv: print("Press enter to continue") - raw_input() + input() diff --git a/src/tests/stress.py b/src/tests/stress.py index dba74a6df..ebc975d38 100644 --- a/src/tests/stress.py +++ b/src/tests/stress.py @@ -1,15 +1,32 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# FIXME: FAIL: testImplicitAssemblyLoad AssertionError: 0 != 1 + """ Run all of the unit tests for this package multiple times in a highly -multithreaded way to stress the system. This makes it possible to look +multi-threaded way to stress the system. This makes it possible to look for memory leaks and threading issues and provides a good target for a profiler to accumulate better data. """ + from __future__ import print_function -import sys, os, gc, time, threading, thread +import gc +import os +import sys +import threading +import time + +from _compat import range, thread -class StressTest: +def dprint(msg): + # Debugging helper to trace thread-related tests. + if 1: + print(msg) + + +class StressTest(object): def __init__(self): self.dirname = os.path.split(__file__)[0] sys.path.append(self.dirname) @@ -18,10 +35,6 @@ def __init__(self): self.module = runtests self.done = [] - def dprint(self, msg): - # Debugging helper to trace thread-related tests. - if 1: print(msg) - def markStart(self): self._start = time.clock() @@ -37,23 +50,23 @@ def printGCReport(self): def runThread(self, iterations): thread_id = thread.get_ident() - self.dprint("thread %s starting..." % thread_id) + dprint("thread %s starting..." % thread_id) time.sleep(0.1) for i in range(iterations): - self.dprint("thread %s iter %d start" % (thread_id, i)) + dprint("thread %s iter %d start" % (thread_id, i)) self.module.main() - self.dprint("thread %s iter %d end" % (thread_id, i)) + dprint("thread %s iter %d end" % (thread_id, i)) self.done.append(None) - self.dprint("thread %s done" % thread_id) + dprint("thread %s done" % thread_id) def stressTest(self, iterations=1, threads=1): args = (iterations,) self.markStart() - for i in range(threads): + for _ in range(threads): thread = threading.Thread(target=self.runThread, args=args) thread.start() while len(self.done) < (iterations * threads): - self.dprint(len(self.done)) + dprint(len(self.done)) time.sleep(0.1) self.markFinish() took = self.elapsed() @@ -67,4 +80,3 @@ def main(): if __name__ == '__main__': main() - sys.exit(0) diff --git a/src/tests/stresstest.py b/src/tests/stresstest.py index bdb7c3e70..6a4d6684a 100644 --- a/src/tests/stresstest.py +++ b/src/tests/stresstest.py @@ -1,36 +1,53 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# FIXME: FAIL: testImplicitAssemblyLoad AssertionError: 0 != 1 + """Basic stress test.""" +from __future__ import print_function + +import gc +import time +import unittest +# import pdb + +from _compat import range + +try: + import System +except ImportError: + print("Load clr import hook") + import clr + def main(): - import time start = time.clock() for i in range(2000): print(i) for name in ( - 'test_module', - 'test_conversion', - # 'test_class', - 'test_interface', - 'test_enum', - 'test_field', - 'test_property', - 'test_indexer', - 'test_event', - 'test_method', - # 'test_delegate', - 'test_array', + 'test_module', + 'test_conversion', + # 'test_class', + 'test_interface', + 'test_enum', + 'test_field', + 'test_property', + 'test_indexer', + 'test_event', + 'test_method', + # 'test_delegate', + 'test_array', ): module = __import__(name) - module.main() + unittest.TextTestRunner().run(module.test_suite()) - # import pdb; pdb.set_trace() + # pdb.set_trace() stop = time.clock() took = str(stop - start) - print 'Total Time: %s' % took + print('Total Time: %s' % took) - import gc for i in gc.get_objects(): print(i) diff --git a/src/tests/test_array.py b/src/tests/test_array.py index 9e396d7ed..4e9a7ac5e 100644 --- a/src/tests/test_array.py +++ b/src/tests/test_array.py @@ -1,4 +1,6 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- + +import unittest import Python.Test as Test import System import six diff --git a/src/tests/test_class.py b/src/tests/test_class.py index 9e2af14da..494f59a9a 100644 --- a/src/tests/test_class.py +++ b/src/tests/test_class.py @@ -1,3 +1,5 @@ +# -*- coding: utf-8 -*- + import clr import types import unittest @@ -202,7 +204,7 @@ def __setitem__(self, key, value): self.assertTrue(table.Count == 3) def testAddAndRemoveClassAttribute(self): - + from System import TimeSpan for i in range(100): @@ -260,7 +262,7 @@ def DoCallback(self): def PyCallback(self, self2): self.PyCallbackWasCalled = True self.SameReference = self == self2 - + testobj = CallbackUser() testobj.DoCallback() self.assertTrue(testobj.PyCallbackWasCalled) diff --git a/src/tests/test_compat.py b/src/tests/test_compat.py index 8c74b855a..84dcc6884 100644 --- a/src/tests/test_compat.py +++ b/src/tests/test_compat.py @@ -1,4 +1,7 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- + +import unittest +import types import six if six.PY3: diff --git a/src/tests/test_constructors.py b/src/tests/test_constructors.py index 6e02528bb..e8cbe1ea7 100644 --- a/src/tests/test_constructors.py +++ b/src/tests/test_constructors.py @@ -1,4 +1,6 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- + +import unittest import clr clr.AddReference("Python.Test") diff --git a/src/tests/test_conversion.py b/src/tests/test_conversion.py index a00a91c48..92bad1dcc 100644 --- a/src/tests/test_conversion.py +++ b/src/tests/test_conversion.py @@ -1,4 +1,6 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- + +import unittest from Python.Test import ConversionTest import System import six diff --git a/src/tests/test_delegate.py b/src/tests/test_delegate.py index 26b85ec5e..ac3d73a91 100644 --- a/src/tests/test_delegate.py +++ b/src/tests/test_delegate.py @@ -1,3 +1,5 @@ +# -*- coding: utf-8 -*- + import clr clr.AddReference('Python.Test') @@ -5,7 +7,8 @@ from Python.Test import DelegateTest, PublicDelegate from Python.Test import StringDelegate, ObjectDelegate from Python.Test import BoolDelegate -import sys, os, string, unittest, types +import unittest +import types import Python.Test as Test import System import six diff --git a/src/tests/test_docstring.py b/src/tests/test_docstring.py index 9eaea09bb..ac0512d10 100644 --- a/src/tests/test_docstring.py +++ b/src/tests/test_docstring.py @@ -1,3 +1,5 @@ +# -*- coding: utf-8 -*- + import unittest import clr diff --git a/src/tests/test_engine.py b/src/tests/test_engine.py index 43437c779..6c0928720 100644 --- a/src/tests/test_engine.py +++ b/src/tests/test_engine.py @@ -1,4 +1,7 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- + +import sys +import unittest from Python.Runtime import PythonEngine @@ -9,9 +12,9 @@ class EngineTests(unittest.TestCase): def testMultipleCallsToInitialize(self): """Test that multiple initialize calls are harmless.""" - PythonEngine.Initialize(); - PythonEngine.Initialize(); - PythonEngine.Initialize(); + PythonEngine.Initialize() + PythonEngine.Initialize() + PythonEngine.Initialize() def testImportModule(self): """Test module import.""" diff --git a/src/tests/test_enum.py b/src/tests/test_enum.py index fae32bbe6..34a70db45 100644 --- a/src/tests/test_enum.py +++ b/src/tests/test_enum.py @@ -1,4 +1,7 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- + +import unittest +import types from System import DayOfWeek from Python import Test import six diff --git a/src/tests/test_event.py b/src/tests/test_event.py index c68f9629a..874b37b54 100644 --- a/src/tests/test_event.py +++ b/src/tests/test_event.py @@ -1,8 +1,10 @@ +# -*- coding: utf-8 -*- + import clr clr.AddReference('Python.Test') -import sys, os, string, unittest, types +import unittest from Python.Test import EventTest, TestEventHandler from Python.Test import TestEventArgs diff --git a/src/tests/test_exceptions.py b/src/tests/test_exceptions.py index eedf2aa61..2c89e1351 100644 --- a/src/tests/test_exceptions.py +++ b/src/tests/test_exceptions.py @@ -1,4 +1,7 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- + +import sys +import unittest import System import six diff --git a/src/tests/test_field.py b/src/tests/test_field.py index d765e3888..0b6163ebd 100644 --- a/src/tests/test_field.py +++ b/src/tests/test_field.py @@ -1,4 +1,7 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- + +import unittest +import types from Python.Test import FieldTest from Python.Test import ShortEnum import System @@ -15,7 +18,7 @@ class FieldTests(unittest.TestCase): def testPublicInstanceField(self): """Test public instance fields.""" - object = FieldTest(); + object = FieldTest() self.assertTrue(object.PublicField == 0) object.PublicField = 1 @@ -28,7 +31,7 @@ def test(): def testPublicStaticField(self): """Test public static fields.""" - object = FieldTest(); + object = FieldTest() self.assertTrue(FieldTest.PublicStaticField == 0) FieldTest.PublicStaticField = 1 @@ -50,7 +53,7 @@ def test(): def testProtectedInstanceField(self): """Test protected instance fields.""" - object = FieldTest(); + object = FieldTest() self.assertTrue(object.ProtectedField == 0) object.ProtectedField = 1 @@ -63,7 +66,7 @@ def test(): def testProtectedStaticField(self): """Test protected static fields.""" - object = FieldTest(); + object = FieldTest() self.assertTrue(FieldTest.ProtectedStaticField == 0) FieldTest.ProtectedStaticField = 1 @@ -99,7 +102,7 @@ def test(): def testReadOnlyStaticField(self): """Test readonly static fields.""" - object = FieldTest(); + object = FieldTest() self.assertTrue(FieldTest.ReadOnlyStaticField == 0) self.assertTrue(object.ReadOnlyStaticField == 0) @@ -126,7 +129,7 @@ def test(): def testConstantField(self): """Test const fields.""" - object = FieldTest(); + object = FieldTest() self.assertTrue(FieldTest.ConstField == 0) self.assertTrue(object.ConstField == 0) diff --git a/src/tests/test_generic.py b/src/tests/test_generic.py index 1e8b58f21..92e028e47 100644 --- a/src/tests/test_generic.py +++ b/src/tests/test_generic.py @@ -1,9 +1,11 @@ +# -*- coding: utf-8 -*- + import clr clr.AddReference('Python.Test') from System.Collections.Generic import Dictionary, List -import sys, os, string, unittest, types +import unittest import Python.Test as Test import System import six diff --git a/src/tests/test_indexer.py b/src/tests/test_indexer.py index 5e74c76f0..23a722291 100644 --- a/src/tests/test_indexer.py +++ b/src/tests/test_indexer.py @@ -1,4 +1,6 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- + +import unittest import clr clr.AddReference("Python.Test") diff --git a/src/tests/test_interface.py b/src/tests/test_interface.py index 1e495fe25..58b9ac56f 100644 --- a/src/tests/test_interface.py +++ b/src/tests/test_interface.py @@ -1,5 +1,8 @@ +# -*- coding: utf-8 -*- + from Python.Test import InterfaceTest -import sys, os, string, unittest, types +import unittest +import types import Python.Test as Test import System import six diff --git a/src/tests/test_method.py b/src/tests/test_method.py index 4728d13e4..6429bd246 100644 --- a/src/tests/test_method.py +++ b/src/tests/test_method.py @@ -1,4 +1,6 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- + +import unittest import clr clr.AddReference("Python.Test") @@ -63,23 +65,23 @@ def test(): def testPublicInstanceMethod(self): """Test public instance method visibility.""" - object = MethodTest(); + object = MethodTest() self.assertTrue(object.PublicMethod() == "public") def testPublicStaticMethod(self): """Test public static method visibility.""" - object = MethodTest(); + object = MethodTest() self.assertTrue(MethodTest.PublicStaticMethod() == "public static") self.assertTrue(object.PublicStaticMethod() == "public static") def testProtectedInstanceMethod(self): """Test protected instance method visibility.""" - object = MethodTest(); + object = MethodTest() self.assertTrue(object.ProtectedMethod() == "protected") def testProtectedStaticMethod(self): """Test protected static method visibility.""" - object = MethodTest(); + object = MethodTest() result = "protected static" self.assertTrue(MethodTest.ProtectedStaticMethod() == result) self.assertTrue(object.ProtectedStaticMethod() == result) @@ -141,7 +143,7 @@ def test(): self.assertRaises(TypeError, test) - object = MethodTestSub(); + object = MethodTestSub() self.assertTrue(MethodTestSub.PublicMethod(object) == "public") self.assertTrue(MethodTestSub.PublicMethod(object, "echo") == "echo") @@ -162,7 +164,7 @@ def test(): self.assertRaises(TypeError, test) - object = MethodTestSub(); + object = MethodTestSub() self.assertTrue(object.PublicMethod() == "public") self.assertTrue(object.PublicMethod("echo") == "echo") @@ -761,14 +763,14 @@ def test(): def testWeCanBindToEncodingGetString(self): """Check that we can bind to the Encoding.GetString method with variables.""" - + from System.Text import Encoding from System.IO import MemoryStream myBytes = Encoding.UTF8.GetBytes('Some testing string') stream = MemoryStream() stream.Write(myBytes, 0, myBytes.Length) stream.Position = 0 - + buff = System.Array.CreateInstance(System.Byte, 3) buff.Initialize() data = [] diff --git a/src/tests/test_module.py b/src/tests/test_module.py index fff044f0c..fc0877265 100644 --- a/src/tests/test_module.py +++ b/src/tests/test_module.py @@ -1,3 +1,5 @@ +# -*- coding: utf-8 -*- + import clr clr.AddReference('Python.Test') @@ -5,7 +7,9 @@ # testImplicitAssemblyLoad() passes on deprecation warning; perfect! # ##clr.AddReference('System.Windows.Forms') -import sys, os, string, unittest, types, warnings +import unittest +import types +import warnings from fnmatch import fnmatch import six diff --git a/src/tests/test_property.py b/src/tests/test_property.py index 5bb653848..64bc7e946 100644 --- a/src/tests/test_property.py +++ b/src/tests/test_property.py @@ -1,4 +1,7 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- +# +import unittest +import types from Python.Test import PropertyTest import six @@ -13,7 +16,7 @@ class PropertyTests(unittest.TestCase): def testPublicInstanceProperty(self): """Test public instance properties.""" - object = PropertyTest(); + object = PropertyTest() self.assertTrue(object.PublicProperty == 0) object.PublicProperty = 1 @@ -26,7 +29,7 @@ def test(): def testPublicStaticProperty(self): """Test public static properties.""" - object = PropertyTest(); + object = PropertyTest() self.assertTrue(PropertyTest.PublicStaticProperty == 0) PropertyTest.PublicStaticProperty = 1 @@ -48,7 +51,7 @@ def test(): def testProtectedInstanceProperty(self): """Test protected instance properties.""" - object = PropertyTest(); + object = PropertyTest() self.assertTrue(object.ProtectedProperty == 0) object.ProtectedProperty = 1 @@ -61,7 +64,7 @@ def test(): def testProtectedStaticProperty(self): """Test protected static properties.""" - object = PropertyTest(); + object = PropertyTest() self.assertTrue(PropertyTest.ProtectedStaticProperty == 0) PropertyTest.ProtectedStaticProperty = 1 diff --git a/src/tests/test_subclass.py b/src/tests/test_subclass.py index c486a0fc3..a6eedb101 100644 --- a/src/tests/test_subclass.py +++ b/src/tests/test_subclass.py @@ -1,9 +1,11 @@ +# -*- coding: utf-8 -*- + import clr clr.AddReference('Python.Test') clr.AddReference('System') -import sys, os, string, unittest, types +import unittest from Python.Test import TestFunctions, SubClassTest, IInterfaceTest, TestEventArgs from System.Collections.Generic import List from System import NotImplementedException diff --git a/src/tests/test_suite/__init__.py b/src/tests/test_suite/__init__.py index 5b1cc4ae4..16a3a4cf8 100644 --- a/src/tests/test_suite/__init__.py +++ b/src/tests/test_suite/__init__.py @@ -1,14 +1,17 @@ +# -*- coding: utf-8 -*- + import unittest __all__ = ['test_suite'] from .test_import import test_suite as import_tests from .test_callback import test_suite as callback_tests -from .test_recursiveTypes import test_suite as recursiveTypes_tests +from .test_recursive_types import test_suite as recursive_types_tests + def test_suite(): suite = unittest.TestSuite() suite.addTests((import_tests(),)) suite.addTests((callback_tests(),)) - suite.addTests((recursiveTypes_tests(),)) - return suite \ No newline at end of file + suite.addTests((recursive_types_tests(),)) + return suite diff --git a/src/tests/test_suite/_missing_import.py b/src/tests/test_suite/_missing_import.py index 629ff95be..a104cda49 100644 --- a/src/tests/test_suite/_missing_import.py +++ b/src/tests/test_suite/_missing_import.py @@ -1,2 +1,3 @@ +# -*- coding: utf-8 -*- -import this_package_should_never_exist_ever \ No newline at end of file +import this_package_should_never_exist_ever diff --git a/src/tests/test_suite/test_callback.py b/src/tests/test_suite/test_callback.py index 16c45914d..96070012f 100644 --- a/src/tests/test_suite/test_callback.py +++ b/src/tests/test_suite/test_callback.py @@ -1,15 +1,21 @@ -import unittest, sys +# -*- coding: utf-8 -*- + +import unittest +import sys import clr this_module = sys.modules[__name__] clr.AddReference("Python.Test") import Python.Test as Test from Python.Test import CallbackTest + test_instance = CallbackTest() -def simpleDefaultArg(arg = 'test'): + +def simpleDefaultArg(arg='test'): return arg + class CallbackTests(unittest.TestCase): """Test that callbacks from C# into python work.""" @@ -25,6 +31,6 @@ def testDefaultForNone(self): pythonRetVal = simpleDefaultArg() self.assertEquals(retVal, pythonRetVal) + def test_suite(): return unittest.makeSuite(CallbackTests) - diff --git a/src/tests/test_suite/test_import.py b/src/tests/test_suite/test_import.py index b6d155af3..f3ffbc870 100644 --- a/src/tests/test_suite/test_import.py +++ b/src/tests/test_suite/test_import.py @@ -1,10 +1,15 @@ +# -*- coding: utf-8 -*- + import unittest + class ImportTests(unittest.TestCase): """Test the import statement.""" - def testRealtiveMissingImport(self): - """Test that a relative missing import doesn't crash. Some modules use this to check if a package is installed (realtive import in the site-packages folder""" + def testRelativeMissingImport(self): + """Test that a relative missing import doesn't crash. + Some modules use this to check if a package is installed. + Relative import in the site-packages folder""" try: from . import _missing_import except ImportError: @@ -13,4 +18,3 @@ def testRealtiveMissingImport(self): def test_suite(): return unittest.makeSuite(ImportTests) - diff --git a/src/tests/test_suite/test_recursiveTypes.py b/src/tests/test_suite/test_recursive_types.py similarity index 77% rename from src/tests/test_suite/test_recursiveTypes.py rename to src/tests/test_suite/test_recursive_types.py index 290d7236a..88656f943 100644 --- a/src/tests/test_suite/test_recursiveTypes.py +++ b/src/tests/test_suite/test_recursive_types.py @@ -1,13 +1,20 @@ -import unittest, sys +# -*- coding: utf-8 -*- + +import unittest +import sys import clr this_module = sys.modules[__name__] clr.AddReference("Python.Test") + + class RecursiveTypesTests(unittest.TestCase): """Test if interop with recursive type inheritance works.""" def testRecursiveTypeCreation(self): - """Test that a recursive types don't crash with a StackOverflowException""" + """Test that a recursive types don't crash with a + StackOverflowException""" + import Python.Test as Test from Python.Test import RecursiveInheritance test_instance = RecursiveInheritance.SubClass() @@ -17,4 +24,3 @@ def testRecursiveTypeCreation(self): def test_suite(): return unittest.makeSuite(RecursiveTypesTests) - diff --git a/src/tests/test_thread.py b/src/tests/test_thread.py index 67873d83c..1a0a8963c 100644 --- a/src/tests/test_thread.py +++ b/src/tests/test_thread.py @@ -1,6 +1,12 @@ -import sys, os, string, unittest, types +# -*- coding: utf-8 -*- + +from __future__ import print_function + +import unittest from Python.Test import ThreadTest import six +import threading +import time if six.PY3: import _thread as thread @@ -10,7 +16,8 @@ def dprint(msg): # Debugging helper to trace thread-related tests. - if 0: print(msg) + if 0: + print(msg) class ThreadTests(unittest.TestCase): @@ -34,7 +41,6 @@ def testDoubleCallbackToPython(self): def testPythonThreadCallsToCLR(self): """Test calls by Python-spawned threads into managed code.""" # This test is very likely to hang if something is wrong ;) - import threading, time from System import String done = [] @@ -44,7 +50,7 @@ def run_thread(): time.sleep(0.1) dprint("thread %s %d" % (thread.get_ident(), i)) mstr = String("thread %s %d" % (thread.get_ident(), i)) - pstr = mstr.ToString() + dprint(mstr.ToString()) done.append(None) dprint("thread %s %d done" % (thread.get_ident(), i)) @@ -59,8 +65,6 @@ def start_threads(count): dprint(len(done)) time.sleep(0.1) - return - def test_suite(): return unittest.makeSuite(ThreadTests) diff --git a/src/tests/warnfilter.py b/src/tests/warnfilter.py deleted file mode 100644 index 8e378b86c..000000000 --- a/src/tests/warnfilter.py +++ /dev/null @@ -1,11 +0,0 @@ -"""Warnfilter -""" - -from warnings import filterwarnings -from warnings import resetwarnings - - -def addClrWarnfilter(action="ignore", append=False): - msgs = ["^The CLR module is deprecated.*", "^Importing from the CLR\.\* namespace.*"] - for msg in msgs: - filterwarnings(action, msg, category=DeprecationWarning, append=append) From 0e26b1a43dd81ef7ce6dfcf7d40fa96730855067 Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sat, 21 Jan 2017 18:25:42 -0700 Subject: [PATCH 02/13] Sanitize how to run tests * Remove unsupported entry points * Adds reference to Python.Test by default for all tests * Remove redundant add_reference * Avoid some implicit AddReferences that were being done Not all tests added reference to Python.Test consistently. Solve this by making `run_test` the only supported method. --- src/tests/runtests.py | 4 ++++ src/tests/stresstest.py | 4 ++++ src/tests/test_array.py | 8 -------- src/tests/test_class.py | 9 --------- src/tests/test_compat.py | 17 ----------------- src/tests/test_constructors.py | 12 ------------ src/tests/test_conversion.py | 8 -------- src/tests/test_delegate.py | 12 ------------ src/tests/test_docstring.py | 11 ----------- src/tests/test_engine.py | 8 -------- src/tests/test_enum.py | 8 -------- src/tests/test_event.py | 12 ------------ src/tests/test_exceptions.py | 8 -------- src/tests/test_field.py | 8 -------- src/tests/test_generic.py | 11 ----------- src/tests/test_indexer.py | 10 ---------- src/tests/test_interface.py | 8 -------- src/tests/test_method.py | 11 ----------- src/tests/test_module.py | 16 +++------------- src/tests/test_property.py | 8 -------- src/tests/test_subclass.py | 12 ------------ src/tests/test_thread.py | 9 --------- 22 files changed, 11 insertions(+), 203 deletions(-) diff --git a/src/tests/runtests.py b/src/tests/runtests.py index 57d2e0767..3b7ffa08e 100644 --- a/src/tests/runtests.py +++ b/src/tests/runtests.py @@ -16,6 +16,10 @@ except ImportError: print("Load clr import hook") import clr + clr.AddReference("Python.Test") + clr.AddReference("System.Collections") + clr.AddReference("System.Data") + clr.AddReference("System.Management") test_modules = ( # Passes on its own, but not here if diff --git a/src/tests/stresstest.py b/src/tests/stresstest.py index 6a4d6684a..6c02bf566 100644 --- a/src/tests/stresstest.py +++ b/src/tests/stresstest.py @@ -18,6 +18,10 @@ except ImportError: print("Load clr import hook") import clr + clr.AddReference("Python.Test") + clr.AddReference("System.Collections") + clr.AddReference("System.Data") + clr.AddReference("System.Management") def main(): diff --git a/src/tests/test_array.py b/src/tests/test_array.py index 4e9a7ac5e..57034a8da 100644 --- a/src/tests/test_array.py +++ b/src/tests/test_array.py @@ -1480,11 +1480,3 @@ def test(): def test_suite(): return unittest.makeSuite(ArrayTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_class.py b/src/tests/test_class.py index 494f59a9a..5ff0c0e77 100644 --- a/src/tests/test_class.py +++ b/src/tests/test_class.py @@ -1,6 +1,5 @@ # -*- coding: utf-8 -*- -import clr import types import unittest @@ -280,11 +279,3 @@ def kind(self): def test_suite(): return unittest.makeSuite(ClassTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_compat.py b/src/tests/test_compat.py index 84dcc6884..26852ff72 100644 --- a/src/tests/test_compat.py +++ b/src/tests/test_compat.py @@ -159,9 +159,6 @@ def testDottedNameImportFromWithAlias(self): def testFromModuleImportStar(self): """Test from module import * behavior.""" - import clr - clr.AddReference("System.Management") - count = len(locals().keys()) m = __import__('CLR.System.Management', globals(), locals(), ['*']) self.assertTrue(m.__name__ == 'System.Management') @@ -262,17 +259,3 @@ def test000MultipleImports(self): def test_suite(): return unittest.makeSuite(CompatibilityTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - try: - import System - except ImportError: - print("Load clr import hook") - import clr - - main() diff --git a/src/tests/test_constructors.py b/src/tests/test_constructors.py index e8cbe1ea7..e123c7bdc 100644 --- a/src/tests/test_constructors.py +++ b/src/tests/test_constructors.py @@ -1,10 +1,6 @@ # -*- coding: utf-8 -*- import unittest -import clr - -clr.AddReference("Python.Test") -import Python.Test as Test import System @@ -51,11 +47,3 @@ class sub(System.Exception): def test_suite(): return unittest.makeSuite(ConstructorTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_conversion.py b/src/tests/test_conversion.py index 92bad1dcc..ba45d8e34 100644 --- a/src/tests/test_conversion.py +++ b/src/tests/test_conversion.py @@ -836,11 +836,3 @@ def testSByteArrayConversion(self): def test_suite(): return unittest.makeSuite(ConversionTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_delegate.py b/src/tests/test_delegate.py index ac3d73a91..1123bfdb5 100644 --- a/src/tests/test_delegate.py +++ b/src/tests/test_delegate.py @@ -1,9 +1,5 @@ # -*- coding: utf-8 -*- -import clr - -clr.AddReference('Python.Test') - from Python.Test import DelegateTest, PublicDelegate from Python.Test import StringDelegate, ObjectDelegate from Python.Test import BoolDelegate @@ -319,11 +315,3 @@ def always_so_negative(): def test_suite(): return unittest.makeSuite(DelegateTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_docstring.py b/src/tests/test_docstring.py index ac0512d10..d1be3c681 100644 --- a/src/tests/test_docstring.py +++ b/src/tests/test_docstring.py @@ -1,9 +1,6 @@ # -*- coding: utf-8 -*- import unittest -import clr - -clr.AddReference('Python.Test') from Python.Test import DocWithCtorTest, DocWithoutCtorTest, DocWithCtorNoDocTest @@ -29,11 +26,3 @@ def testDocWithoutCtor(self): def test_suite(): return unittest.makeSuite(DocStringTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_engine.py b/src/tests/test_engine.py index 6c0928720..c38a471fe 100644 --- a/src/tests/test_engine.py +++ b/src/tests/test_engine.py @@ -39,11 +39,3 @@ def testRunString(self): def test_suite(): return unittest.makeSuite(EngineTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_enum.py b/src/tests/test_enum.py index 34a70db45..6eb7e7592 100644 --- a/src/tests/test_enum.py +++ b/src/tests/test_enum.py @@ -148,11 +148,3 @@ def test(): def test_suite(): return unittest.makeSuite(EnumTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_event.py b/src/tests/test_event.py index 874b37b54..2ddcc55d8 100644 --- a/src/tests/test_event.py +++ b/src/tests/test_event.py @@ -1,9 +1,5 @@ # -*- coding: utf-8 -*- -import clr - -clr.AddReference('Python.Test') - import unittest from Python.Test import EventTest, TestEventHandler from Python.Test import TestEventArgs @@ -678,11 +674,3 @@ def handler(self, sender, args): def test_suite(): return unittest.makeSuite(EventTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_exceptions.py b/src/tests/test_exceptions.py index 2c89e1351..9509cef95 100644 --- a/src/tests/test_exceptions.py +++ b/src/tests/test_exceptions.py @@ -372,11 +372,3 @@ def testChainedExceptions(self): def test_suite(): return unittest.makeSuite(ExceptionTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_field.py b/src/tests/test_field.py index 0b6163ebd..bafb27598 100644 --- a/src/tests/test_field.py +++ b/src/tests/test_field.py @@ -426,11 +426,3 @@ def test(): def test_suite(): return unittest.makeSuite(FieldTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_generic.py b/src/tests/test_generic.py index 92e028e47..c80ff5704 100644 --- a/src/tests/test_generic.py +++ b/src/tests/test_generic.py @@ -1,9 +1,6 @@ # -*- coding: utf-8 -*- import clr - -clr.AddReference('Python.Test') - from System.Collections.Generic import Dictionary, List import unittest import Python.Test as Test @@ -795,11 +792,3 @@ def testNestedGenericClass(self): def test_suite(): return unittest.makeSuite(GenericTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_indexer.py b/src/tests/test_indexer.py index 23a722291..f9d16a1c3 100644 --- a/src/tests/test_indexer.py +++ b/src/tests/test_indexer.py @@ -1,9 +1,7 @@ # -*- coding: utf-8 -*- import unittest -import clr -clr.AddReference("Python.Test") import Python.Test as Test import six @@ -679,11 +677,3 @@ def test(): def test_suite(): return unittest.makeSuite(IndexerTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_interface.py b/src/tests/test_interface.py index 58b9ac56f..6c6bb6228 100644 --- a/src/tests/test_interface.py +++ b/src/tests/test_interface.py @@ -77,11 +77,3 @@ def testExplicitCastToInterface(self): def test_suite(): return unittest.makeSuite(InterfaceTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_method.py b/src/tests/test_method.py index 6429bd246..f6806687c 100644 --- a/src/tests/test_method.py +++ b/src/tests/test_method.py @@ -1,9 +1,6 @@ # -*- coding: utf-8 -*- import unittest -import clr - -clr.AddReference("Python.Test") from Python.Test import MethodTest, MethodTestSub import System @@ -786,11 +783,3 @@ def testWeCanBindToEncodingGetString(self): def test_suite(): return unittest.makeSuite(MethodTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_module.py b/src/tests/test_module.py index fc0877265..8eaedf5c9 100644 --- a/src/tests/test_module.py +++ b/src/tests/test_module.py @@ -2,11 +2,6 @@ import clr -clr.AddReference('Python.Test') -clr.AddReference('System.Data') - -# testImplicitAssemblyLoad() passes on deprecation warning; perfect! # -##clr.AddReference('System.Windows.Forms') import unittest import types import warnings @@ -18,6 +13,9 @@ else: ClassType = types.ClassType +# testImplicitAssemblyLoad() passes on deprecation warning; perfect! # +# clr.AddReference('System.Windows.Forms') + class ModuleTests(unittest.TestCase): """Test CLR modules and the CLR import hook.""" @@ -383,11 +381,3 @@ def test_AssemblyLoadThreadSafety(self): def test_suite(): return unittest.makeSuite(ModuleTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_property.py b/src/tests/test_property.py index 64bc7e946..9ed2a5207 100644 --- a/src/tests/test_property.py +++ b/src/tests/test_property.py @@ -179,11 +179,3 @@ def testInterfaceProperty(self): def test_suite(): return unittest.makeSuite(PropertyTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_subclass.py b/src/tests/test_subclass.py index a6eedb101..f99c4cdc6 100644 --- a/src/tests/test_subclass.py +++ b/src/tests/test_subclass.py @@ -1,10 +1,6 @@ # -*- coding: utf-8 -*- import clr - -clr.AddReference('Python.Test') -clr.AddReference('System') - import unittest from Python.Test import TestFunctions, SubClassTest, IInterfaceTest, TestEventArgs from System.Collections.Generic import List @@ -167,11 +163,3 @@ def test_isinstance(self): def test_suite(): return unittest.makeSuite(SubClassTests) - - -def main(): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() diff --git a/src/tests/test_thread.py b/src/tests/test_thread.py index 1a0a8963c..ba91e3bee 100644 --- a/src/tests/test_thread.py +++ b/src/tests/test_thread.py @@ -68,12 +68,3 @@ def start_threads(count): def test_suite(): return unittest.makeSuite(ThreadTests) - - -def main(): - for i in range(50): - unittest.TextTestRunner().run(test_suite()) - - -if __name__ == '__main__': - main() From 8f2954429a75551f0a58625be78b7a0f0a7a7d1c Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sat, 21 Jan 2017 18:50:36 -0700 Subject: [PATCH 03/13] Remove dependency on six Remove six.u(...), six.b(...) Not needed since dropped older python versions --- .travis.yml | 2 +- appveyor.yml | 2 +- src/tests/test_array.py | 26 +++++----------------- src/tests/test_class.py | 7 +----- src/tests/test_compat.py | 20 +++++++---------- src/tests/test_conversion.py | 42 ++++++++++++++++-------------------- src/tests/test_delegate.py | 8 +------ src/tests/test_enum.py | 9 +------- src/tests/test_exceptions.py | 32 +++++++++++---------------- src/tests/test_field.py | 21 ++++++------------ src/tests/test_generic.py | 29 +++++++++++-------------- src/tests/test_indexer.py | 22 ++++++++----------- src/tests/test_interface.py | 8 +------ src/tests/test_method.py | 19 +++++++--------- src/tests/test_module.py | 27 +++++++++++------------ src/tests/test_property.py | 13 +++-------- src/tests/test_thread.py | 6 +----- 17 files changed, 103 insertions(+), 190 deletions(-) diff --git a/.travis.yml b/.travis.yml index 418e50cfc..1b5806d59 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,7 +25,7 @@ addons: - nunit-console install: - - pip install pycparser coverage codecov six + - pip install pycparser coverage codecov - coverage run setup.py build_ext --inplace script: diff --git a/appveyor.yml b/appveyor.yml index a8827aee7..2795a94f8 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -46,7 +46,7 @@ init: install: # install for wheels & coverage - - pip install --upgrade pip wheel coverage codecov six + - pip install --upgrade pip wheel coverage codecov # Install OpenCover. Can't put on packages.config; not Linux/Mono compatible - .\tools\nuget\nuget.exe install OpenCover -OutputDirectory packages diff --git a/src/tests/test_array.py b/src/tests/test_array.py index 57034a8da..03440ca6e 100644 --- a/src/tests/test_array.py +++ b/src/tests/test_array.py @@ -3,11 +3,7 @@ import unittest import Python.Test as Test import System -import six - -if six.PY3: - long = int - unichr = chr +from _compat import UserList, PY2, long, unichr class ArrayTests(unittest.TestCase): @@ -1098,10 +1094,6 @@ def testSequenceArrayConversion(self): """Test conversion of sequence-like objects to array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam - if six.PY3: - from collections import UserList - else: - from UserList import UserList items = UserList() for i in range(10): @@ -1115,10 +1107,6 @@ def testSequenceNestedArrayConversion(self): """Test conversion of sequences to array-of-array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam - if six.PY3: - from collections import UserList - else: - from UserList import UserList items = UserList() for i in range(10): @@ -1204,10 +1192,6 @@ def testSequenceArrayConversionTypeChecking(self): """Test error handling for sequence conversion to array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam - if six.PY3: - from collections import UserList - else: - from UserList import UserList # This should work, because null / None is a valid value in an # array of reference types. @@ -1322,9 +1306,9 @@ def testSpecialArrayCreation(self): self.assertTrue(value[1] == 127) self.assertTrue(value.Length == 2) - value = Array[System.Char]([six.u('A'), six.u('Z')]) - self.assertTrue(value[0] == six.u('A')) - self.assertTrue(value[1] == six.u('Z')) + value = Array[System.Char]([u'A', u'Z']) + self.assertTrue(value[0] == u'A') + self.assertTrue(value[1] == u'Z') self.assertTrue(value.Length == 2) value = Array[System.Char]([0, 65535]) @@ -1353,7 +1337,7 @@ def testSpecialArrayCreation(self): self.assertTrue(value.Length == 2) # there's no explicit long type in python3, use System.Int64 instead - if not six.PY3: + if PY2: value = Array[long]([0, long(9223372036854775807)]) self.assertTrue(value[0] == 0) self.assertTrue(value[1] == long(9223372036854775807)) diff --git a/src/tests/test_class.py b/src/tests/test_class.py index 5ff0c0e77..30972d111 100644 --- a/src/tests/test_class.py +++ b/src/tests/test_class.py @@ -1,18 +1,13 @@ # -*- coding: utf-8 -*- -import types import unittest import Python.Test as Test import System -import six from Python.Test import ClassTest from System.Collections import Hashtable -if six.PY3: - DictProxyType = type(object.__dict__) -else: - DictProxyType = types.DictProxyType +from _compat import DictProxyType class ClassTests(unittest.TestCase): diff --git a/src/tests/test_compat.py b/src/tests/test_compat.py index 26852ff72..571d54717 100644 --- a/src/tests/test_compat.py +++ b/src/tests/test_compat.py @@ -2,12 +2,7 @@ import unittest import types -import six - -if six.PY3: - ClassType = type -else: - ClassType = types.ClassType +from _compat import PY2, PY3, ClassType class CompatibilityTests(unittest.TestCase): @@ -19,10 +14,11 @@ def isCLRModule(self, object): return type(object).__name__ == 'ModuleObject' def isCLRRootModule(self, object): - if six.PY3: + if PY3: # in Python 3 the clr module is a normal python module return object.__name__ == "clr" - return type(object).__name__ == 'CLRModule' + elif PY2: + return type(object).__name__ == 'CLRModule' def isCLRClass(self, object): return type(object).__name__ == 'CLR Metatype' # for now @@ -39,12 +35,12 @@ def testSimpleImport(self): self.assertTrue(type(sys) == types.ModuleType) self.assertTrue(sys.__name__ == 'sys') - if six.PY3: + if PY3: import http.client self.assertTrue(type(http.client) == types.ModuleType) self.assertTrue(http.client.__name__ == 'http.client') - else: + elif PY2: import httplib self.assertTrue(type(httplib) == types.ModuleType) self.assertTrue(httplib.__name__ == 'httplib') @@ -59,12 +55,12 @@ def testSimpleImportWithAlias(self): self.assertTrue(type(mySys) == types.ModuleType) self.assertTrue(mySys.__name__ == 'sys') - if six.PY3: + if PY3: import http.client as myHttplib self.assertTrue(type(myHttplib) == types.ModuleType) self.assertTrue(myHttplib.__name__ == 'http.client') - else: + elif PY2: import httplib as myHttplib self.assertTrue(type(myHttplib) == types.ModuleType) self.assertTrue(myHttplib.__name__ == 'httplib') diff --git a/src/tests/test_conversion.py b/src/tests/test_conversion.py index ba45d8e34..9aceb9c11 100644 --- a/src/tests/test_conversion.py +++ b/src/tests/test_conversion.py @@ -3,11 +3,7 @@ import unittest from Python.Test import ConversionTest import System -import six - -if six.PY3: - long = int - unichr = chr +from _compat import indexbytes, long, unichr class ConversionTests(unittest.TestCase): @@ -171,16 +167,16 @@ def testCharConversion(self): self.assertTrue(System.Char.MinValue == unichr(0)) object = ConversionTest() - self.assertTrue(object.CharField == six.u('A')) + self.assertTrue(object.CharField == u'A') object.CharField = 'B' - self.assertTrue(object.CharField == six.u('B')) + self.assertTrue(object.CharField == u'B') - object.CharField = six.u('B') - self.assertTrue(object.CharField == six.u('B')) + object.CharField = u'B' + self.assertTrue(object.CharField == u'B') object.CharField = 67 - self.assertTrue(object.CharField == six.u('C')) + self.assertTrue(object.CharField == u'C') def test(): ConversionTest().CharField = 65536 @@ -644,25 +640,25 @@ def testStringConversion(self): object = ConversionTest() self.assertTrue(object.StringField == "spam") - self.assertTrue(object.StringField == six.u("spam")) + self.assertTrue(object.StringField == u"spam") object.StringField = "eggs" self.assertTrue(object.StringField == "eggs") - self.assertTrue(object.StringField == six.u("eggs")) + self.assertTrue(object.StringField == u"eggs") - object.StringField = six.u("spam") + object.StringField = u"spam" self.assertTrue(object.StringField == "spam") - self.assertTrue(object.StringField == six.u("spam")) + self.assertTrue(object.StringField == u"spam") - object.StringField = six.u('\uffff\uffff') - self.assertTrue(object.StringField == six.u('\uffff\uffff')) + object.StringField = u'\uffff\uffff' + self.assertTrue(object.StringField == u'\uffff\uffff') object.StringField = System.String("spam") self.assertTrue(object.StringField == "spam") - self.assertTrue(object.StringField == six.u("spam")) + self.assertTrue(object.StringField == u"spam") - object.StringField = System.String(six.u('\uffff\uffff')) - self.assertTrue(object.StringField == six.u('\uffff\uffff')) + object.StringField = System.String(u'\uffff\uffff') + self.assertTrue(object.StringField == u'\uffff\uffff') object.StringField = None self.assertTrue(object.StringField == None) @@ -809,11 +805,11 @@ def testByteArrayConversion(self): self.assertTrue(array[0] == 0) self.assertTrue(array[4] == 4) - value = six.b("testing") + value = b"testing" object.ByteArrayField = value array = object.ByteArrayField for i in range(len(value)): - self.assertTrue(array[i] == six.indexbytes(value, i)) + self.assertTrue(array[i] == indexbytes(value, i)) def testSByteArrayConversion(self): """Test sbyte array conversion.""" @@ -827,11 +823,11 @@ def testSByteArrayConversion(self): self.assertTrue(array[0] == 0) self.assertTrue(array[4] == 4) - value = six.b("testing") + value = b"testing" object.SByteArrayField = value array = object.SByteArrayField for i in range(len(value)): - self.assertTrue(array[i] == six.indexbytes(value, i)) + self.assertTrue(array[i] == indexbytes(value, i)) def test_suite(): diff --git a/src/tests/test_delegate.py b/src/tests/test_delegate.py index 1123bfdb5..c9816da03 100644 --- a/src/tests/test_delegate.py +++ b/src/tests/test_delegate.py @@ -4,15 +4,9 @@ from Python.Test import StringDelegate, ObjectDelegate from Python.Test import BoolDelegate import unittest -import types import Python.Test as Test import System -import six - -if six.PY3: - DictProxyType = type(object.__dict__) -else: - DictProxyType = types.DictProxyType +from _compat import DictProxyType class DelegateTests(unittest.TestCase): diff --git a/src/tests/test_enum.py b/src/tests/test_enum.py index 6eb7e7592..dfc55a655 100644 --- a/src/tests/test_enum.py +++ b/src/tests/test_enum.py @@ -1,16 +1,9 @@ # -*- coding: utf-8 -*- import unittest -import types from System import DayOfWeek from Python import Test -import six - -if six.PY3: - DictProxyType = type(object.__dict__) - long = int -else: - DictProxyType = types.DictProxyType +from _compat import DictProxyType, long class EnumTests(unittest.TestCase): diff --git a/src/tests/test_exceptions.py b/src/tests/test_exceptions.py index 9509cef95..0c4078fb5 100644 --- a/src/tests/test_exceptions.py +++ b/src/tests/test_exceptions.py @@ -3,10 +3,7 @@ import sys import unittest import System -import six - -if six.PY3: - unicode = str +from _compat import PY2, PY3, pickle, text_type class ExceptionTests(unittest.TestCase): @@ -17,7 +14,7 @@ def testUnifiedExceptionSemantics(self): from System import Exception, Object e = Exception('Something bad happened') - if not six.PY3: + if PY2: import exceptions self.assertTrue(isinstance(e, exceptions.Exception)) self.assertTrue(isinstance(e, Exception)) @@ -212,9 +209,9 @@ def testCatchExceptionManagedClass(self): def testCatchExceptionPythonClass(self): """Test catching the python class of an exception.""" from System import OverflowException - if six.PY3: + if PY3: from builtins import Exception - else: + elif PY2: from exceptions import Exception try: @@ -288,8 +285,8 @@ def testStrOfException(self): Convert.ToDateTime('this will fail') except FormatException: e = sys.exc_info()[1] - msg = unicode(e).encode("utf8") # fix for international installation - self.assertTrue(msg.find(unicode('System.Convert.ToDateTime').encode("utf8")) > -1, msg) + msg = text_type(e).encode("utf8") # fix for international installation + self.assertTrue(msg.find(text_type('System.Convert.ToDateTime').encode("utf8")) > -1, msg) def testPythonCompatOfManagedExceptions(self): """Test if managed exceptions are compatible with Python's implementation @@ -299,14 +296,14 @@ def testPythonCompatOfManagedExceptions(self): e = OverflowException(msg) self.assertEqual(str(e), msg) - self.assertEqual(unicode(e), msg) + self.assertEqual(text_type(e), msg) self.assertEqual(e.args, (msg,)) self.assertTrue(isinstance(e.args, tuple)) - if six.PY2: - self.assertEqual(repr(e), "OverflowException(u'A simple message',)") - else: + if PY3: self.assertEqual(repr(e), "OverflowException('A simple message',)") + elif PY2: + self.assertEqual(repr(e), "OverflowException(u'A simple message',)") def testExceptionIsInstanceOfSystemObject(self): """Test behavior of isinstance(, System.Object).""" @@ -337,10 +334,6 @@ def testExceptionIsInstanceOfSystemObject(self): def testPicklingExceptions(self): from System import Exception - try: - import cPickle as pickle - except ImportError: - import pickle exc = Exception("test") dumped = pickle.dumps(exc) @@ -349,7 +342,8 @@ def testPicklingExceptions(self): self.assertEqual(exc.args, loaded.args) def testChainedExceptions(self): - if six.PY3: + # TODO: Why is this test PY3 only? + if PY3: from Python.Test import ExceptionTest try: @@ -358,7 +352,7 @@ def testChainedExceptions(self): msgs = [ "Outer exception", "Inner exception", - "Innermost exception" + "Innermost exception", ] for msg in msgs: diff --git a/src/tests/test_field.py b/src/tests/test_field.py index bafb27598..3cd7eb83e 100644 --- a/src/tests/test_field.py +++ b/src/tests/test_field.py @@ -1,16 +1,9 @@ # -*- coding: utf-8 -*- import unittest -import types from Python.Test import FieldTest from Python.Test import ShortEnum import System -import six - -if six.PY3: - IntType = int -else: - IntType = types.IntType class FieldTests(unittest.TestCase): @@ -203,15 +196,15 @@ def testFieldDescriptorGetSet(self): self.assertTrue(object.PublicStaticField == 0) descriptor = FieldTest.__dict__['PublicStaticField'] - self.assertTrue(type(descriptor) != IntType) + self.assertTrue(type(descriptor) != int) object.PublicStaticField = 0 descriptor = FieldTest.__dict__['PublicStaticField'] - self.assertTrue(type(descriptor) != IntType) + self.assertTrue(type(descriptor) != int) FieldTest.PublicStaticField = 0 descriptor = FieldTest.__dict__['PublicStaticField'] - self.assertTrue(type(descriptor) != IntType) + self.assertTrue(type(descriptor) != int) def testFieldDescriptorWrongType(self): """Test setting a field using a value of the wrong type.""" @@ -272,15 +265,15 @@ def testByteField(self): def testCharField(self): """Test char fields.""" object = FieldTest() - self.assertTrue(object.CharField == six.u('A')) + self.assertTrue(object.CharField == u'A') self.assertTrue(object.CharField == 'A') object.CharField = 'B' - self.assertTrue(object.CharField == six.u('B')) + self.assertTrue(object.CharField == u'B') self.assertTrue(object.CharField == 'B') - object.CharField = six.u('C') - self.assertTrue(object.CharField == six.u('C')) + object.CharField = u'C' + self.assertTrue(object.CharField == u'C') self.assertTrue(object.CharField == 'C') def testInt16Field(self): diff --git a/src/tests/test_generic.py b/src/tests/test_generic.py index c80ff5704..eb87c5271 100644 --- a/src/tests/test_generic.py +++ b/src/tests/test_generic.py @@ -5,12 +5,7 @@ import unittest import Python.Test as Test import System -import six - -if six.PY3: - long = int - unichr = chr - unicode = str +from _compat import PY2, long, unichr, unicode class GenericTests(unittest.TestCase): @@ -171,13 +166,13 @@ def testGenericTypeBinding(self): self._testGenericWrapperByType(bool, True) self._testGenericWrapperByType(System.Byte, 255) self._testGenericWrapperByType(System.SByte, 127) - self._testGenericWrapperByType(System.Char, six.u('A')) + self._testGenericWrapperByType(System.Char, u'A') self._testGenericWrapperByType(System.Int16, 32767) self._testGenericWrapperByType(System.Int32, 2147483647) self._testGenericWrapperByType(int, 2147483647) self._testGenericWrapperByType(System.Int64, long(9223372036854775807)) # Python 3 has no explicit long type, use System.Int64 instead - if not six.PY3: + if PY2: self._testGenericWrapperByType(long, long(9223372036854775807)) self._testGenericWrapperByType(System.UInt16, 65000) self._testGenericWrapperByType(System.UInt32, long(4294967295)) @@ -318,12 +313,12 @@ def testGenericMethodTypeHandling(self): self._testGenericMethodByType(bool, True) self._testGenericMethodByType(System.Byte, 255) self._testGenericMethodByType(System.SByte, 127) - self._testGenericMethodByType(System.Char, six.u('A')) + self._testGenericMethodByType(System.Char, u'A') self._testGenericMethodByType(System.Int16, 32767) self._testGenericMethodByType(System.Int32, 2147483647) self._testGenericMethodByType(int, 2147483647) # Python 3 has no explicit long type, use System.Int64 instead - if not six.PY3: + if PY2: self._testGenericMethodByType(System.Int64, long(9223372036854775807)) self._testGenericMethodByType(long, long(9223372036854775807)) self._testGenericMethodByType(System.UInt32, long(4294967295)) @@ -367,7 +362,7 @@ def testCorrectOverloadSelection(self): atype(value2)) == Math.Max.__overloads__[atype, atype]( atype(value1), atype(value2))) - if (atype is Int64) and six.PY2: + if PY2 and atype is Int64: value2 = long(value2) self.assertTrue( Math.Max(atype(value1), @@ -490,9 +485,9 @@ def testMethodOverloadSelectionWithGenericTypes(self): self.assertTrue(value.value == 127) vtype = GenericWrapper[System.Char] - input = vtype(six.u('A')) + input = vtype(u'A') value = MethodTest.Overloaded.__overloads__[vtype](input) - self.assertTrue(value.value == six.u('A')) + self.assertTrue(value.value == u'A') vtype = GenericWrapper[System.Char] input = vtype(65535) @@ -520,7 +515,7 @@ def testMethodOverloadSelectionWithGenericTypes(self): self.assertTrue(value.value == long(9223372036854775807)) # Python 3 has no explicit long type, use System.Int64 instead - if not six.PY3: + if PY2: vtype = GenericWrapper[long] input = vtype(long(9223372036854775807)) value = MethodTest.Overloaded.__overloads__[vtype](input) @@ -633,9 +628,9 @@ def testOverloadSelectionWithArraysOfGenericTypes(self): gtype = GenericWrapper[System.Char] vtype = System.Array[gtype] - input = vtype([gtype(six.u('A')), gtype(six.u('A'))]) + input = vtype([gtype(u'A'), gtype(u'A')]) value = MethodTest.Overloaded.__overloads__[vtype](input) - self.assertTrue(value[0].value == six.u('A')) + self.assertTrue(value[0].value == u'A') self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Char] @@ -675,7 +670,7 @@ def testOverloadSelectionWithArraysOfGenericTypes(self): self.assertTrue(value.Length == 2) # Python 3 has no explicit long type, use System.Int64 instead - if not six.PY3: + if PY2: gtype = GenericWrapper[long] vtype = System.Array[gtype] input = vtype([gtype(long(9223372036854775807)), diff --git a/src/tests/test_indexer.py b/src/tests/test_indexer.py index f9d16a1c3..b241ef366 100644 --- a/src/tests/test_indexer.py +++ b/src/tests/test_indexer.py @@ -3,11 +3,7 @@ import unittest import Python.Test as Test -import six - -if six.PY3: - long = int - unichr = chr +from _compat import long, unichr class IndexerTests(unittest.TestCase): @@ -413,19 +409,19 @@ def testStringIndexer(self): object = Test.StringIndexerTest() self.assertTrue(object["spam"] == None) - self.assertTrue(object[six.u("spam")] == None) + self.assertTrue(object[u"spam"] == None) object["spam"] = "spam" self.assertTrue(object["spam"] == "spam") - self.assertTrue(object["spam"] == six.u("spam")) - self.assertTrue(object[six.u("spam")] == "spam") - self.assertTrue(object[six.u("spam")] == six.u("spam")) + self.assertTrue(object["spam"] == u"spam") + self.assertTrue(object[u"spam"] == "spam") + self.assertTrue(object[u"spam"] == u"spam") - object[six.u("eggs")] = six.u("eggs") + object[u"eggs"] = u"eggs" self.assertTrue(object["eggs"] == "eggs") - self.assertTrue(object["eggs"] == six.u("eggs")) - self.assertTrue(object[six.u("eggs")] == "eggs") - self.assertTrue(object[six.u("eggs")] == six.u("eggs")) + self.assertTrue(object["eggs"] == u"eggs") + self.assertTrue(object[u"eggs"] == "eggs") + self.assertTrue(object[u"eggs"] == u"eggs") def test(): object = Test.StringIndexerTest() diff --git a/src/tests/test_interface.py b/src/tests/test_interface.py index 6c6bb6228..13878efbf 100644 --- a/src/tests/test_interface.py +++ b/src/tests/test_interface.py @@ -2,15 +2,9 @@ from Python.Test import InterfaceTest import unittest -import types import Python.Test as Test import System -import six - -if six.PY3: - DictProxyType = type(object.__dict__) -else: - DictProxyType = types.DictProxyType +from _compat import DictProxyType class InterfaceTests(unittest.TestCase): diff --git a/src/tests/test_method.py b/src/tests/test_method.py index f6806687c..67cb9d4a1 100644 --- a/src/tests/test_method.py +++ b/src/tests/test_method.py @@ -4,11 +4,8 @@ from Python.Test import MethodTest, MethodTestSub import System -import six -if six.PY3: - long = int - unichr = chr +from _compat import PY2, long, unichr class MethodTests(unittest.TestCase): @@ -495,8 +492,8 @@ def testExplicitOverloadSelection(self): value = MethodTest.Overloaded.__overloads__[System.SByte](127) self.assertTrue(value == 127) - value = MethodTest.Overloaded.__overloads__[System.Char](six.u('A')) - self.assertTrue(value == six.u('A')) + value = MethodTest.Overloaded.__overloads__[System.Char](u'A') + self.assertTrue(value == u'A') value = MethodTest.Overloaded.__overloads__[System.Char](65535) self.assertTrue(value == unichr(65535)) @@ -516,7 +513,7 @@ def testExplicitOverloadSelection(self): self.assertTrue(value == long(9223372036854775807)) # Python 3 has no explicit long type, use System.Int64 instead - if not six.PY3: + if PY2: value = MethodTest.Overloaded.__overloads__[long]( long(9223372036854775807) ) @@ -612,10 +609,10 @@ def testOverloadSelectionWithArrayTypes(self): self.assertTrue(value[1] == 127) vtype = Array[System.Char] - input = vtype([six.u('A'), six.u('Z')]) + input = vtype([u'A', u'Z']) value = MethodTest.Overloaded.__overloads__[vtype](input) - self.assertTrue(value[0] == six.u('A')) - self.assertTrue(value[1] == six.u('Z')) + self.assertTrue(value[0] == u'A') + self.assertTrue(value[1] == u'Z') vtype = Array[System.Char] input = vtype([0, 65535]) @@ -648,7 +645,7 @@ def testOverloadSelectionWithArrayTypes(self): self.assertTrue(value[1] == long(9223372036854775807)) # Python 3 has no explicit long type, use System.Int64 instead - if not six.PY3: + if PY2: vtype = Array[long] input = vtype([0, long(9223372036854775807)]) value = MethodTest.Overloaded.__overloads__[vtype](input) diff --git a/src/tests/test_module.py b/src/tests/test_module.py index 8eaedf5c9..caa94b1d5 100644 --- a/src/tests/test_module.py +++ b/src/tests/test_module.py @@ -6,12 +6,8 @@ import types import warnings from fnmatch import fnmatch -import six -if six.PY3: - ClassType = type -else: - ClassType = types.ClassType +from _compat import ClassType, PY2, PY3 # testImplicitAssemblyLoad() passes on deprecation warning; perfect! # # clr.AddReference('System.Windows.Forms') @@ -24,10 +20,11 @@ def isCLRModule(self, object): return type(object).__name__ == 'ModuleObject' def isCLRRootModule(self, object): - if six.PY3: + if PY3: # in Python 3 the clr module is a normal python module return object.__name__ == "clr" - return type(object).__name__ == 'CLRModule' + elif PY2: + return type(object).__name__ == 'CLRModule' def isCLRClass(self, object): return type(object).__name__ == 'CLR Metatype' # for now @@ -90,11 +87,11 @@ def testSimpleImport(self): self.assertTrue(type(sys) == types.ModuleType) self.assertTrue(sys.__name__ == 'sys') - if six.PY3: + if PY3: import http.client as httplib self.assertTrue(type(httplib) == types.ModuleType) self.assertTrue(httplib.__name__ == 'http.client') - else: + elif PY2: import httplib self.assertTrue(type(httplib) == types.ModuleType) self.assertTrue(httplib.__name__ == 'httplib') @@ -109,11 +106,11 @@ def testSimpleImportWithAlias(self): self.assertTrue(type(mySys) == types.ModuleType) self.assertTrue(mySys.__name__ == 'sys') - if six.PY3: + if PY3: import http.client as myHttplib self.assertTrue(type(myHttplib) == types.ModuleType) self.assertTrue(myHttplib.__name__ == 'http.client') - else: + elif PY2: import httplib as myHttplib self.assertTrue(type(myHttplib) == types.ModuleType) self.assertTrue(myHttplib.__name__ == 'httplib') @@ -346,10 +343,10 @@ def test_ClrListAssemblies(self): from clr import ListAssemblies verbose = list(ListAssemblies(True)) short = list(ListAssemblies(False)) - self.assertTrue(six.u('mscorlib') in short) - self.assertTrue(six.u('System') in short) - self.assertTrue(six.u('Culture=') in verbose[0]) - self.assertTrue(six.u('Version=') in verbose[0]) + self.assertTrue(u'mscorlib' in short) + self.assertTrue(u'System' in short) + self.assertTrue(u'Culture=' in verbose[0]) + self.assertTrue(u'Version=' in verbose[0]) def test_ClrAddReference(self): from clr import AddReference diff --git a/src/tests/test_property.py b/src/tests/test_property.py index 9ed2a5207..1358f0fe5 100644 --- a/src/tests/test_property.py +++ b/src/tests/test_property.py @@ -1,14 +1,7 @@ # -*- coding: utf-8 -*- # import unittest -import types from Python.Test import PropertyTest -import six - -if six.PY3: - IntType = int -else: - IntType = types.IntType class PropertyTests(unittest.TestCase): @@ -133,15 +126,15 @@ def testPropertyDescriptorGetSet(self): self.assertTrue(object.PublicStaticProperty == 0) descriptor = PropertyTest.__dict__['PublicStaticProperty'] - self.assertTrue(type(descriptor) != IntType) + self.assertTrue(type(descriptor) != int) object.PublicStaticProperty = 0 descriptor = PropertyTest.__dict__['PublicStaticProperty'] - self.assertTrue(type(descriptor) != IntType) + self.assertTrue(type(descriptor) != int) PropertyTest.PublicStaticProperty = 0 descriptor = PropertyTest.__dict__['PublicStaticProperty'] - self.assertTrue(type(descriptor) != IntType) + self.assertTrue(type(descriptor) != int) def testPropertyDescriptorWrongType(self): """Test setting a property using a value of the wrong type.""" diff --git a/src/tests/test_thread.py b/src/tests/test_thread.py index ba91e3bee..09104a91a 100644 --- a/src/tests/test_thread.py +++ b/src/tests/test_thread.py @@ -4,14 +4,10 @@ import unittest from Python.Test import ThreadTest -import six import threading import time -if six.PY3: - import _thread as thread -else: - import thread +from _compat import thread def dprint(msg): From 30470bbaa293885c54c629d26c8f4d764e188313 Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sat, 21 Jan 2017 19:30:25 -0700 Subject: [PATCH 04/13] Clean-up imports - Fix py2/py3 range/zip behavior - Ensure same functions being used - Fix Exception/System.Exception name clashes --- src/tests/test_array.py | 4 +- src/tests/test_class.py | 31 ++++++++----- src/tests/test_compat.py | 5 ++- src/tests/test_constructors.py | 1 + src/tests/test_conversion.py | 6 ++- src/tests/test_delegate.py | 11 +++-- src/tests/test_docstring.py | 8 +++- src/tests/test_engine.py | 5 ++- src/tests/test_enum.py | 12 ++++- src/tests/test_event.py | 10 +++-- src/tests/test_exceptions.py | 18 +++----- src/tests/test_field.py | 6 ++- src/tests/test_generic.py | 46 ++++++++------------ src/tests/test_indexer.py | 1 + src/tests/test_interface.py | 18 +++++--- src/tests/test_method.py | 5 ++- src/tests/test_module.py | 8 ++-- src/tests/test_property.py | 1 + src/tests/test_subclass.py | 26 ++++++----- src/tests/test_suite/__init__.py | 4 +- src/tests/test_suite/test_callback.py | 15 +++---- src/tests/test_suite/test_recursive_types.py | 9 +--- src/tests/test_thread.py | 19 ++++---- 23 files changed, 151 insertions(+), 118 deletions(-) diff --git a/src/tests/test_array.py b/src/tests/test_array.py index 03440ca6e..0a4270636 100644 --- a/src/tests/test_array.py +++ b/src/tests/test_array.py @@ -1,9 +1,11 @@ # -*- coding: utf-8 -*- import unittest + import Python.Test as Test import System -from _compat import UserList, PY2, long, unichr + +from _compat import PY2, UserList, long, range, unichr class ArrayTests(unittest.TestCase): diff --git a/src/tests/test_class.py b/src/tests/test_class.py index 30972d111..169683883 100644 --- a/src/tests/test_class.py +++ b/src/tests/test_class.py @@ -4,10 +4,8 @@ import Python.Test as Test import System -from Python.Test import ClassTest -from System.Collections import Hashtable -from _compat import DictProxyType +from _compat import DictProxyType, range class ClassTests(unittest.TestCase): @@ -25,6 +23,8 @@ def testBasicValueType(self): def testClassStandardAttrs(self): """Test standard class attributes.""" + from Python.Test import ClassTest + self.assertTrue(ClassTest.__name__ == 'ClassTest') self.assertTrue(ClassTest.__module__ == 'Python.Test') self.assertTrue(type(ClassTest.__dict__) == DictProxyType) @@ -32,6 +32,8 @@ def testClassStandardAttrs(self): def testClassDocstrings(self): """Test standard class docstring generation""" + from Python.Test import ClassTest + value = 'Void .ctor()' self.assertTrue(ClassTest.__doc__ == value) @@ -47,7 +49,6 @@ def testClassDefaultRepr(self): def testNonPublicClass(self): """Test that non-public classes are inaccessible.""" - from Python import Test def test(): from Python.Test import InternalClass @@ -61,6 +62,7 @@ def test(): def testBasicSubclass(self): """Test basic subclass of a managed class.""" + from System.Collections import Hashtable class MyTable(Hashtable): def howMany(self): @@ -141,12 +143,14 @@ def testStructConstruction(self): def testIEnumerableIteration(self): """Test iteration over objects supporting IEnumerable.""" - list = Test.ClassTest.GetArrayList() + from Python.Test import ClassTest + + list = ClassTest.GetArrayList() for item in list: self.assertTrue((item > -1) and (item < 10)) - dict = Test.ClassTest.GetHashtable() + dict = ClassTest.GetHashtable() for item in dict: cname = item.__class__.__name__ @@ -154,13 +158,16 @@ def testIEnumerableIteration(self): def testIEnumeratorIteration(self): """Test iteration over objects supporting IEnumerator.""" - chars = Test.ClassTest.GetEnumerator() + from Python.Test import ClassTest + + chars = ClassTest.GetEnumerator() for item in chars: self.assertTrue(item in 'test string') def testOverrideGetItem(self): """Test managed subclass overriding __getitem__.""" + from System.Collections import Hashtable class MyTable(Hashtable): def __getitem__(self, key): @@ -180,6 +187,7 @@ def __getitem__(self, key): def testOverrideSetItem(self): """Test managed subclass overriding __setitem__.""" + from System.Collections import Hashtable class MyTable(Hashtable): def __setitem__(self, key, value): @@ -198,10 +206,9 @@ def __setitem__(self, key, value): self.assertTrue(table.Count == 3) def testAddAndRemoveClassAttribute(self): - from System import TimeSpan - for i in range(100): + for _ in range(100): TimeSpan.new_method = lambda self: self.TotalMinutes ts = TimeSpan.FromHours(1) self.assertTrue(ts.new_method() == 60) @@ -210,6 +217,7 @@ def testAddAndRemoveClassAttribute(self): def testComparisons(self): from System import DateTimeOffset + from Python.Test import ClassTest d1 = DateTimeOffset.Parse("2016-11-14") d2 = DateTimeOffset.Parse("2016-11-15") @@ -247,12 +255,14 @@ def testComparisons(self): self.assertRaises(TypeError, lambda: c1 < c2) def testSelfCallback(self): - """ Test calling back and forth between this and a c# baseclass.""" + """Test calling back and forth between this and a c# baseclass.""" + class CallbackUser(Test.SelfCallbackTest): def DoCallback(self): self.PyCallbackWasCalled = False self.SameReference = False return self.Callback(self) + def PyCallback(self, self2): self.PyCallbackWasCalled = True self.SameReference = self == self2 @@ -262,6 +272,7 @@ def PyCallback(self, self2): self.assertTrue(testobj.PyCallbackWasCalled) self.assertTrue(testobj.SameReference) + class ClassicClass: def kind(self): return 'classic' diff --git a/src/tests/test_compat.py b/src/tests/test_compat.py index 571d54717..f89aceece 100644 --- a/src/tests/test_compat.py +++ b/src/tests/test_compat.py @@ -1,8 +1,9 @@ # -*- coding: utf-8 -*- -import unittest import types -from _compat import PY2, PY3, ClassType +import unittest + +from _compat import ClassType, PY2, PY3, range class CompatibilityTests(unittest.TestCase): diff --git a/src/tests/test_constructors.py b/src/tests/test_constructors.py index e123c7bdc..b1cf6d438 100644 --- a/src/tests/test_constructors.py +++ b/src/tests/test_constructors.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- import unittest + import System diff --git a/src/tests/test_conversion.py b/src/tests/test_conversion.py index 9aceb9c11..7af3ee65e 100644 --- a/src/tests/test_conversion.py +++ b/src/tests/test_conversion.py @@ -1,9 +1,11 @@ # -*- coding: utf-8 -*- import unittest -from Python.Test import ConversionTest + import System -from _compat import indexbytes, long, unichr +from Python.Test import ConversionTest + +from _compat import indexbytes, long, range, unichr class ConversionTests(unittest.TestCase): diff --git a/src/tests/test_delegate.py b/src/tests/test_delegate.py index c9816da03..df371ca9a 100644 --- a/src/tests/test_delegate.py +++ b/src/tests/test_delegate.py @@ -1,11 +1,12 @@ # -*- coding: utf-8 -*- +# TODO: Add test for ObjectDelegate -from Python.Test import DelegateTest, PublicDelegate -from Python.Test import StringDelegate, ObjectDelegate -from Python.Test import BoolDelegate import unittest + import Python.Test as Test import System +from Python.Test import DelegateTest, StringDelegate + from _compat import DictProxyType @@ -14,6 +15,8 @@ class DelegateTests(unittest.TestCase): def testDelegateStandardAttrs(self): """Test standard delegate attributes.""" + from Python.Test import PublicDelegate + self.assertTrue(PublicDelegate.__name__ == 'PublicDelegate') self.assertTrue(PublicDelegate.__module__ == 'Python.Test') self.assertTrue(type(PublicDelegate.__dict__) == DictProxyType) @@ -264,6 +267,7 @@ def count(self): def testSubclassDelegateFails(self): """Test that subclassing of a delegate type fails.""" + from Python.Test import PublicDelegate def test(): class Boom(PublicDelegate): @@ -284,6 +288,7 @@ def sayhello(): def testBoolDelegate(self): """Test boolean delegate.""" + from Python.Test import BoolDelegate def always_so_negative(): return 0 diff --git a/src/tests/test_docstring.py b/src/tests/test_docstring.py index d1be3c681..afbd1062f 100644 --- a/src/tests/test_docstring.py +++ b/src/tests/test_docstring.py @@ -2,23 +2,27 @@ import unittest -from Python.Test import DocWithCtorTest, DocWithoutCtorTest, DocWithCtorNoDocTest - class DocStringTests(unittest.TestCase): """Test doc strings support.""" def testDocWithCtor(self): + from Python.Test import DocWithCtorTest + self.assertEqual(DocWithCtorTest.__doc__, 'DocWithCtorTest Class') self.assertEqual(DocWithCtorTest.TestMethod.__doc__, 'DocWithCtorTest TestMethod') self.assertEqual(DocWithCtorTest.StaticTestMethod.__doc__, 'DocWithCtorTest StaticTestMethod') def testDocWithCtorNoDoc(self): + from Python.Test import DocWithCtorNoDocTest + self.assertEqual(DocWithCtorNoDocTest.__doc__, 'Void .ctor(Boolean)') self.assertEqual(DocWithCtorNoDocTest.TestMethod.__doc__, 'Void TestMethod(Double, Int32)') self.assertEqual(DocWithCtorNoDocTest.StaticTestMethod.__doc__, 'Void StaticTestMethod(Double, Int32)') def testDocWithoutCtor(self): + from Python.Test import DocWithoutCtorTest + self.assertEqual(DocWithoutCtorTest.__doc__, 'DocWithoutCtorTest Class') self.assertEqual(DocWithoutCtorTest.TestMethod.__doc__, 'DocWithoutCtorTest TestMethod') self.assertEqual(DocWithoutCtorTest.StaticTestMethod.__doc__, 'DocWithoutCtorTest StaticTestMethod') diff --git a/src/tests/test_engine.py b/src/tests/test_engine.py index c38a471fe..274dfb704 100644 --- a/src/tests/test_engine.py +++ b/src/tests/test_engine.py @@ -1,11 +1,12 @@ # -*- coding: utf-8 -*- +# FIXME: This test module fails due to unhandled exceptions import sys import unittest -from Python.Runtime import PythonEngine +import System +from Python.Runtime import PythonEngine -# XXX This test module isn't used! class EngineTests(unittest.TestCase): """Test PythonEngine embedding APIs.""" diff --git a/src/tests/test_enum.py b/src/tests/test_enum.py index dfc55a655..589fc1796 100644 --- a/src/tests/test_enum.py +++ b/src/tests/test_enum.py @@ -1,8 +1,9 @@ # -*- coding: utf-8 -*- import unittest -from System import DayOfWeek -from Python import Test + +import Python.Test as Test + from _compat import DictProxyType, long @@ -11,6 +12,8 @@ class EnumTests(unittest.TestCase): def testEnumStandardAttrs(self): """Test standard enum attributes.""" + from System import DayOfWeek + self.assertTrue(DayOfWeek.__name__ == 'DayOfWeek') self.assertTrue(DayOfWeek.__module__ == 'System') self.assertTrue(type(DayOfWeek.__dict__) == DictProxyType) @@ -18,6 +21,8 @@ def testEnumStandardAttrs(self): def testEnumGetMember(self): """Test access to enum members.""" + from System import DayOfWeek + self.assertTrue(DayOfWeek.Sunday == 0) self.assertTrue(DayOfWeek.Monday == 1) self.assertTrue(DayOfWeek.Tuesday == 2) @@ -76,6 +81,7 @@ def testULongEnum(self): def testInstantiateEnumFails(self): """Test that instantiation of an enum class fails.""" + from System import DayOfWeek def test(): ob = DayOfWeek() @@ -84,6 +90,7 @@ def test(): def testSubclassEnumFails(self): """Test that subclassing of an enumeration fails.""" + from System import DayOfWeek def test(): class Boom(DayOfWeek): @@ -93,6 +100,7 @@ class Boom(DayOfWeek): def testEnumSetMemberFails(self): """Test that setattr operations on enumerations fail.""" + from System import DayOfWeek def test(): DayOfWeek.Sunday = 13 diff --git a/src/tests/test_event.py b/src/tests/test_event.py index 2ddcc55d8..5417b4a8f 100644 --- a/src/tests/test_event.py +++ b/src/tests/test_event.py @@ -1,8 +1,10 @@ # -*- coding: utf-8 -*- import unittest -from Python.Test import EventTest, TestEventHandler -from Python.Test import TestEventArgs + +from Python.Test import EventTest, TestEventArgs + +from _compat import range class EventTests(unittest.TestCase): @@ -515,7 +517,7 @@ def test(): object.PublicEvent -= handler.handler def testIncorrectInvokation(self): - """Test incorrect invokation of events.""" + """Test incorrect invocation of events.""" object = EventTest() handler = GenericHandler() @@ -535,6 +537,8 @@ def test(): def testExplicitCLSEventRegistration(self): """Test explicit CLS event registration.""" + from Python.Test import TestEventHandler + object = EventTest() handler = GenericHandler() diff --git a/src/tests/test_exceptions.py b/src/tests/test_exceptions.py index 0c4078fb5..647106a70 100644 --- a/src/tests/test_exceptions.py +++ b/src/tests/test_exceptions.py @@ -2,7 +2,9 @@ import sys import unittest + import System + from _compat import PY2, PY3, pickle, text_type @@ -11,13 +13,9 @@ class ExceptionTests(unittest.TestCase): def testUnifiedExceptionSemantics(self): """Test unified exception semantics.""" - from System import Exception, Object - - e = Exception('Something bad happened') - if PY2: - import exceptions - self.assertTrue(isinstance(e, exceptions.Exception)) + e = System.Exception('Something bad happened') self.assertTrue(isinstance(e, Exception)) + self.assertTrue(isinstance(e, System.Exception)) def testStandardExceptionAttributes(self): """Test accessing standard exception attributes.""" @@ -38,12 +36,12 @@ def testStandardExceptionAttributes(self): def testExtendedExceptionAttributes(self): """Test accessing extended exception attributes.""" from Python.Test import ExceptionTest, ExtendedException - from System import Exception, OverflowException + from System import OverflowException e = ExceptionTest.GetExtendedException() self.assertTrue(isinstance(e, ExtendedException)) self.assertTrue(isinstance(e, OverflowException)) - self.assertTrue(isinstance(e, Exception)) + self.assertTrue(isinstance(e, System.Exception)) self.assertTrue(e.Message == 'error') @@ -333,9 +331,7 @@ def testExceptionIsInstanceOfSystemObject(self): self.assertFalse(isinstance(o, Object)) def testPicklingExceptions(self): - from System import Exception - - exc = Exception("test") + exc = System.Exception("test") dumped = pickle.dumps(exc) loaded = pickle.loads(dumped) diff --git a/src/tests/test_field.py b/src/tests/test_field.py index 3cd7eb83e..8a2c0c67a 100644 --- a/src/tests/test_field.py +++ b/src/tests/test_field.py @@ -1,9 +1,9 @@ # -*- coding: utf-8 -*- import unittest -from Python.Test import FieldTest -from Python.Test import ShortEnum + import System +from Python.Test import FieldTest class FieldTests(unittest.TestCase): @@ -385,6 +385,8 @@ def testObjectField(self): def testEnumField(self): """Test enum fields.""" + from Python.Test import ShortEnum + object = FieldTest() self.assertTrue(object.EnumField == ShortEnum.Zero) diff --git a/src/tests/test_generic.py b/src/tests/test_generic.py index eb87c5271..67af8acb4 100644 --- a/src/tests/test_generic.py +++ b/src/tests/test_generic.py @@ -1,11 +1,11 @@ # -*- coding: utf-8 -*- import clr -from System.Collections.Generic import Dictionary, List import unittest -import Python.Test as Test + import System -from _compat import PY2, long, unichr, unicode + +from _compat import PY2, long, unicode, unichr, zip class GenericTests(unittest.TestCase): @@ -13,6 +13,8 @@ class GenericTests(unittest.TestCase): def testPythonTypeAliasing(self): """Test python type alias support with generics.""" + from System.Collections.Generic import Dictionary + dict = Dictionary[str, str]() self.assertEquals(dict.Count, 0) dict.Add("one", "one") @@ -66,6 +68,7 @@ def testPythonTypeAliasing(self): def testGenericReferenceType(self): """Test usage of generic reference type definitions.""" from Python.Test import GenericTypeDefinition + inst = GenericTypeDefinition[System.String, System.Int32]("one", 2) self.assertTrue(inst.value1 == "one") self.assertTrue(inst.value2 == 2) @@ -83,9 +86,7 @@ def testGenericDelegate(self): pass def testOpenGenericType(self): - """ - Test behavior of reflected open constructed generic types. - """ + """Test behavior of reflected open constructed generic types.""" from Python.Test import DerivedFromOpenGeneric OpenGenericType = DerivedFromOpenGeneric.__bases__[0] @@ -101,9 +102,7 @@ def test(): self.assertRaises(TypeError, test) def testDerivedFromOpenGenericType(self): - """ - Test a generic type derived from an open generic type. - """ + """Test a generic type derived from an open generic type.""" from Python.Test import DerivedFromOpenGeneric type = DerivedFromOpenGeneric[System.String, System.String] @@ -114,9 +113,7 @@ def testDerivedFromOpenGenericType(self): self.assertTrue(inst.value3 == 'three') def testGenericTypeNameResolution(self): - """ - Test the ability to disambiguate generic type names. - """ + """Test the ability to disambiguate generic type names.""" from Python.Test import GenericNameTest1, GenericNameTest2 # If both a non-generic and generic type exist for a name, the @@ -156,9 +153,7 @@ def _testGenericWrapperByType(self, ptype, value, test_type=0): self.assertTrue(inst.value[1] == value) def testGenericTypeBinding(self): - """ - Test argument conversion / binding for generic methods. - """ + """Test argument conversion / binding for generic methods.""" from Python.Test import InterfaceTest, ISayHello1, ShortEnum import System @@ -300,15 +295,13 @@ def test(): self.assertRaises(TypeError, test) def testGenericMethodTypeHandling(self): - """ - Test argument conversion / binding for generic methods. - """ + """Test argument conversion / binding for generic methods.""" from Python.Test import InterfaceTest, ISayHello1, ShortEnum import System # XXX BUG: The value doesn't fit into Int64 and PythonNet doesn't # recognize it as UInt64 for unknown reasons. - ## self._testGenericMethodByType(System.UInt64, 18446744073709551615L) + # self._testGenericMethodByType(System.UInt64, 18446744073709551615L) self._testGenericMethodByType(System.Boolean, True) self._testGenericMethodByType(bool, True) self._testGenericMethodByType(System.Byte, 255) @@ -337,9 +330,7 @@ def testGenericMethodTypeHandling(self): self._testGenericMethodByType(ISayHello1, InterfaceTest(), 1) def testCorrectOverloadSelection(self): - """ - Test correct overloading selection for common types. - """ + """Test correct overloading selection for common types.""" from System.Drawing import Font from System import (String, Double, Single, @@ -377,10 +368,9 @@ def testCorrectOverloadSelection(self): handler = GCHandle.Alloc(CSArray, GCHandleType.Pinned) def testGenericMethodOverloadSelection(self): - """ - Test explicit overload selection with generic methods. - """ + """Test explicit overload selection with generic methods.""" from Python.Test import GenericMethodTest, GenericStaticMethodTest + type = GenericStaticMethodTest[str] inst = GenericMethodTest[str]() @@ -462,6 +452,7 @@ def testMethodOverloadSelectionWithGenericTypes(self): """Check method overload selection using generic types.""" from Python.Test import ISayHello1, InterfaceTest, ShortEnum from Python.Test import MethodTest, GenericWrapper + inst = InterfaceTest() vtype = GenericWrapper[System.Boolean] @@ -596,6 +587,7 @@ def testOverloadSelectionWithArraysOfGenericTypes(self): """Check overload selection using arrays of generic types.""" from Python.Test import ISayHello1, InterfaceTest, ShortEnum from Python.Test import MethodTest, GenericWrapper + inst = InterfaceTest() gtype = GenericWrapper[System.Boolean] @@ -776,12 +768,12 @@ def testOverloadSelectionWithArraysOfGenericTypes(self): def testGenericOverloadSelectionMagicNameOnly(self): """Test using only __overloads__ to select on type & sig""" - # XXX NotImplemented + # TODO NotImplemented pass def testNestedGenericClass(self): """Check nested generic classes.""" - # XXX NotImplemented + # TODO NotImplemented pass diff --git a/src/tests/test_indexer.py b/src/tests/test_indexer.py index b241ef366..74c9b1876 100644 --- a/src/tests/test_indexer.py +++ b/src/tests/test_indexer.py @@ -3,6 +3,7 @@ import unittest import Python.Test as Test + from _compat import long, unichr diff --git a/src/tests/test_interface.py b/src/tests/test_interface.py index 13878efbf..6bc05fd5f 100644 --- a/src/tests/test_interface.py +++ b/src/tests/test_interface.py @@ -1,9 +1,9 @@ # -*- coding: utf-8 -*- -from Python.Test import InterfaceTest import unittest + import Python.Test as Test -import System + from _compat import DictProxyType @@ -12,14 +12,16 @@ class InterfaceTests(unittest.TestCase): def testInterfaceStandardAttrs(self): """Test standard class attributes.""" - from Python.Test import IPublicInterface as ip - self.assertTrue(ip.__name__ == 'IPublicInterface') - self.assertTrue(ip.__module__ == 'Python.Test') - self.assertTrue(type(ip.__dict__) == DictProxyType) + from Python.Test import IPublicInterface + + self.assertTrue(IPublicInterface.__name__ == 'IPublicInterface') + self.assertTrue(IPublicInterface.__module__ == 'Python.Test') + self.assertTrue(type(IPublicInterface.__dict__) == DictProxyType) def testGlobalInterfaceVisibility(self): """Test visibility of module-level interfaces.""" from Python.Test import IPublicInterface + self.assertTrue(IPublicInterface.__name__ == 'IPublicInterface') def test(): @@ -34,6 +36,8 @@ def test(): def testNestedInterfaceVisibility(self): """Test visibility of nested interfaces.""" + from Python.Test import InterfaceTest + ob = InterfaceTest.IPublic self.assertTrue(ob.__name__ == 'IPublic') @@ -52,6 +56,8 @@ def test(): def testExplicitCastToInterface(self): """Test explicit cast to an interface.""" + from Python.Test import InterfaceTest + ob = InterfaceTest() self.assertTrue(type(ob).__name__ == 'InterfaceTest') self.assertTrue(hasattr(ob, 'HelloProperty')) diff --git a/src/tests/test_method.py b/src/tests/test_method.py index 67cb9d4a1..88652cd71 100644 --- a/src/tests/test_method.py +++ b/src/tests/test_method.py @@ -2,8 +2,8 @@ import unittest -from Python.Test import MethodTest, MethodTestSub import System +from Python.Test import MethodTest from _compat import PY2, long, unichr @@ -128,6 +128,7 @@ def test(): def testUnboundManagedMethodCall(self): """Test calling unbound managed methods.""" + from Python.Test import MethodTestSub object = MethodTest() self.assertTrue(MethodTest.PublicMethod(object) == "public") @@ -148,6 +149,7 @@ def test(): def testOverloadedMethodInheritance(self): """Test that overloads are inherited properly.""" + from Python.Test import MethodTestSub object = MethodTest() self.assertTrue(object.PublicMethod() == "public") @@ -778,5 +780,6 @@ def testWeCanBindToEncodingGetString(self): data = ''.join(data) self.assertEqual(data, 'Some testing string') + def test_suite(): return unittest.makeSuite(MethodTests) diff --git a/src/tests/test_module.py b/src/tests/test_module.py index caa94b1d5..a2624fc4c 100644 --- a/src/tests/test_module.py +++ b/src/tests/test_module.py @@ -1,13 +1,13 @@ # -*- coding: utf-8 -*- import clr - -import unittest import types +import unittest import warnings from fnmatch import fnmatch -from _compat import ClassType, PY2, PY3 +from _compat import ClassType, PY2, PY3, range + # testImplicitAssemblyLoad() passes on deprecation warning; perfect! # # clr.AddReference('System.Windows.Forms') @@ -372,7 +372,7 @@ def test_AssemblyLoadThreadSafety(self): from System import DateTime from System import Guid from System.Collections.Generic import Dictionary - dict = Dictionary[Guid,DateTime]() + dict = Dictionary[Guid, DateTime]() ModuleTest.JoinThreads() diff --git a/src/tests/test_property.py b/src/tests/test_property.py index 1358f0fe5..e5d7112ef 100644 --- a/src/tests/test_property.py +++ b/src/tests/test_property.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- # import unittest + from Python.Test import PropertyTest diff --git a/src/tests/test_subclass.py b/src/tests/test_subclass.py index f99c4cdc6..20938ba88 100644 --- a/src/tests/test_subclass.py +++ b/src/tests/test_subclass.py @@ -1,10 +1,14 @@ # -*- coding: utf-8 -*- +# FIXME: This test module fails on Linux -import clr import unittest -from Python.Test import TestFunctions, SubClassTest, IInterfaceTest, TestEventArgs + +import System +from Python.Test import (IInterfaceTest, SubClassTest, TestEventArgs, + TestFunctions) from System.Collections.Generic import List -from System import NotImplementedException + +from _compat import range # class that implements the test interface @@ -137,7 +141,8 @@ def handler(self, x, args): self.assertEqual(event_handler.value, 1) i = InterfaceTestClass() - self.assertRaises(NotImplementedException, TestFunctions.test_event, i, 2) + with self.assertRaises(System.NotImplementedException): + TestFunctions.test_event(i, 2) d = DerivedEventTest() d.add_TestEvent(event_handler.handler) @@ -146,19 +151,16 @@ def handler(self, x, args): self.assertEqual(len(d.event_handlers), 1) def test_isinstance(self): - from System import Object - from System import String - a = [str(x) for x in range(0, 1000)] - b = [String(x) for x in a] + b = [System.String(x) for x in a] for x in a: - self.assertFalse(isinstance(x, Object)) - self.assertFalse(isinstance(x, String)) + self.assertFalse(isinstance(x, System.Object)) + self.assertFalse(isinstance(x, System.String)) for x in b: - self.assertTrue(isinstance(x, Object)) - self.assertTrue(isinstance(x, String)) + self.assertTrue(isinstance(x, System.Object)) + self.assertTrue(isinstance(x, System.String)) def test_suite(): diff --git a/src/tests/test_suite/__init__.py b/src/tests/test_suite/__init__.py index 16a3a4cf8..ecc1c858f 100644 --- a/src/tests/test_suite/__init__.py +++ b/src/tests/test_suite/__init__.py @@ -2,10 +2,8 @@ import unittest -__all__ = ['test_suite'] - -from .test_import import test_suite as import_tests from .test_callback import test_suite as callback_tests +from .test_import import test_suite as import_tests from .test_recursive_types import test_suite as recursive_types_tests diff --git a/src/tests/test_suite/test_callback.py b/src/tests/test_suite/test_callback.py index 96070012f..7a5e473be 100644 --- a/src/tests/test_suite/test_callback.py +++ b/src/tests/test_suite/test_callback.py @@ -1,15 +1,6 @@ # -*- coding: utf-8 -*- import unittest -import sys -import clr - -this_module = sys.modules[__name__] -clr.AddReference("Python.Test") -import Python.Test as Test -from Python.Test import CallbackTest - -test_instance = CallbackTest() def simpleDefaultArg(arg='test'): @@ -21,12 +12,18 @@ class CallbackTests(unittest.TestCase): def testDefaultForNull(self): """Test that C# can use null for an optional python argument""" + from Python.Test import CallbackTest + + test_instance = CallbackTest() retVal = test_instance.Call_simpleDefaultArg_WithNull(__name__) pythonRetVal = simpleDefaultArg(None) self.assertEquals(retVal, pythonRetVal) def testDefaultForNone(self): """Test that C# can use no argument for an optional python argument""" + from Python.Test import CallbackTest + + test_instance = CallbackTest() retVal = test_instance.Call_simpleDefaultArg_WithEmptyArgs(__name__) pythonRetVal = simpleDefaultArg() self.assertEquals(retVal, pythonRetVal) diff --git a/src/tests/test_suite/test_recursive_types.py b/src/tests/test_suite/test_recursive_types.py index 88656f943..32bcad26e 100644 --- a/src/tests/test_suite/test_recursive_types.py +++ b/src/tests/test_suite/test_recursive_types.py @@ -1,11 +1,6 @@ # -*- coding: utf-8 -*- import unittest -import sys -import clr - -this_module = sys.modules[__name__] -clr.AddReference("Python.Test") class RecursiveTypesTests(unittest.TestCase): @@ -14,12 +9,10 @@ class RecursiveTypesTests(unittest.TestCase): def testRecursiveTypeCreation(self): """Test that a recursive types don't crash with a StackOverflowException""" - - import Python.Test as Test from Python.Test import RecursiveInheritance + test_instance = RecursiveInheritance.SubClass() test_instance.SomeMethod() - pass def test_suite(): diff --git a/src/tests/test_thread.py b/src/tests/test_thread.py index 09104a91a..5f395d9aa 100644 --- a/src/tests/test_thread.py +++ b/src/tests/test_thread.py @@ -2,12 +2,11 @@ from __future__ import print_function -import unittest -from Python.Test import ThreadTest import threading import time +import unittest -from _compat import thread +from _compat import range, thread def dprint(msg): @@ -21,6 +20,8 @@ class ThreadTests(unittest.TestCase): def testSimpleCallbackToPython(self): """Test a call to managed code that then calls back into Python.""" + from Python.Test import ThreadTest + dprint("thread %s SimpleCallBack" % thread.get_ident()) result = ThreadTest.CallEchoString("spam") self.assertTrue(result == "spam") @@ -29,6 +30,8 @@ def testSimpleCallbackToPython(self): def testDoubleCallbackToPython(self): """Test a call to managed code that then calls back into Python that then calls managed code that then calls Python again.""" + from Python.Test import ThreadTest + dprint("thread %s DoubleCallBack" % thread.get_ident()) result = ThreadTest.CallEchoString2("spam") self.assertTrue(result == "spam") @@ -37,7 +40,7 @@ def testDoubleCallbackToPython(self): def testPythonThreadCallsToCLR(self): """Test calls by Python-spawned threads into managed code.""" # This test is very likely to hang if something is wrong ;) - from System import String + import System done = [] @@ -45,15 +48,15 @@ def run_thread(): for i in range(10): time.sleep(0.1) dprint("thread %s %d" % (thread.get_ident(), i)) - mstr = String("thread %s %d" % (thread.get_ident(), i)) + mstr = System.String("thread %s %d" % (thread.get_ident(), i)) dprint(mstr.ToString()) done.append(None) dprint("thread %s %d done" % (thread.get_ident(), i)) def start_threads(count): - for i in range(count): - thread = threading.Thread(target=run_thread) - thread.start() + for _ in range(count): + thread_ = threading.Thread(target=run_thread) + thread_.start() start_threads(5) From d79db2d1817d9b548d9459686e1f55f239804038 Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sat, 21 Jan 2017 21:09:45 -0700 Subject: [PATCH 05/13] Fix nameclash object --- src/tests/test_array.py | 368 ++++++++++++------------- src/tests/test_conversion.py | 500 +++++++++++++++++----------------- src/tests/test_enum.py | 8 +- src/tests/test_event.py | 300 ++++++++++----------- src/tests/test_field.py | 232 ++++++++-------- src/tests/test_indexer.py | 510 +++++++++++++++++------------------ src/tests/test_method.py | 60 ++--- src/tests/test_property.py | 56 ++-- src/tests/test_subclass.py | 88 +++--- 9 files changed, 1061 insertions(+), 1061 deletions(-) diff --git a/src/tests/test_array.py b/src/tests/test_array.py index 0a4270636..134b95557 100644 --- a/src/tests/test_array.py +++ b/src/tests/test_array.py @@ -13,8 +13,8 @@ class ArrayTests(unittest.TestCase): def testPublicArray(self): """Test public arrays.""" - object = Test.PublicArrayTest() - items = object.items + ob = Test.PublicArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -35,8 +35,8 @@ def testPublicArray(self): def testProtectedArray(self): """Test protected arrays.""" - object = Test.ProtectedArrayTest() - items = object.items + ob = Test.ProtectedArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -59,8 +59,8 @@ def testInternalArray(self): """Test internal arrays.""" def test(): - object = Test.InternalArrayTest() - items = object.items + ob = Test.InternalArrayTest() + items = ob.items self.assertRaises(AttributeError, test) @@ -68,16 +68,16 @@ def testPrivateArray(self): """Test private arrays.""" def test(): - object = Test.PrivateArrayTest() - items = object.items + ob = Test.PrivateArrayTest() + items = ob.items self.assertRaises(AttributeError, test) def testArrayBoundsChecking(self): """Test array bounds checking.""" - object = Test.Int32ArrayTest() - items = object.items + ob = Test.Int32ArrayTest() + items = ob.items self.assertTrue(items[0] == 0) self.assertTrue(items[1] == 1) @@ -92,25 +92,25 @@ def testArrayBoundsChecking(self): self.assertTrue(items[-1] == 4) def test(): - object = Test.Int32ArrayTest() - object.items[5] + ob = Test.Int32ArrayTest() + ob.items[5] self.assertRaises(IndexError, test) def test(): - object = Test.Int32ArrayTest() - object.items[5] = 0 + ob = Test.Int32ArrayTest() + ob.items[5] = 0 self.assertRaises(IndexError, test) def test(): - object = Test.Int32ArrayTest() + ob = Test.Int32ArrayTest() items[-6] self.assertRaises(IndexError, test) def test(): - object = Test.Int32ArrayTest() + ob = Test.Int32ArrayTest() items[-6] = 0 self.assertRaises(IndexError, test) @@ -118,8 +118,8 @@ def test(): def testArrayContains(self): """Test array support for __contains__.""" - object = Test.Int32ArrayTest() - items = object.items + ob = Test.Int32ArrayTest() + items = ob.items self.assertTrue(0 in items) self.assertTrue(1 in items) @@ -134,8 +134,8 @@ def testArrayContains(self): def testBooleanArray(self): """Test boolean arrays.""" - object = Test.BooleanArrayTest() - items = object.items + ob = Test.BooleanArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -152,21 +152,21 @@ def testBooleanArray(self): self.assertTrue(items[0] == True) def test(): - object = Test.ByteArrayTest() - v = object.items["wrong"] + ob = Test.ByteArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.ByteArrayTest() - object[0] = "wrong" + ob = Test.ByteArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testByteArray(self): """Test byte arrays.""" - object = Test.ByteArrayTest() - items = object.items + ob = Test.ByteArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -189,33 +189,33 @@ def testByteArray(self): self.assertTrue(items[-1] == min) def test(): - object = Test.ByteArrayTest() - object.items[0] = max + 1 + ob = Test.ByteArrayTest() + ob.items[0] = max + 1 self.assertRaises(OverflowError, test) def test(): - object = Test.ByteArrayTest() - object.items[0] = min - 1 + ob = Test.ByteArrayTest() + ob.items[0] = min - 1 self.assertRaises(OverflowError, test) def test(): - object = Test.ByteArrayTest() - v = object.items["wrong"] + ob = Test.ByteArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.ByteArrayTest() - object[0] = "wrong" + ob = Test.ByteArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testSByteArray(self): """Test sbyte arrays.""" - object = Test.SByteArrayTest() - items = object.items + ob = Test.SByteArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -238,33 +238,33 @@ def testSByteArray(self): self.assertTrue(items[-1] == min) def test(): - object = Test.SByteArrayTest() - object.items[0] = max + 1 + ob = Test.SByteArrayTest() + ob.items[0] = max + 1 self.assertRaises(OverflowError, test) def test(): - object = Test.SByteArrayTest() - object.items[0] = min - 1 + ob = Test.SByteArrayTest() + ob.items[0] = min - 1 self.assertRaises(OverflowError, test) def test(): - object = Test.SByteArrayTest() - v = object.items["wrong"] + ob = Test.SByteArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.SByteArrayTest() - object[0] = "wrong" + ob = Test.SByteArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testCharArray(self): """Test char arrays.""" - object = Test.CharArrayTest() - items = object.items + ob = Test.CharArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -287,21 +287,21 @@ def testCharArray(self): self.assertTrue(items[-1] == min) def test(): - object = Test.CharArrayTest() - v = object.items["wrong"] + ob = Test.CharArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.CharArrayTest() - object[0] = "wrong" + ob = Test.CharArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testInt16Array(self): """Test Int16 arrays.""" - object = Test.Int16ArrayTest() - items = object.items + ob = Test.Int16ArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -324,33 +324,33 @@ def testInt16Array(self): self.assertTrue(items[-1] == min) def test(): - object = Test.Int16ArrayTest() - object.items[0] = max + 1 + ob = Test.Int16ArrayTest() + ob.items[0] = max + 1 self.assertRaises(OverflowError, test) def test(): - object = Test.Int16ArrayTest() - object.items[0] = min - 1 + ob = Test.Int16ArrayTest() + ob.items[0] = min - 1 self.assertRaises(OverflowError, test) def test(): - object = Test.Int16ArrayTest() - v = object.items["wrong"] + ob = Test.Int16ArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.Int16ArrayTest() - object[0] = "wrong" + ob = Test.Int16ArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testInt32Array(self): """Test Int32 arrays.""" - object = Test.Int32ArrayTest() - items = object.items + ob = Test.Int32ArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -373,33 +373,33 @@ def testInt32Array(self): self.assertTrue(items[-1] == min) def test(): - object = Test.Int32ArrayTest() - object.items[0] = max + 1 + ob = Test.Int32ArrayTest() + ob.items[0] = max + 1 self.assertRaises(OverflowError, test) def test(): - object = Test.Int32ArrayTest() - object.items[0] = min - 1 + ob = Test.Int32ArrayTest() + ob.items[0] = min - 1 self.assertRaises(OverflowError, test) def test(): - object = Test.Int32ArrayTest() - v = object.items["wrong"] + ob = Test.Int32ArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.Int32ArrayTest() - object[0] = "wrong" + ob = Test.Int32ArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testInt64Array(self): """Test Int64 arrays.""" - object = Test.Int64ArrayTest() - items = object.items + ob = Test.Int64ArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -422,33 +422,33 @@ def testInt64Array(self): self.assertTrue(items[-1] == min) def test(): - object = Test.Int64ArrayTest() - object.items[0] = max + 1 + ob = Test.Int64ArrayTest() + ob.items[0] = max + 1 self.assertRaises(OverflowError, test) def test(): - object = Test.Int64ArrayTest() - object.items[0] = min - 1 + ob = Test.Int64ArrayTest() + ob.items[0] = min - 1 self.assertRaises(OverflowError, test) def test(): - object = Test.Int64ArrayTest() - v = object.items["wrong"] + ob = Test.Int64ArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.Int64ArrayTest() - object[0] = "wrong" + ob = Test.Int64ArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testUInt16Array(self): """Test UInt16 arrays.""" - object = Test.UInt16ArrayTest() - items = object.items + ob = Test.UInt16ArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -471,33 +471,33 @@ def testUInt16Array(self): self.assertTrue(items[-1] == min) def test(): - object = Test.UInt16ArrayTest() - object.items[0] = max + 1 + ob = Test.UInt16ArrayTest() + ob.items[0] = max + 1 self.assertRaises(OverflowError, test) def test(): - object = Test.UInt16ArrayTest() - object.items[0] = min - 1 + ob = Test.UInt16ArrayTest() + ob.items[0] = min - 1 self.assertRaises(OverflowError, test) def test(): - object = Test.UInt16ArrayTest() - v = object.items["wrong"] + ob = Test.UInt16ArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.UInt16ArrayTest() - object[0] = "wrong" + ob = Test.UInt16ArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testUInt32Array(self): """Test UInt32 arrays.""" - object = Test.UInt32ArrayTest() - items = object.items + ob = Test.UInt32ArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -520,33 +520,33 @@ def testUInt32Array(self): self.assertTrue(items[-1] == min) def test(): - object = Test.UInt32ArrayTest() - object.items[0] = max + 1 + ob = Test.UInt32ArrayTest() + ob.items[0] = max + 1 self.assertRaises(OverflowError, test) def test(): - object = Test.UInt32ArrayTest() - object.items[0] = min - 1 + ob = Test.UInt32ArrayTest() + ob.items[0] = min - 1 self.assertRaises(OverflowError, test) def test(): - object = Test.UInt32ArrayTest() - v = object.items["wrong"] + ob = Test.UInt32ArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.UInt32ArrayTest() - object[0] = "wrong" + ob = Test.UInt32ArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testUInt64Array(self): """Test UInt64 arrays.""" - object = Test.UInt64ArrayTest() - items = object.items + ob = Test.UInt64ArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -569,33 +569,33 @@ def testUInt64Array(self): self.assertTrue(items[-1] == min) def test(): - object = Test.UInt64ArrayTest() - object.items[0] = max + 1 + ob = Test.UInt64ArrayTest() + ob.items[0] = max + 1 self.assertRaises(OverflowError, test) def test(): - object = Test.UInt64ArrayTest() - object.items[0] = min - 1 + ob = Test.UInt64ArrayTest() + ob.items[0] = min - 1 self.assertRaises(OverflowError, test) def test(): - object = Test.UInt64ArrayTest() - v = object.items["wrong"] + ob = Test.UInt64ArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.UInt64ArrayTest() - object[0] = "wrong" + ob = Test.UInt64ArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testSingleArray(self): """Test Single arrays.""" - object = Test.SingleArrayTest() - items = object.items + ob = Test.SingleArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -618,21 +618,21 @@ def testSingleArray(self): self.assertTrue(items[-1] == min) def test(): - object = Test.SingleArrayTest() - v = object.items["wrong"] + ob = Test.SingleArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.SingleArrayTest() - object[0] = "wrong" + ob = Test.SingleArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testDoubleArray(self): """Test Double arrays.""" - object = Test.DoubleArrayTest() - items = object.items + ob = Test.DoubleArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -655,21 +655,21 @@ def testDoubleArray(self): self.assertTrue(items[-1] == min) def test(): - object = Test.DoubleArrayTest() - v = object.items["wrong"] + ob = Test.DoubleArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.DoubleArrayTest() - object[0] = "wrong" + ob = Test.DoubleArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testDecimalArray(self): """Test Decimal arrays.""" - object = Test.DecimalArrayTest() - items = object.items + ob = Test.DecimalArrayTest() + items = ob.items from System import Decimal max_d = Decimal.Parse("79228162514264337593543950335") @@ -693,21 +693,21 @@ def testDecimalArray(self): self.assertTrue(items[-1] == min_d) def test(): - object = Test.DecimalArrayTest() - v = object.items["wrong"] + ob = Test.DecimalArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.DecimalArrayTest() - object[0] = "wrong" + ob = Test.DecimalArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testStringArray(self): """Test String arrays.""" - object = Test.StringArrayTest() - items = object.items + ob = Test.StringArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -727,22 +727,22 @@ def testStringArray(self): self.assertTrue(items[-1] == "eggs") def test(): - object = Test.StringArrayTest() - v = object.items["wrong"] + ob = Test.StringArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.Int64ArrayTest() - object[0] = 0 + ob = Test.Int64ArrayTest() + ob[0] = 0 self.assertRaises(TypeError, test) def testEnumArray(self): """Test enum arrays.""" from Python.Test import ShortEnum - object = Test.EnumArrayTest() - items = object.items + ob = Test.EnumArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -762,28 +762,28 @@ def testEnumArray(self): self.assertTrue(items[-1] == ShortEnum.Zero) def test(): - object = Test.EnumArrayTest() - object.items[0] = 99 + ob = Test.EnumArrayTest() + ob.items[0] = 99 self.assertRaises(ValueError, test) def test(): - object = Test.EnumArrayTest() - v = object.items["wrong"] + ob = Test.EnumArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.EnumArrayTest() - object[0] = "wrong" + ob = Test.EnumArrayTest() + ob[0] = "wrong" self.assertRaises(TypeError, test) def testObjectArray(self): - """Test object arrays.""" + """Test ob arrays.""" from Python.Test import Spam - object = Test.ObjectArrayTest() - items = object.items + ob = Test.ObjectArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -809,21 +809,21 @@ def testObjectArray(self): self.assertTrue(items[0] == None) def test(): - object = Test.ObjectArrayTest() - v = object.items["wrong"] + ob = Test.ObjectArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.ObjectArrayTest() - object.items["wrong"] = "wrong" + ob = Test.ObjectArrayTest() + ob.items["wrong"] = "wrong" self.assertRaises(TypeError, test) def testNullArray(self): """Test null arrays.""" - object = Test.NullArrayTest() - items = object.items + ob = Test.NullArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -842,20 +842,20 @@ def testNullArray(self): items[-1] = None self.assertTrue(items[-1] == None) - empty = object.empty + empty = ob.empty self.assertTrue(len(empty) == 0) def test(): - object = Test.NullArrayTest() - v = object.items["wrong"] + ob = Test.NullArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def testInterfaceArray(self): """Test interface arrays.""" from Python.Test import Spam - object = Test.InterfaceArrayTest() - items = object.items + ob = Test.InterfaceArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -878,28 +878,28 @@ def testInterfaceArray(self): self.assertTrue(items[0] == None) def test(): - object = Test.InterfaceArrayTest() - object.items[0] = 99 + ob = Test.InterfaceArrayTest() + ob.items[0] = 99 self.assertRaises(TypeError, test) def test(): - object = Test.InterfaceArrayTest() - v = object.items["wrong"] + ob = Test.InterfaceArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.InterfaceArrayTest() - object.items["wrong"] = "wrong" + ob = Test.InterfaceArrayTest() + ob.items["wrong"] = "wrong" self.assertRaises(TypeError, test) def testTypedArray(self): """Test typed arrays.""" from Python.Test import Spam - object = Test.TypedArrayTest() - items = object.items + ob = Test.TypedArrayTest() + items = ob.items self.assertTrue(len(items) == 5) @@ -922,27 +922,27 @@ def testTypedArray(self): self.assertTrue(items[0] == None) def test(): - object = Test.TypedArrayTest() - object.items[0] = 99 + ob = Test.TypedArrayTest() + ob.items[0] = 99 self.assertRaises(TypeError, test) def test(): - object = Test.TypedArrayTest() - v = object.items["wrong"] + ob = Test.TypedArrayTest() + v = ob.items["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.TypedArrayTest() - object.items["wrong"] = "wrong" + ob = Test.TypedArrayTest() + ob.items["wrong"] = "wrong" self.assertRaises(TypeError, test) def testMultiDimensionalArray(self): """Test multi-dimensional arrays.""" - object = Test.MultiDimensionalArrayTest() - items = object.items + ob = Test.MultiDimensionalArrayTest() + items = ob.items self.assertTrue(len(items) == 25) @@ -988,26 +988,26 @@ def testMultiDimensionalArray(self): self.assertTrue(items[-1, -1] == min) def test(): - object = Test.MultiDimensionalArrayTest() - object.items[0, 0] = max + 1 + ob = Test.MultiDimensionalArrayTest() + ob.items[0, 0] = max + 1 self.assertRaises(OverflowError, test) def test(): - object = Test.MultiDimensionalArrayTest() - object.items[0, 0] = min - 1 + ob = Test.MultiDimensionalArrayTest() + ob.items[0, 0] = min - 1 self.assertRaises(OverflowError, test) def test(): - object = Test.MultiDimensionalArrayTest() - v = object.items["wrong", 0] + ob = Test.MultiDimensionalArrayTest() + v = ob.items["wrong", 0] self.assertRaises(TypeError, test) def test(): - object = Test.MultiDimensionalArrayTest() - object[0, 0] = "wrong" + ob = Test.MultiDimensionalArrayTest() + ob[0, 0] = "wrong" self.assertRaises(TypeError, test) @@ -1093,7 +1093,7 @@ def testListNestedArrayConversion(self): self.assertTrue(result[0][0].__class__ == Spam) def testSequenceArrayConversion(self): - """Test conversion of sequence-like objects to array arguments.""" + """Test conversion of sequence-like obs to array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam @@ -1419,7 +1419,7 @@ def testSpecialArrayCreation(self): def testArrayAbuse(self): """Test array abuse.""" _class = Test.PublicArrayTest - object = Test.PublicArrayTest() + ob = Test.PublicArrayTest() def test(): del _class.__getitem__ @@ -1427,7 +1427,7 @@ def test(): self.assertRaises(AttributeError, test) def test(): - del object.__getitem__ + del ob.__getitem__ self.assertRaises(AttributeError, test) @@ -1437,7 +1437,7 @@ def test(): self.assertRaises(AttributeError, test) def test(): - del object.__setitem__ + del ob.__setitem__ self.assertRaises(AttributeError, test) diff --git a/src/tests/test_conversion.py b/src/tests/test_conversion.py index 7af3ee65e..f03ed96f9 100644 --- a/src/tests/test_conversion.py +++ b/src/tests/test_conversion.py @@ -13,75 +13,75 @@ class ConversionTests(unittest.TestCase): def testBoolConversion(self): """Test bool conversion.""" - object = ConversionTest() - self.assertTrue(object.BooleanField == False) - self.assertTrue(object.BooleanField is False) - self.assertTrue(object.BooleanField == 0) - - object.BooleanField = True - self.assertTrue(object.BooleanField == True) - self.assertTrue(object.BooleanField is True) - self.assertTrue(object.BooleanField == 1) - - object.BooleanField = False - self.assertTrue(object.BooleanField == False) - self.assertTrue(object.BooleanField is False) - self.assertTrue(object.BooleanField == 0) - - object.BooleanField = 1 - self.assertTrue(object.BooleanField == True) - self.assertTrue(object.BooleanField is True) - self.assertTrue(object.BooleanField == 1) - - object.BooleanField = 0 - self.assertTrue(object.BooleanField == False) - self.assertTrue(object.BooleanField is False) - self.assertTrue(object.BooleanField == 0) - - object.BooleanField = System.Boolean(None) - self.assertTrue(object.BooleanField == False) - self.assertTrue(object.BooleanField is False) - self.assertTrue(object.BooleanField == 0) - - object.BooleanField = System.Boolean('') - self.assertTrue(object.BooleanField == False) - self.assertTrue(object.BooleanField is False) - self.assertTrue(object.BooleanField == 0) - - object.BooleanField = System.Boolean(0) - self.assertTrue(object.BooleanField == False) - self.assertTrue(object.BooleanField is False) - self.assertTrue(object.BooleanField == 0) - - object.BooleanField = System.Boolean(1) - self.assertTrue(object.BooleanField == True) - self.assertTrue(object.BooleanField is True) - self.assertTrue(object.BooleanField == 1) - - object.BooleanField = System.Boolean('a') - self.assertTrue(object.BooleanField == True) - self.assertTrue(object.BooleanField is True) - self.assertTrue(object.BooleanField == 1) + ob = ConversionTest() + self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) + self.assertTrue(ob.BooleanField == 0) + + ob.BooleanField = True + self.assertTrue(ob.BooleanField == True) + self.assertTrue(ob.BooleanField is True) + self.assertTrue(ob.BooleanField == 1) + + ob.BooleanField = False + self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) + self.assertTrue(ob.BooleanField == 0) + + ob.BooleanField = 1 + self.assertTrue(ob.BooleanField == True) + self.assertTrue(ob.BooleanField is True) + self.assertTrue(ob.BooleanField == 1) + + ob.BooleanField = 0 + self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) + self.assertTrue(ob.BooleanField == 0) + + ob.BooleanField = System.Boolean(None) + self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) + self.assertTrue(ob.BooleanField == 0) + + ob.BooleanField = System.Boolean('') + self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) + self.assertTrue(ob.BooleanField == 0) + + ob.BooleanField = System.Boolean(0) + self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) + self.assertTrue(ob.BooleanField == 0) + + ob.BooleanField = System.Boolean(1) + self.assertTrue(ob.BooleanField == True) + self.assertTrue(ob.BooleanField is True) + self.assertTrue(ob.BooleanField == 1) + + ob.BooleanField = System.Boolean('a') + self.assertTrue(ob.BooleanField == True) + self.assertTrue(ob.BooleanField is True) + self.assertTrue(ob.BooleanField == 1) def testSByteConversion(self): """Test sbyte conversion.""" self.assertTrue(System.SByte.MaxValue == 127) self.assertTrue(System.SByte.MinValue == -128) - object = ConversionTest() - self.assertTrue(object.SByteField == 0) + ob = ConversionTest() + self.assertTrue(ob.SByteField == 0) - object.SByteField = 127 - self.assertTrue(object.SByteField == 127) + ob.SByteField = 127 + self.assertTrue(ob.SByteField == 127) - object.SByteField = -128 - self.assertTrue(object.SByteField == -128) + ob.SByteField = -128 + self.assertTrue(ob.SByteField == -128) - object.SByteField = System.SByte(127) - self.assertTrue(object.SByteField == 127) + ob.SByteField = System.SByte(127) + self.assertTrue(ob.SByteField == 127) - object.SByteField = System.SByte(-128) - self.assertTrue(object.SByteField == -128) + ob.SByteField = System.SByte(-128) + self.assertTrue(ob.SByteField == -128) def test(): ConversionTest().SByteField = "spam" @@ -118,20 +118,20 @@ def testByteConversion(self): self.assertTrue(System.Byte.MaxValue == 255) self.assertTrue(System.Byte.MinValue == 0) - object = ConversionTest() - self.assertTrue(object.ByteField == 0) + ob = ConversionTest() + self.assertTrue(ob.ByteField == 0) - object.ByteField = 255 - self.assertTrue(object.ByteField == 255) + ob.ByteField = 255 + self.assertTrue(ob.ByteField == 255) - object.ByteField = 0 - self.assertTrue(object.ByteField == 0) + ob.ByteField = 0 + self.assertTrue(ob.ByteField == 0) - object.ByteField = System.Byte(255) - self.assertTrue(object.ByteField == 255) + ob.ByteField = System.Byte(255) + self.assertTrue(ob.ByteField == 255) - object.ByteField = System.Byte(0) - self.assertTrue(object.ByteField == 0) + ob.ByteField = System.Byte(0) + self.assertTrue(ob.ByteField == 0) def test(): ConversionTest().ByteField = "spam" @@ -168,17 +168,17 @@ def testCharConversion(self): self.assertTrue(System.Char.MaxValue == unichr(65535)) self.assertTrue(System.Char.MinValue == unichr(0)) - object = ConversionTest() - self.assertTrue(object.CharField == u'A') + ob = ConversionTest() + self.assertTrue(ob.CharField == u'A') - object.CharField = 'B' - self.assertTrue(object.CharField == u'B') + ob.CharField = 'B' + self.assertTrue(ob.CharField == u'B') - object.CharField = u'B' - self.assertTrue(object.CharField == u'B') + ob.CharField = u'B' + self.assertTrue(ob.CharField == u'B') - object.CharField = 67 - self.assertTrue(object.CharField == u'C') + ob.CharField = 67 + self.assertTrue(ob.CharField == u'C') def test(): ConversionTest().CharField = 65536 @@ -200,20 +200,20 @@ def testInt16Conversion(self): self.assertTrue(System.Int16.MaxValue == 32767) self.assertTrue(System.Int16.MinValue == -32768) - object = ConversionTest() - self.assertTrue(object.Int16Field == 0) + ob = ConversionTest() + self.assertTrue(ob.Int16Field == 0) - object.Int16Field = 32767 - self.assertTrue(object.Int16Field == 32767) + ob.Int16Field = 32767 + self.assertTrue(ob.Int16Field == 32767) - object.Int16Field = -32768 - self.assertTrue(object.Int16Field == -32768) + ob.Int16Field = -32768 + self.assertTrue(ob.Int16Field == -32768) - object.Int16Field = System.Int16(32767) - self.assertTrue(object.Int16Field == 32767) + ob.Int16Field = System.Int16(32767) + self.assertTrue(ob.Int16Field == 32767) - object.Int16Field = System.Int16(-32768) - self.assertTrue(object.Int16Field == -32768) + ob.Int16Field = System.Int16(-32768) + self.assertTrue(ob.Int16Field == -32768) def test(): ConversionTest().Int16Field = "spam" @@ -250,20 +250,20 @@ def testInt32Conversion(self): self.assertTrue(System.Int32.MaxValue == 2147483647) self.assertTrue(System.Int32.MinValue == -2147483648) - object = ConversionTest() - self.assertTrue(object.Int32Field == 0) + ob = ConversionTest() + self.assertTrue(ob.Int32Field == 0) - object.Int32Field = 2147483647 - self.assertTrue(object.Int32Field == 2147483647) + ob.Int32Field = 2147483647 + self.assertTrue(ob.Int32Field == 2147483647) - object.Int32Field = -2147483648 - self.assertTrue(object.Int32Field == -2147483648) + ob.Int32Field = -2147483648 + self.assertTrue(ob.Int32Field == -2147483648) - object.Int32Field = System.Int32(2147483647) - self.assertTrue(object.Int32Field == 2147483647) + ob.Int32Field = System.Int32(2147483647) + self.assertTrue(ob.Int32Field == 2147483647) - object.Int32Field = System.Int32(-2147483648) - self.assertTrue(object.Int32Field == -2147483648) + ob.Int32Field = System.Int32(-2147483648) + self.assertTrue(ob.Int32Field == -2147483648) def test(): ConversionTest().Int32Field = "spam" @@ -300,20 +300,20 @@ def testInt64Conversion(self): self.assertTrue(System.Int64.MaxValue == long(9223372036854775807)) self.assertTrue(System.Int64.MinValue == long(-9223372036854775808)) - object = ConversionTest() - self.assertTrue(object.Int64Field == 0) + ob = ConversionTest() + self.assertTrue(ob.Int64Field == 0) - object.Int64Field = long(9223372036854775807) - self.assertTrue(object.Int64Field == long(9223372036854775807)) + ob.Int64Field = long(9223372036854775807) + self.assertTrue(ob.Int64Field == long(9223372036854775807)) - object.Int64Field = long(-9223372036854775808) - self.assertTrue(object.Int64Field == long(-9223372036854775808)) + ob.Int64Field = long(-9223372036854775808) + self.assertTrue(ob.Int64Field == long(-9223372036854775808)) - object.Int64Field = System.Int64(long(9223372036854775807)) - self.assertTrue(object.Int64Field == long(9223372036854775807)) + ob.Int64Field = System.Int64(long(9223372036854775807)) + self.assertTrue(ob.Int64Field == long(9223372036854775807)) - object.Int64Field = System.Int64(long(-9223372036854775808)) - self.assertTrue(object.Int64Field == long(-9223372036854775808)) + ob.Int64Field = System.Int64(long(-9223372036854775808)) + self.assertTrue(ob.Int64Field == long(-9223372036854775808)) def test(): ConversionTest().Int64Field = "spam" @@ -350,20 +350,20 @@ def testUInt16Conversion(self): self.assertTrue(System.UInt16.MaxValue == 65535) self.assertTrue(System.UInt16.MinValue == 0) - object = ConversionTest() - self.assertTrue(object.UInt16Field == 0) + ob = ConversionTest() + self.assertTrue(ob.UInt16Field == 0) - object.UInt16Field = 65535 - self.assertTrue(object.UInt16Field == 65535) + ob.UInt16Field = 65535 + self.assertTrue(ob.UInt16Field == 65535) - object.UInt16Field = -0 - self.assertTrue(object.UInt16Field == 0) + ob.UInt16Field = -0 + self.assertTrue(ob.UInt16Field == 0) - object.UInt16Field = System.UInt16(65535) - self.assertTrue(object.UInt16Field == 65535) + ob.UInt16Field = System.UInt16(65535) + self.assertTrue(ob.UInt16Field == 65535) - object.UInt16Field = System.UInt16(0) - self.assertTrue(object.UInt16Field == 0) + ob.UInt16Field = System.UInt16(0) + self.assertTrue(ob.UInt16Field == 0) def test(): ConversionTest().UInt16Field = "spam" @@ -400,20 +400,20 @@ def testUInt32Conversion(self): self.assertTrue(System.UInt32.MaxValue == long(4294967295)) self.assertTrue(System.UInt32.MinValue == 0) - object = ConversionTest() - self.assertTrue(object.UInt32Field == 0) + ob = ConversionTest() + self.assertTrue(ob.UInt32Field == 0) - object.UInt32Field = long(4294967295) - self.assertTrue(object.UInt32Field == long(4294967295)) + ob.UInt32Field = long(4294967295) + self.assertTrue(ob.UInt32Field == long(4294967295)) - object.UInt32Field = -0 - self.assertTrue(object.UInt32Field == 0) + ob.UInt32Field = -0 + self.assertTrue(ob.UInt32Field == 0) - object.UInt32Field = System.UInt32(long(4294967295)) - self.assertTrue(object.UInt32Field == long(4294967295)) + ob.UInt32Field = System.UInt32(long(4294967295)) + self.assertTrue(ob.UInt32Field == long(4294967295)) - object.UInt32Field = System.UInt32(0) - self.assertTrue(object.UInt32Field == 0) + ob.UInt32Field = System.UInt32(0) + self.assertTrue(ob.UInt32Field == 0) def test(): ConversionTest().UInt32Field = "spam" @@ -450,20 +450,20 @@ def testUInt64Conversion(self): self.assertTrue(System.UInt64.MaxValue == long(18446744073709551615)) self.assertTrue(System.UInt64.MinValue == 0) - object = ConversionTest() - self.assertTrue(object.UInt64Field == 0) + ob = ConversionTest() + self.assertTrue(ob.UInt64Field == 0) - object.UInt64Field = long(18446744073709551615) - self.assertTrue(object.UInt64Field == long(18446744073709551615)) + ob.UInt64Field = long(18446744073709551615) + self.assertTrue(ob.UInt64Field == long(18446744073709551615)) - object.UInt64Field = -0 - self.assertTrue(object.UInt64Field == 0) + ob.UInt64Field = -0 + self.assertTrue(ob.UInt64Field == 0) - object.UInt64Field = System.UInt64(long(18446744073709551615)) - self.assertTrue(object.UInt64Field == long(18446744073709551615)) + ob.UInt64Field = System.UInt64(long(18446744073709551615)) + self.assertTrue(ob.UInt64Field == long(18446744073709551615)) - object.UInt64Field = System.UInt64(0) - self.assertTrue(object.UInt64Field == 0) + ob.UInt64Field = System.UInt64(0) + self.assertTrue(ob.UInt64Field == 0) def test(): ConversionTest().UInt64Field = "spam" @@ -500,20 +500,20 @@ def testSingleConversion(self): self.assertTrue(System.Single.MaxValue == 3.402823e38) self.assertTrue(System.Single.MinValue == -3.402823e38) - object = ConversionTest() - self.assertTrue(object.SingleField == 0.0) + ob = ConversionTest() + self.assertTrue(ob.SingleField == 0.0) - object.SingleField = 3.402823e38 - self.assertTrue(object.SingleField == 3.402823e38) + ob.SingleField = 3.402823e38 + self.assertTrue(ob.SingleField == 3.402823e38) - object.SingleField = -3.402823e38 - self.assertTrue(object.SingleField == -3.402823e38) + ob.SingleField = -3.402823e38 + self.assertTrue(ob.SingleField == -3.402823e38) - object.SingleField = System.Single(3.402823e38) - self.assertTrue(object.SingleField == 3.402823e38) + ob.SingleField = System.Single(3.402823e38) + self.assertTrue(ob.SingleField == 3.402823e38) - object.SingleField = System.Single(-3.402823e38) - self.assertTrue(object.SingleField == -3.402823e38) + ob.SingleField = System.Single(-3.402823e38) + self.assertTrue(ob.SingleField == -3.402823e38) def test(): ConversionTest().SingleField = "spam" @@ -550,20 +550,20 @@ def testDoubleConversion(self): self.assertTrue(System.Double.MaxValue == 1.7976931348623157e308) self.assertTrue(System.Double.MinValue == -1.7976931348623157e308) - object = ConversionTest() - self.assertTrue(object.DoubleField == 0.0) + ob = ConversionTest() + self.assertTrue(ob.DoubleField == 0.0) - object.DoubleField = 1.7976931348623157e308 - self.assertTrue(object.DoubleField == 1.7976931348623157e308) + ob.DoubleField = 1.7976931348623157e308 + self.assertTrue(ob.DoubleField == 1.7976931348623157e308) - object.DoubleField = -1.7976931348623157e308 - self.assertTrue(object.DoubleField == -1.7976931348623157e308) + ob.DoubleField = -1.7976931348623157e308 + self.assertTrue(ob.DoubleField == -1.7976931348623157e308) - object.DoubleField = System.Double(1.7976931348623157e308) - self.assertTrue(object.DoubleField == 1.7976931348623157e308) + ob.DoubleField = System.Double(1.7976931348623157e308) + self.assertTrue(ob.DoubleField == 1.7976931348623157e308) - object.DoubleField = System.Double(-1.7976931348623157e308) - self.assertTrue(object.DoubleField == -1.7976931348623157e308) + ob.DoubleField = System.Double(-1.7976931348623157e308) + self.assertTrue(ob.DoubleField == -1.7976931348623157e308) def test(): ConversionTest().DoubleField = "spam" @@ -604,23 +604,23 @@ def testDecimalConversion(self): self.assertTrue(Decimal.ToInt64(Decimal(10)) == long(10)) - object = ConversionTest() - self.assertTrue(object.DecimalField == Decimal(0)) + ob = ConversionTest() + self.assertTrue(ob.DecimalField == Decimal(0)) - object.DecimalField = Decimal(10) - self.assertTrue(object.DecimalField == Decimal(10)) + ob.DecimalField = Decimal(10) + self.assertTrue(ob.DecimalField == Decimal(10)) - object.DecimalField = Decimal.One - self.assertTrue(object.DecimalField == Decimal.One) + ob.DecimalField = Decimal.One + self.assertTrue(ob.DecimalField == Decimal.One) - object.DecimalField = Decimal.Zero - self.assertTrue(object.DecimalField == Decimal.Zero) + ob.DecimalField = Decimal.Zero + self.assertTrue(ob.DecimalField == Decimal.Zero) - object.DecimalField = max_d - self.assertTrue(object.DecimalField == max_d) + ob.DecimalField = max_d + self.assertTrue(ob.DecimalField == max_d) - object.DecimalField = min_d - self.assertTrue(object.DecimalField == min_d) + ob.DecimalField = min_d + self.assertTrue(ob.DecimalField == min_d) def test(): ConversionTest().DecimalField = None @@ -639,31 +639,31 @@ def test(): def testStringConversion(self): """Test string / unicode conversion.""" - object = ConversionTest() + ob = ConversionTest() - self.assertTrue(object.StringField == "spam") - self.assertTrue(object.StringField == u"spam") + self.assertTrue(ob.StringField == "spam") + self.assertTrue(ob.StringField == u"spam") - object.StringField = "eggs" - self.assertTrue(object.StringField == "eggs") - self.assertTrue(object.StringField == u"eggs") + ob.StringField = "eggs" + self.assertTrue(ob.StringField == "eggs") + self.assertTrue(ob.StringField == u"eggs") - object.StringField = u"spam" - self.assertTrue(object.StringField == "spam") - self.assertTrue(object.StringField == u"spam") + ob.StringField = u"spam" + self.assertTrue(ob.StringField == "spam") + self.assertTrue(ob.StringField == u"spam") - object.StringField = u'\uffff\uffff' - self.assertTrue(object.StringField == u'\uffff\uffff') + ob.StringField = u'\uffff\uffff' + self.assertTrue(ob.StringField == u'\uffff\uffff') - object.StringField = System.String("spam") - self.assertTrue(object.StringField == "spam") - self.assertTrue(object.StringField == u"spam") + ob.StringField = System.String("spam") + self.assertTrue(ob.StringField == "spam") + self.assertTrue(ob.StringField == u"spam") - object.StringField = System.String(u'\uffff\uffff') - self.assertTrue(object.StringField == u'\uffff\uffff') + ob.StringField = System.String(u'\uffff\uffff') + self.assertTrue(ob.StringField == u'\uffff\uffff') - object.StringField = None - self.assertTrue(object.StringField == None) + ob.StringField = None + self.assertTrue(ob.StringField == None) def test(): ConversionTest().StringField = 1 @@ -674,57 +674,57 @@ def testInterfaceConversion(self): """Test interface conversion.""" from Python.Test import Spam, ISpam - object = ConversionTest() + ob = ConversionTest() - self.assertTrue(ISpam(object.SpamField).GetValue() == "spam") - self.assertTrue(object.SpamField.GetValue() == "spam") + self.assertTrue(ISpam(ob.SpamField).GetValue() == "spam") + self.assertTrue(ob.SpamField.GetValue() == "spam") - object.SpamField = Spam("eggs") - self.assertTrue(ISpam(object.SpamField).GetValue() == "eggs") - self.assertTrue(object.SpamField.GetValue() == "eggs") + ob.SpamField = Spam("eggs") + self.assertTrue(ISpam(ob.SpamField).GetValue() == "eggs") + self.assertTrue(ob.SpamField.GetValue() == "eggs") # need to test spam subclass here. - object.SpamField = None - self.assertTrue(object.SpamField == None) + ob.SpamField = None + self.assertTrue(ob.SpamField == None) def test(): - object = ConversionTest() - object.SpamField = System.String("bad") + ob = ConversionTest() + ob.SpamField = System.String("bad") self.assertRaises(TypeError, test) def test(): - object = ConversionTest() - object.SpamField = System.Int32(1) + ob = ConversionTest() + ob.SpamField = System.Int32(1) self.assertRaises(TypeError, test) def testObjectConversion(self): - """Test object conversion.""" + """Test ob conversion.""" from Python.Test import Spam - object = ConversionTest() - self.assertTrue(object.ObjectField == None) + ob = ConversionTest() + self.assertTrue(ob.ObjectField == None) - object.ObjectField = Spam("eggs") - self.assertTrue(object.ObjectField.__class__.__name__ == "Spam") - self.assertTrue(object.ObjectField.GetValue() == "eggs") + ob.ObjectField = Spam("eggs") + self.assertTrue(ob.ObjectField.__class__.__name__ == "Spam") + self.assertTrue(ob.ObjectField.GetValue() == "eggs") - object.ObjectField = None - self.assertTrue(object.ObjectField == None) + ob.ObjectField = None + self.assertTrue(ob.ObjectField == None) - object.ObjectField = System.String("spam") - self.assertTrue(object.ObjectField == "spam") + ob.ObjectField = System.String("spam") + self.assertTrue(ob.ObjectField == "spam") - object.ObjectField = System.Int32(1) - self.assertTrue(object.ObjectField == 1) + ob.ObjectField = System.Int32(1) + self.assertTrue(ob.ObjectField == 1) # need to test subclass here def test(): - object = ConversionTest() - object.ObjectField = self + ob = ConversionTest() + ob.ObjectField = self self.assertRaises(TypeError, test) @@ -732,56 +732,56 @@ def testEnumConversion(self): """Test enum conversion.""" from Python.Test import ShortEnum - object = ConversionTest() - self.assertTrue(object.EnumField == ShortEnum.Zero) + ob = ConversionTest() + self.assertTrue(ob.EnumField == ShortEnum.Zero) - object.EnumField = ShortEnum.One - self.assertTrue(object.EnumField == ShortEnum.One) + ob.EnumField = ShortEnum.One + self.assertTrue(ob.EnumField == ShortEnum.One) - object.EnumField = 0 - self.assertTrue(object.EnumField == ShortEnum.Zero) - self.assertTrue(object.EnumField == 0) + ob.EnumField = 0 + self.assertTrue(ob.EnumField == ShortEnum.Zero) + self.assertTrue(ob.EnumField == 0) - object.EnumField = 1 - self.assertTrue(object.EnumField == ShortEnum.One) - self.assertTrue(object.EnumField == 1) + ob.EnumField = 1 + self.assertTrue(ob.EnumField == ShortEnum.One) + self.assertTrue(ob.EnumField == 1) def test(): - object = ConversionTest() - object.EnumField = 10 + ob = ConversionTest() + ob.EnumField = 10 self.assertRaises(ValueError, test) def test(): - object = ConversionTest() - object.EnumField = 255 + ob = ConversionTest() + ob.EnumField = 255 self.assertRaises(ValueError, test) def test(): - object = ConversionTest() - object.EnumField = 1000000 + ob = ConversionTest() + ob.EnumField = 1000000 self.assertRaises(OverflowError, test) def test(): - object = ConversionTest() - object.EnumField = "spam" + ob = ConversionTest() + ob.EnumField = "spam" self.assertRaises(TypeError, test) def testNullConversion(self): """Test null conversion.""" - object = ConversionTest() + ob = ConversionTest() - object.StringField = None - self.assertTrue(object.StringField == None) + ob.StringField = None + self.assertTrue(ob.StringField == None) - object.ObjectField = None - self.assertTrue(object.ObjectField == None) + ob.ObjectField = None + self.assertTrue(ob.ObjectField == None) - object.SpamField = None - self.assertTrue(object.SpamField == None) + ob.SpamField = None + self.assertTrue(ob.SpamField == None) # Primitive types and enums should not be set to null. @@ -797,37 +797,37 @@ def test(): def testByteArrayConversion(self): """Test byte array conversion.""" - object = ConversionTest() + ob = ConversionTest() - self.assertTrue(object.ByteArrayField == None) + self.assertTrue(ob.ByteArrayField == None) - object.ByteArrayField = [0, 1, 2, 3, 4] - array = object.ByteArrayField + ob.ByteArrayField = [0, 1, 2, 3, 4] + array = ob.ByteArrayField self.assertTrue(len(array) == 5) self.assertTrue(array[0] == 0) self.assertTrue(array[4] == 4) value = b"testing" - object.ByteArrayField = value - array = object.ByteArrayField + ob.ByteArrayField = value + array = ob.ByteArrayField for i in range(len(value)): self.assertTrue(array[i] == indexbytes(value, i)) def testSByteArrayConversion(self): """Test sbyte array conversion.""" - object = ConversionTest() + ob = ConversionTest() - self.assertTrue(object.SByteArrayField == None) + self.assertTrue(ob.SByteArrayField == None) - object.SByteArrayField = [0, 1, 2, 3, 4] - array = object.SByteArrayField + ob.SByteArrayField = [0, 1, 2, 3, 4] + array = ob.SByteArrayField self.assertTrue(len(array) == 5) self.assertTrue(array[0] == 0) self.assertTrue(array[4] == 4) value = b"testing" - object.SByteArrayField = value - array = object.SByteArrayField + ob.SByteArrayField = value + array = ob.SByteArrayField for i in range(len(value)): self.assertTrue(array[i] == indexbytes(value, i)) diff --git a/src/tests/test_enum.py b/src/tests/test_enum.py index 589fc1796..493395d27 100644 --- a/src/tests/test_enum.py +++ b/src/tests/test_enum.py @@ -125,11 +125,11 @@ def test(): def testEnumConversion(self): """Test enumeration conversion.""" - object = Test.FieldTest() - self.assertTrue(object.EnumField == 0) + ob = Test.FieldTest() + self.assertTrue(ob.EnumField == 0) - object.EnumField = Test.ShortEnum.One - self.assertTrue(object.EnumField == 1) + ob.EnumField = Test.ShortEnum.One + self.assertTrue(ob.EnumField == 1) def test(): Test.FieldTest().EnumField = 20 diff --git a/src/tests/test_event.py b/src/tests/test_event.py index 5417b4a8f..008b6b20a 100644 --- a/src/tests/test_event.py +++ b/src/tests/test_event.py @@ -12,17 +12,17 @@ class EventTests(unittest.TestCase): def testPublicInstanceEvent(self): """Test public instance events.""" - object = EventTest() + ob = EventTest() handler = GenericHandler() self.assertTrue(handler.value == None) - object.PublicEvent += handler.handler + ob.PublicEvent += handler.handler - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) - object.PublicEvent -= handler.handler + ob.PublicEvent -= handler.handler def testPublicStaticEvent(self): """Test public static events.""" @@ -36,21 +36,21 @@ def testPublicStaticEvent(self): def testProtectedInstanceEvent(self): """Test protected instance events.""" - object = EventTest() + ob = EventTest() handler = GenericHandler() self.assertTrue(handler.value == None) - object.ProtectedEvent += handler.handler + ob.ProtectedEvent += handler.handler - object.OnProtectedEvent(TestEventArgs(10)) + ob.OnProtectedEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) - object.ProtectedEvent -= handler.handler + ob.ProtectedEvent -= handler.handler def testProtectedStaticEvent(self): """Test protected static events.""" - object = EventTest + ob = EventTest handler = GenericHandler() self.assertTrue(handler.value == None) @@ -100,213 +100,213 @@ def test(): def testMulticastEvent(self): """Test multicast events.""" - object = EventTest() + ob = EventTest() handler1 = GenericHandler() handler2 = GenericHandler() handler3 = GenericHandler() - object.PublicEvent += handler1.handler - object.PublicEvent += handler2.handler - object.PublicEvent += handler3.handler + ob.PublicEvent += handler1.handler + ob.PublicEvent += handler2.handler + ob.PublicEvent += handler3.handler - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler1.value == 10) self.assertTrue(handler2.value == 10) self.assertTrue(handler3.value == 10) - object.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler1.value == 20) self.assertTrue(handler2.value == 20) self.assertTrue(handler3.value == 20) - object.PublicEvent -= handler1.handler - object.PublicEvent -= handler2.handler - object.PublicEvent -= handler3.handler + ob.PublicEvent -= handler1.handler + ob.PublicEvent -= handler2.handler + ob.PublicEvent -= handler3.handler def testInstanceMethodHandler(self): """Test instance method handlers.""" - object = EventTest() + ob = EventTest() handler = GenericHandler() - object.PublicEvent += handler.handler + ob.PublicEvent += handler.handler self.assertTrue(handler.value == None) - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) - object.PublicEvent -= handler.handler + ob.PublicEvent -= handler.handler self.assertTrue(handler.value == 10) - object.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) def testVarArgsInstanceMethodHandler(self): """Test vararg instance method handlers.""" - object = EventTest() + ob = EventTest() handler = VariableArgsHandler() - object.PublicEvent += handler.handler + ob.PublicEvent += handler.handler self.assertTrue(handler.value == None) - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) - object.PublicEvent -= handler.handler + ob.PublicEvent -= handler.handler self.assertTrue(handler.value == 10) - object.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) - def testCallableObjectHandler(self): - """Test callable object handlers.""" - object = EventTest() + def testCallableobHandler(self): + """Test callable ob handlers.""" + ob = EventTest() handler = CallableHandler() - object.PublicEvent += handler + ob.PublicEvent += handler self.assertTrue(handler.value == None) - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) - object.PublicEvent -= handler + ob.PublicEvent -= handler self.assertTrue(handler.value == 10) - object.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) def testVarArgsCallableHandler(self): """Test varargs callable handlers.""" - object = EventTest() + ob = EventTest() handler = VarCallableHandler() - object.PublicEvent += handler + ob.PublicEvent += handler self.assertTrue(handler.value == None) - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) - object.PublicEvent -= handler + ob.PublicEvent -= handler self.assertTrue(handler.value == 10) - object.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) def testStaticMethodHandler(self): """Test static method handlers.""" - object = EventTest() + ob = EventTest() handler = StaticMethodHandler() StaticMethodHandler.value = None - object.PublicEvent += handler.handler + ob.PublicEvent += handler.handler self.assertTrue(handler.value == None) - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) - object.PublicEvent -= handler.handler + ob.PublicEvent -= handler.handler self.assertTrue(handler.value == 10) - object.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) def testClassMethodHandler(self): """Test class method handlers.""" - object = EventTest() + ob = EventTest() handler = ClassMethodHandler() ClassMethodHandler.value = None - object.PublicEvent += handler.handler + ob.PublicEvent += handler.handler self.assertTrue(handler.value == None) - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) - object.PublicEvent -= handler.handler + ob.PublicEvent -= handler.handler self.assertTrue(handler.value == 10) - object.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) def testManagedInstanceMethodHandler(self): """Test managed instance method handlers.""" - object = EventTest() + ob = EventTest() - object.PublicEvent += object.GenericHandler - self.assertTrue(object.value == 0) + ob.PublicEvent += ob.GenericHandler + self.assertTrue(ob.value == 0) - object.OnPublicEvent(TestEventArgs(10)) - self.assertTrue(object.value == 10) + ob.OnPublicEvent(TestEventArgs(10)) + self.assertTrue(ob.value == 10) - object.PublicEvent -= object.GenericHandler - self.assertTrue(object.value == 10) + ob.PublicEvent -= ob.GenericHandler + self.assertTrue(ob.value == 10) - object.OnPublicEvent(TestEventArgs(20)) - self.assertTrue(object.value == 10) + ob.OnPublicEvent(TestEventArgs(20)) + self.assertTrue(ob.value == 10) def testManagedStaticMethodHandler(self): """Test managed static method handlers.""" - object = EventTest() + ob = EventTest() EventTest.s_value = 0 - object.PublicEvent += object.StaticHandler + ob.PublicEvent += ob.StaticHandler self.assertTrue(EventTest.s_value == 0) - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(EventTest.s_value == 10) - object.PublicEvent -= object.StaticHandler + ob.PublicEvent -= ob.StaticHandler self.assertTrue(EventTest.s_value == 10) - object.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(EventTest.s_value == 10) def testUnboundMethodHandler(self): """Test failure mode for unbound method handlers.""" - object = EventTest() - object.PublicEvent += GenericHandler.handler + ob = EventTest() + ob.PublicEvent += GenericHandler.handler try: - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) except TypeError: - object.PublicEvent -= GenericHandler.handler + ob.PublicEvent -= GenericHandler.handler return raise TypeError("should have raised a TypeError") def testFunctionHandler(self): """Test function handlers.""" - object = EventTest() + ob = EventTest() dict = {'value': None} def handler(sender, args, dict=dict): dict['value'] = args.value - object.PublicEvent += handler + ob.PublicEvent += handler self.assertTrue(dict['value'] == None) - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(dict['value'] == 10) - object.PublicEvent -= handler + ob.PublicEvent -= handler self.assertTrue(dict['value'] == 10) - object.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(dict['value'] == 10) def testAddNonCallableHandler(self): """Test handling of attempts to add non-callable handlers.""" def test(): - object = EventTest() - object.PublicEvent += 10 + ob = EventTest() + ob.PublicEvent += 10 self.assertRaises(TypeError, test) def test(): - object = EventTest() - object.PublicEvent += "spam" + ob = EventTest() + ob.PublicEvent += "spam" self.assertRaises(TypeError, test) @@ -314,124 +314,124 @@ def test(): class spam: pass - object = EventTest() - object.PublicEvent += spam() + ob = EventTest() + ob.PublicEvent += spam() self.assertRaises(TypeError, test) def testRemoveMultipleHandlers(self): """Test removing multiple instances of the same handler.""" - object = EventTest() + ob = EventTest() handler = MultipleHandler() h1 = handler.handler - object.PublicEvent += h1 + ob.PublicEvent += h1 h2 = handler.handler - object.PublicEvent += h2 + ob.PublicEvent += h2 - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 20) - object.PublicEvent -= h1 + ob.PublicEvent -= h1 - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 30) - object.PublicEvent -= h2 + ob.PublicEvent -= h2 - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 30) # try again, removing in a different order. - object = EventTest() + ob = EventTest() handler = MultipleHandler() h1 = handler.handler - object.PublicEvent += h1 + ob.PublicEvent += h1 h2 = handler.handler - object.PublicEvent += h2 + ob.PublicEvent += h2 - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 20) - object.PublicEvent -= h2 + ob.PublicEvent -= h2 - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 30) - object.PublicEvent -= h1 + ob.PublicEvent -= h1 - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 30) def testRemoveMultipleStaticHandlers(self): """Test removing multiple instances of a static handler.""" - object = EventTest() + ob = EventTest() handler = MultipleHandler() h1 = handler.handler - object.PublicStaticEvent += h1 + ob.PublicStaticEvent += h1 h2 = handler.handler - object.PublicStaticEvent += h2 + ob.PublicStaticEvent += h2 - object.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(TestEventArgs(10)) self.assertTrue(handler.value == 20) - object.PublicStaticEvent -= h1 + ob.PublicStaticEvent -= h1 - object.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(TestEventArgs(10)) self.assertTrue(handler.value == 30) - object.PublicStaticEvent -= h2 + ob.PublicStaticEvent -= h2 - object.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(TestEventArgs(10)) self.assertTrue(handler.value == 30) # try again, removing in a different order. - object = EventTest() + ob = EventTest() handler = MultipleHandler() h1 = handler.handler - object.PublicStaticEvent += h1 + ob.PublicStaticEvent += h1 h2 = handler.handler - object.PublicStaticEvent += h2 + ob.PublicStaticEvent += h2 - object.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(TestEventArgs(10)) self.assertTrue(handler.value == 20) - object.PublicStaticEvent -= h2 + ob.PublicStaticEvent -= h2 - object.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(TestEventArgs(10)) self.assertTrue(handler.value == 30) - object.PublicStaticEvent -= h1 + ob.PublicStaticEvent -= h1 - object.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(TestEventArgs(10)) self.assertTrue(handler.value == 30) def testRandomMultipleHandlers(self): """Test random subscribe / unsubscribe of the same handlers.""" import random - object = EventTest() + ob = EventTest() handler = MultipleHandler() handler2 = MultipleHandler() - object.PublicEvent += handler2.handler - object.PublicEvent += handler2.handler + ob.PublicEvent += handler2.handler + ob.PublicEvent += handler2.handler handlers = [] for i in range(30): method = handler.handler - object.PublicEvent += method + ob.PublicEvent += method handlers.append(method) - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 300) self.assertTrue(handler2.value == 20) handler.value = 0 @@ -440,46 +440,46 @@ def testRandomMultipleHandlers(self): for i in range(30): item = random.choice(handlers) handlers.remove(item) - object.PublicEvent -= item + ob.PublicEvent -= item handler.value = 0 - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == (len(handlers) * 10)) self.assertTrue(handler2.value == ((i + 1) * 20)) handler2.value = 0 - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler2.value == 20) - object.PublicEvent -= handler2.handler + ob.PublicEvent -= handler2.handler handler2.value = 0 - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler2.value == 10) - object.PublicEvent -= handler2.handler + ob.PublicEvent -= handler2.handler handler2.value = 0 - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler2.value == 0) def testRemoveInternalCallHandler(self): """Test remove on an event sink implemented w/internalcall.""" - object = EventTest() + ob = EventTest() def h(sender, args): pass - object.PublicEvent += h - object.PublicEvent -= h + ob.PublicEvent += h + ob.PublicEvent -= h def testRemoveUnknownHandler(self): """Test removing an event handler that was never added.""" def test(): - object = EventTest() + ob = EventTest() handler = GenericHandler() - object.PublicEvent -= handler.handler + ob.PublicEvent -= handler.handler self.assertRaises(ValueError, test) @@ -490,78 +490,78 @@ class BadHandler: def handler(self, one): return 'too many' - object = EventTest() + ob = EventTest() handler = BadHandler() def test(): - object.PublicEvent += handler.handler - object.OnPublicEvent(TestEventArgs(10)) + ob.PublicEvent += handler.handler + ob.OnPublicEvent(TestEventArgs(10)) self.assertRaises(TypeError, test) - object.PublicEvent -= handler.handler + ob.PublicEvent -= handler.handler class BadHandler: def handler(self, one, two, three, four, five): return 'not enough' - object = EventTest() + ob = EventTest() handler = BadHandler() def test(): - object.PublicEvent += handler.handler - object.OnPublicEvent(TestEventArgs(10)) + ob.PublicEvent += handler.handler + ob.OnPublicEvent(TestEventArgs(10)) self.assertRaises(TypeError, test) - object.PublicEvent -= handler.handler + ob.PublicEvent -= handler.handler def testIncorrectInvokation(self): """Test incorrect invocation of events.""" - object = EventTest() + ob = EventTest() handler = GenericHandler() - object.PublicEvent += handler.handler + ob.PublicEvent += handler.handler def test(): - object.OnPublicEvent() + ob.OnPublicEvent() self.assertRaises(TypeError, test) def test(): - object.OnPublicEvent(32) + ob.OnPublicEvent(32) self.assertRaises(TypeError, test) - object.PublicEvent -= handler.handler + ob.PublicEvent -= handler.handler def testExplicitCLSEventRegistration(self): """Test explicit CLS event registration.""" from Python.Test import TestEventHandler - object = EventTest() + ob = EventTest() handler = GenericHandler() delegate = TestEventHandler(handler.handler) - object.add_PublicEvent(delegate) + ob.add_PublicEvent(delegate) self.assertTrue(handler.value == None) - object.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) - object.remove_PublicEvent(delegate) + ob.remove_PublicEvent(delegate) self.assertTrue(handler.value == 10) - object.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) def testImplicitCLSEventRegistration(self): """Test implicit CLS event registration.""" def test(): - object = EventTest() + ob = EventTest() handler = GenericHandler() - object.add_PublicEvent(handler.handler) + ob.add_PublicEvent(handler.handler) self.assertRaises(TypeError, test) @@ -591,8 +591,8 @@ def test(): self.assertRaises(TypeError, test) def test(): - object = EventTest() - object.PublicEvent = 0 + ob = EventTest() + ob.PublicEvent = 0 self.assertRaises(TypeError, test) diff --git a/src/tests/test_field.py b/src/tests/test_field.py index 8a2c0c67a..1a46e1d96 100644 --- a/src/tests/test_field.py +++ b/src/tests/test_field.py @@ -11,11 +11,11 @@ class FieldTests(unittest.TestCase): def testPublicInstanceField(self): """Test public instance fields.""" - object = FieldTest() - self.assertTrue(object.PublicField == 0) + ob = FieldTest() + self.assertTrue(ob.PublicField == 0) - object.PublicField = 1 - self.assertTrue(object.PublicField == 1) + ob.PublicField = 1 + self.assertTrue(ob.PublicField == 1) def test(): del FieldTest().PublicField @@ -24,15 +24,15 @@ def test(): def testPublicStaticField(self): """Test public static fields.""" - object = FieldTest() + ob = FieldTest() self.assertTrue(FieldTest.PublicStaticField == 0) FieldTest.PublicStaticField = 1 self.assertTrue(FieldTest.PublicStaticField == 1) - self.assertTrue(object.PublicStaticField == 1) - object.PublicStaticField = 0 - self.assertTrue(object.PublicStaticField == 0) + self.assertTrue(ob.PublicStaticField == 1) + ob.PublicStaticField = 0 + self.assertTrue(ob.PublicStaticField == 0) def test(): del FieldTest.PublicStaticField @@ -46,11 +46,11 @@ def test(): def testProtectedInstanceField(self): """Test protected instance fields.""" - object = FieldTest() - self.assertTrue(object.ProtectedField == 0) + ob = FieldTest() + self.assertTrue(ob.ProtectedField == 0) - object.ProtectedField = 1 - self.assertTrue(object.ProtectedField == 1) + ob.ProtectedField = 1 + self.assertTrue(ob.ProtectedField == 1) def test(): del FieldTest().ProtectedField @@ -59,15 +59,15 @@ def test(): def testProtectedStaticField(self): """Test protected static fields.""" - object = FieldTest() + ob = FieldTest() self.assertTrue(FieldTest.ProtectedStaticField == 0) FieldTest.ProtectedStaticField = 1 self.assertTrue(FieldTest.ProtectedStaticField == 1) - self.assertTrue(object.ProtectedStaticField == 1) - object.ProtectedStaticField = 0 - self.assertTrue(object.ProtectedStaticField == 0) + self.assertTrue(ob.ProtectedStaticField == 1) + ob.ProtectedStaticField = 0 + self.assertTrue(ob.ProtectedStaticField == 0) def test(): del FieldTest.ProtectedStaticField @@ -95,10 +95,10 @@ def test(): def testReadOnlyStaticField(self): """Test readonly static fields.""" - object = FieldTest() + ob = FieldTest() self.assertTrue(FieldTest.ReadOnlyStaticField == 0) - self.assertTrue(object.ReadOnlyStaticField == 0) + self.assertTrue(ob.ReadOnlyStaticField == 0) def test(): FieldTest.ReadOnlyStaticField = 1 @@ -122,10 +122,10 @@ def test(): def testConstantField(self): """Test const fields.""" - object = FieldTest() + ob = FieldTest() self.assertTrue(FieldTest.ConstField == 0) - self.assertTrue(object.ConstField == 0) + self.assertTrue(ob.ConstField == 0) def test(): FieldTest().ConstField = 1 @@ -190,15 +190,15 @@ def testFieldDescriptorGetSet(self): # a descriptor actually goes through the descriptor (rather than # silently replacing the descriptor in the instance or type dict. - object = FieldTest() + ob = FieldTest() self.assertTrue(FieldTest.PublicStaticField == 0) - self.assertTrue(object.PublicStaticField == 0) + self.assertTrue(ob.PublicStaticField == 0) descriptor = FieldTest.__dict__['PublicStaticField'] self.assertTrue(type(descriptor) != int) - object.PublicStaticField = 0 + ob.PublicStaticField = 0 descriptor = FieldTest.__dict__['PublicStaticField'] self.assertTrue(type(descriptor) != int) @@ -231,180 +231,180 @@ def test(): def testBooleanField(self): """Test boolean fields.""" # change this to true / false later for Python 2.3? - object = FieldTest() - self.assertTrue(object.BooleanField == False) + ob = FieldTest() + self.assertTrue(ob.BooleanField == False) - object.BooleanField = True - self.assertTrue(object.BooleanField == True) + ob.BooleanField = True + self.assertTrue(ob.BooleanField == True) - object.BooleanField = False - self.assertTrue(object.BooleanField == False) + ob.BooleanField = False + self.assertTrue(ob.BooleanField == False) - object.BooleanField = 1 - self.assertTrue(object.BooleanField == True) + ob.BooleanField = 1 + self.assertTrue(ob.BooleanField == True) - object.BooleanField = 0 - self.assertTrue(object.BooleanField == False) + ob.BooleanField = 0 + self.assertTrue(ob.BooleanField == False) def testSByteField(self): """Test sbyte fields.""" - object = FieldTest() - self.assertTrue(object.SByteField == 0) + ob = FieldTest() + self.assertTrue(ob.SByteField == 0) - object.SByteField = 1 - self.assertTrue(object.SByteField == 1) + ob.SByteField = 1 + self.assertTrue(ob.SByteField == 1) def testByteField(self): """Test byte fields.""" - object = FieldTest() - self.assertTrue(object.ByteField == 0) + ob = FieldTest() + self.assertTrue(ob.ByteField == 0) - object.ByteField = 1 - self.assertTrue(object.ByteField == 1) + ob.ByteField = 1 + self.assertTrue(ob.ByteField == 1) def testCharField(self): """Test char fields.""" - object = FieldTest() - self.assertTrue(object.CharField == u'A') - self.assertTrue(object.CharField == 'A') + ob = FieldTest() + self.assertTrue(ob.CharField == u'A') + self.assertTrue(ob.CharField == 'A') - object.CharField = 'B' - self.assertTrue(object.CharField == u'B') - self.assertTrue(object.CharField == 'B') + ob.CharField = 'B' + self.assertTrue(ob.CharField == u'B') + self.assertTrue(ob.CharField == 'B') - object.CharField = u'C' - self.assertTrue(object.CharField == u'C') - self.assertTrue(object.CharField == 'C') + ob.CharField = u'C' + self.assertTrue(ob.CharField == u'C') + self.assertTrue(ob.CharField == 'C') def testInt16Field(self): """Test int16 fields.""" - object = FieldTest() - self.assertTrue(object.Int16Field == 0) + ob = FieldTest() + self.assertTrue(ob.Int16Field == 0) - object.Int16Field = 1 - self.assertTrue(object.Int16Field == 1) + ob.Int16Field = 1 + self.assertTrue(ob.Int16Field == 1) def testInt32Field(self): """Test int32 fields.""" - object = FieldTest() - self.assertTrue(object.Int32Field == 0) + ob = FieldTest() + self.assertTrue(ob.Int32Field == 0) - object.Int32Field = 1 - self.assertTrue(object.Int32Field == 1) + ob.Int32Field = 1 + self.assertTrue(ob.Int32Field == 1) def testInt64Field(self): """Test int64 fields.""" - object = FieldTest() - self.assertTrue(object.Int64Field == 0) + ob = FieldTest() + self.assertTrue(ob.Int64Field == 0) - object.Int64Field = 1 - self.assertTrue(object.Int64Field == 1) + ob.Int64Field = 1 + self.assertTrue(ob.Int64Field == 1) def testUInt16Field(self): """Test uint16 fields.""" - object = FieldTest() - self.assertTrue(object.UInt16Field == 0) + ob = FieldTest() + self.assertTrue(ob.UInt16Field == 0) - object.UInt16Field = 1 - self.assertTrue(object.UInt16Field == 1) + ob.UInt16Field = 1 + self.assertTrue(ob.UInt16Field == 1) def testUInt32Field(self): """Test uint32 fields.""" - object = FieldTest() - self.assertTrue(object.UInt32Field == 0) + ob = FieldTest() + self.assertTrue(ob.UInt32Field == 0) - object.UInt32Field = 1 - self.assertTrue(object.UInt32Field == 1) + ob.UInt32Field = 1 + self.assertTrue(ob.UInt32Field == 1) def testUInt64Field(self): """Test uint64 fields.""" - object = FieldTest() - self.assertTrue(object.UInt64Field == 0) + ob = FieldTest() + self.assertTrue(ob.UInt64Field == 0) - object.UInt64Field = 1 - self.assertTrue(object.UInt64Field == 1) + ob.UInt64Field = 1 + self.assertTrue(ob.UInt64Field == 1) def testSingleField(self): """Test single fields.""" - object = FieldTest() - self.assertTrue(object.SingleField == 0.0) + ob = FieldTest() + self.assertTrue(ob.SingleField == 0.0) - object.SingleField = 1.1 - self.assertTrue(object.SingleField == 1.1) + ob.SingleField = 1.1 + self.assertTrue(ob.SingleField == 1.1) def testDoubleField(self): """Test double fields.""" - object = FieldTest() - self.assertTrue(object.DoubleField == 0.0) + ob = FieldTest() + self.assertTrue(ob.DoubleField == 0.0) - object.DoubleField = 1.1 - self.assertTrue(object.DoubleField == 1.1) + ob.DoubleField = 1.1 + self.assertTrue(ob.DoubleField == 1.1) def testDecimalField(self): """Test decimal fields.""" - object = FieldTest() - self.assertTrue(object.DecimalField == System.Decimal(0)) + ob = FieldTest() + self.assertTrue(ob.DecimalField == System.Decimal(0)) - object.DecimalField = System.Decimal(1) - self.assertTrue(object.DecimalField == System.Decimal(1)) + ob.DecimalField = System.Decimal(1) + self.assertTrue(ob.DecimalField == System.Decimal(1)) def testStringField(self): """Test string fields.""" - object = FieldTest() - self.assertTrue(object.StringField == "spam") + ob = FieldTest() + self.assertTrue(ob.StringField == "spam") - object.StringField = "eggs" - self.assertTrue(object.StringField == "eggs") + ob.StringField = "eggs" + self.assertTrue(ob.StringField == "eggs") def testInterfaceField(self): """Test interface fields.""" from Python.Test import Spam, ISpam - object = FieldTest() + ob = FieldTest() - self.assertTrue(ISpam(object.SpamField).GetValue() == "spam") - self.assertTrue(object.SpamField.GetValue() == "spam") + self.assertTrue(ISpam(ob.SpamField).GetValue() == "spam") + self.assertTrue(ob.SpamField.GetValue() == "spam") - object.SpamField = Spam("eggs") - self.assertTrue(ISpam(object.SpamField).GetValue() == "eggs") - self.assertTrue(object.SpamField.GetValue() == "eggs") + ob.SpamField = Spam("eggs") + self.assertTrue(ISpam(ob.SpamField).GetValue() == "eggs") + self.assertTrue(ob.SpamField.GetValue() == "eggs") def testObjectField(self): - """Test object fields.""" - object = FieldTest() - self.assertTrue(object.ObjectField == None) + """Test ob fields.""" + ob = FieldTest() + self.assertTrue(ob.ObjectField == None) - object.ObjectField = System.String("spam") - self.assertTrue(object.ObjectField == "spam") + ob.ObjectField = System.String("spam") + self.assertTrue(ob.ObjectField == "spam") - object.ObjectField = System.Int32(1) - self.assertTrue(object.ObjectField == 1) + ob.ObjectField = System.Int32(1) + self.assertTrue(ob.ObjectField == 1) - object.ObjectField = None - self.assertTrue(object.ObjectField == None) + ob.ObjectField = None + self.assertTrue(ob.ObjectField == None) def testEnumField(self): """Test enum fields.""" from Python.Test import ShortEnum - object = FieldTest() - self.assertTrue(object.EnumField == ShortEnum.Zero) + ob = FieldTest() + self.assertTrue(ob.EnumField == ShortEnum.Zero) - object.EnumField = ShortEnum.One - self.assertTrue(object.EnumField == ShortEnum.One) + ob.EnumField = ShortEnum.One + self.assertTrue(ob.EnumField == ShortEnum.One) def testNullableField(self): """Test nullable fields.""" - object = FieldTest() + ob = FieldTest() - object.StringField = None - self.assertTrue(object.StringField == None) + ob.StringField = None + self.assertTrue(ob.StringField == None) - object.ObjectField = None - self.assertTrue(object.ObjectField == None) + ob.ObjectField = None + self.assertTrue(ob.ObjectField == None) - object.SpamField = None - self.assertTrue(object.SpamField == None) + ob.SpamField = None + self.assertTrue(ob.SpamField == None) # Primitive types and enums should not be set to null. diff --git a/src/tests/test_indexer.py b/src/tests/test_indexer.py index 74c9b1876..4e631de4f 100644 --- a/src/tests/test_indexer.py +++ b/src/tests/test_indexer.py @@ -12,616 +12,616 @@ class IndexerTests(unittest.TestCase): def testPublicIndexer(self): """Test public indexers.""" - object = Test.PublicIndexerTest() + ob = Test.PublicIndexerTest() - object[0] = "zero" - self.assertTrue(object[0] == "zero") + ob[0] = "zero" + self.assertTrue(ob[0] == "zero") - object[1] = "one" - self.assertTrue(object[1] == "one") + ob[1] = "one" + self.assertTrue(ob[1] == "one") - self.assertTrue(object[10] == None) + self.assertTrue(ob[10] == None) def testProtectedIndexer(self): """Test protected indexers.""" - object = Test.ProtectedIndexerTest() + ob = Test.ProtectedIndexerTest() - object[0] = "zero" - self.assertTrue(object[0] == "zero") + ob[0] = "zero" + self.assertTrue(ob[0] == "zero") - object[1] = "one" - self.assertTrue(object[1] == "one") + ob[1] = "one" + self.assertTrue(ob[1] == "one") - self.assertTrue(object[10] == None) + self.assertTrue(ob[10] == None) def testInternalIndexer(self): """Test internal indexers.""" - object = Test.InternalIndexerTest() + ob = Test.InternalIndexerTest() def test(): - object[0] = "zero" + ob[0] = "zero" self.assertRaises(TypeError, test) def test(): - Test.InternalIndexerTest.__getitem__(object, 0) + Test.InternalIndexerTest.__getitem__(ob, 0) self.assertRaises(TypeError, test) def test(): - object.__getitem__(0) + ob.__getitem__(0) self.assertRaises(TypeError, test) def testPrivateIndexer(self): """Test private indexers.""" - object = Test.PrivateIndexerTest() + ob = Test.PrivateIndexerTest() def test(): - object[0] = "zero" + ob[0] = "zero" self.assertRaises(TypeError, test) def test(): - Test.PrivateIndexerTest.__getitem__(object, 0) + Test.PrivateIndexerTest.__getitem__(ob, 0) self.assertRaises(TypeError, test) def test(): - object.__getitem__(0) + ob.__getitem__(0) self.assertRaises(TypeError, test) def testBooleanIndexer(self): """Test boolean indexers.""" - object = Test.BooleanIndexerTest() + ob = Test.BooleanIndexerTest() - self.assertTrue(object[True] == None) - self.assertTrue(object[1] == None) + self.assertTrue(ob[True] == None) + self.assertTrue(ob[1] == None) - object[0] = "false" - self.assertTrue(object[0] == "false") + ob[0] = "false" + self.assertTrue(ob[0] == "false") - object[1] = "true" - self.assertTrue(object[1] == "true") + ob[1] = "true" + self.assertTrue(ob[1] == "true") - object[False] = "false" - self.assertTrue(object[False] == "false") + ob[False] = "false" + self.assertTrue(ob[False] == "false") - object[True] = "true" - self.assertTrue(object[True] == "true") + ob[True] = "true" + self.assertTrue(ob[True] == "true") def testByteIndexer(self): """Test byte indexers.""" - object = Test.ByteIndexerTest() + ob = Test.ByteIndexerTest() max = 255 min = 0 - self.assertTrue(object[max] == None) + self.assertTrue(ob[max] == None) - object[max] = str(max) - self.assertTrue(object[max] == str(max)) + ob[max] = str(max) + self.assertTrue(ob[max] == str(max)) - object[min] = str(min) - self.assertTrue(object[min] == str(min)) + ob[min] = str(min) + self.assertTrue(ob[min] == str(min)) def test(): - object = Test.ByteIndexerTest() - object["wrong"] + ob = Test.ByteIndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.ByteIndexerTest() - object["wrong"] = "wrong" + ob = Test.ByteIndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testSByteIndexer(self): """Test sbyte indexers.""" - object = Test.SByteIndexerTest() + ob = Test.SByteIndexerTest() max = 127 min = -128 - self.assertTrue(object[max] == None) + self.assertTrue(ob[max] == None) - object[max] = str(max) - self.assertTrue(object[max] == str(max)) + ob[max] = str(max) + self.assertTrue(ob[max] == str(max)) - object[min] = str(min) - self.assertTrue(object[min] == str(min)) + ob[min] = str(min) + self.assertTrue(ob[min] == str(min)) def test(): - object = Test.SByteIndexerTest() - object["wrong"] + ob = Test.SByteIndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.SByteIndexerTest() - object["wrong"] = "wrong" + ob = Test.SByteIndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testCharIndexer(self): """Test char indexers.""" - object = Test.CharIndexerTest() + ob = Test.CharIndexerTest() max = unichr(65535) min = unichr(0) - self.assertTrue(object[max] == None) + self.assertTrue(ob[max] == None) - object[max] = "max" - self.assertTrue(object[max] == "max") + ob[max] = "max" + self.assertTrue(ob[max] == "max") - object[min] = "min" - self.assertTrue(object[min] == "min") + ob[min] = "min" + self.assertTrue(ob[min] == "min") def test(): - object = Test.CharIndexerTest() - object["wrong"] + ob = Test.CharIndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.CharIndexerTest() - object["wrong"] = "wrong" + ob = Test.CharIndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testInt16Indexer(self): """Test Int16 indexers.""" - object = Test.Int16IndexerTest() + ob = Test.Int16IndexerTest() max = 32767 min = -32768 - self.assertTrue(object[max] == None) + self.assertTrue(ob[max] == None) - object[max] = str(max) - self.assertTrue(object[max] == str(max)) + ob[max] = str(max) + self.assertTrue(ob[max] == str(max)) - object[min] = str(min) - self.assertTrue(object[min] == str(min)) + ob[min] = str(min) + self.assertTrue(ob[min] == str(min)) def test(): - object = Test.Int16IndexerTest() - object["wrong"] + ob = Test.Int16IndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.Int16IndexerTest() - object["wrong"] = "wrong" + ob = Test.Int16IndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testInt32Indexer(self): """Test Int32 indexers.""" - object = Test.Int32IndexerTest() + ob = Test.Int32IndexerTest() max = 2147483647 min = -2147483648 - self.assertTrue(object[max] == None) + self.assertTrue(ob[max] == None) - object[max] = str(max) - self.assertTrue(object[max] == str(max)) + ob[max] = str(max) + self.assertTrue(ob[max] == str(max)) - object[min] = str(min) - self.assertTrue(object[min] == str(min)) + ob[min] = str(min) + self.assertTrue(ob[min] == str(min)) def test(): - object = Test.Int32IndexerTest() - object["wrong"] + ob = Test.Int32IndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.Int32IndexerTest() - object["wrong"] = "wrong" + ob = Test.Int32IndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testInt64Indexer(self): """Test Int64 indexers.""" - object = Test.Int64IndexerTest() + ob = Test.Int64IndexerTest() max = long(9223372036854775807) min = long(-9223372036854775808) - self.assertTrue(object[max] == None) + self.assertTrue(ob[max] == None) - object[max] = str(max) - self.assertTrue(object[max] == str(max)) + ob[max] = str(max) + self.assertTrue(ob[max] == str(max)) - object[min] = str(min) - self.assertTrue(object[min] == str(min)) + ob[min] = str(min) + self.assertTrue(ob[min] == str(min)) def test(): - object = Test.Int64IndexerTest() - object["wrong"] + ob = Test.Int64IndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.Int64IndexerTest() - object["wrong"] = "wrong" + ob = Test.Int64IndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testUInt16Indexer(self): """Test UInt16 indexers.""" - object = Test.UInt16IndexerTest() + ob = Test.UInt16IndexerTest() max = 65535 min = 0 - self.assertTrue(object[max] == None) + self.assertTrue(ob[max] == None) - object[max] = str(max) - self.assertTrue(object[max] == str(max)) + ob[max] = str(max) + self.assertTrue(ob[max] == str(max)) - object[min] = str(min) - self.assertTrue(object[min] == str(min)) + ob[min] = str(min) + self.assertTrue(ob[min] == str(min)) def test(): - object = Test.UInt16IndexerTest() - object["wrong"] + ob = Test.UInt16IndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.UInt16IndexerTest() - object["wrong"] = "wrong" + ob = Test.UInt16IndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testUInt32Indexer(self): """Test UInt32 indexers.""" - object = Test.UInt32IndexerTest() + ob = Test.UInt32IndexerTest() max = long(4294967295) min = 0 - self.assertTrue(object[max] == None) + self.assertTrue(ob[max] == None) - object[max] = str(max) - self.assertTrue(object[max] == str(max)) + ob[max] = str(max) + self.assertTrue(ob[max] == str(max)) - object[min] = str(min) - self.assertTrue(object[min] == str(min)) + ob[min] = str(min) + self.assertTrue(ob[min] == str(min)) def test(): - object = Test.UInt32IndexerTest() - object["wrong"] + ob = Test.UInt32IndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.UInt32IndexerTest() - object["wrong"] = "wrong" + ob = Test.UInt32IndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testUInt64Indexer(self): """Test UInt64 indexers.""" - object = Test.UInt64IndexerTest() + ob = Test.UInt64IndexerTest() max = long(18446744073709551615) min = 0 - self.assertTrue(object[max] == None) + self.assertTrue(ob[max] == None) - object[max] = str(max) - self.assertTrue(object[max] == str(max)) + ob[max] = str(max) + self.assertTrue(ob[max] == str(max)) - object[min] = str(min) - self.assertTrue(object[min] == str(min)) + ob[min] = str(min) + self.assertTrue(ob[min] == str(min)) def test(): - object = Test.UInt64IndexerTest() - object["wrong"] + ob = Test.UInt64IndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.UInt64IndexerTest() - object["wrong"] = "wrong" + ob = Test.UInt64IndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testSingleIndexer(self): """Test Single indexers.""" - object = Test.SingleIndexerTest() + ob = Test.SingleIndexerTest() max = 3.402823e38 min = -3.402823e38 - self.assertTrue(object[max] == None) + self.assertTrue(ob[max] == None) - object[max] = "max" - self.assertTrue(object[max] == "max") + ob[max] = "max" + self.assertTrue(ob[max] == "max") - object[min] = "min" - self.assertTrue(object[min] == "min") + ob[min] = "min" + self.assertTrue(ob[min] == "min") def test(): - object = Test.SingleIndexerTest() - object["wrong"] + ob = Test.SingleIndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.SingleIndexerTest() - object["wrong"] = "wrong" + ob = Test.SingleIndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testDoubleIndexer(self): """Test Double indexers.""" - object = Test.DoubleIndexerTest() + ob = Test.DoubleIndexerTest() max = 1.7976931348623157e308 min = -1.7976931348623157e308 - self.assertTrue(object[max] == None) + self.assertTrue(ob[max] == None) - object[max] = "max" - self.assertTrue(object[max] == "max") + ob[max] = "max" + self.assertTrue(ob[max] == "max") - object[min] = "min" - self.assertTrue(object[min] == "min") + ob[min] = "min" + self.assertTrue(ob[min] == "min") def test(): - object = Test.DoubleIndexerTest() - object["wrong"] + ob = Test.DoubleIndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.DoubleIndexerTest() - object["wrong"] = "wrong" + ob = Test.DoubleIndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testDecimalIndexer(self): """Test Decimal indexers.""" - object = Test.DecimalIndexerTest() + ob = Test.DecimalIndexerTest() from System import Decimal max_d = Decimal.Parse("79228162514264337593543950335") min_d = Decimal.Parse("-79228162514264337593543950335") - self.assertTrue(object[max_d] == None) + self.assertTrue(ob[max_d] == None) - object[max_d] = "max" - self.assertTrue(object[max_d] == "max") + ob[max_d] = "max" + self.assertTrue(ob[max_d] == "max") - object[min_d] = "min" - self.assertTrue(object[min_d] == "min") + ob[min_d] = "min" + self.assertTrue(ob[min_d] == "min") def test(): - object = Test.DecimalIndexerTest() - object["wrong"] + ob = Test.DecimalIndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.DecimalIndexerTest() - object["wrong"] = "wrong" + ob = Test.DecimalIndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testStringIndexer(self): """Test String indexers.""" - object = Test.StringIndexerTest() + ob = Test.StringIndexerTest() - self.assertTrue(object["spam"] == None) - self.assertTrue(object[u"spam"] == None) + self.assertTrue(ob["spam"] == None) + self.assertTrue(ob[u"spam"] == None) - object["spam"] = "spam" - self.assertTrue(object["spam"] == "spam") - self.assertTrue(object["spam"] == u"spam") - self.assertTrue(object[u"spam"] == "spam") - self.assertTrue(object[u"spam"] == u"spam") + ob["spam"] = "spam" + self.assertTrue(ob["spam"] == "spam") + self.assertTrue(ob["spam"] == u"spam") + self.assertTrue(ob[u"spam"] == "spam") + self.assertTrue(ob[u"spam"] == u"spam") - object[u"eggs"] = u"eggs" - self.assertTrue(object["eggs"] == "eggs") - self.assertTrue(object["eggs"] == u"eggs") - self.assertTrue(object[u"eggs"] == "eggs") - self.assertTrue(object[u"eggs"] == u"eggs") + ob[u"eggs"] = u"eggs" + self.assertTrue(ob["eggs"] == "eggs") + self.assertTrue(ob["eggs"] == u"eggs") + self.assertTrue(ob[u"eggs"] == "eggs") + self.assertTrue(ob[u"eggs"] == u"eggs") def test(): - object = Test.StringIndexerTest() - object[1] + ob = Test.StringIndexerTest() + ob[1] self.assertRaises(TypeError, test) def test(): - object = Test.StringIndexerTest() - object[1] = "wrong" + ob = Test.StringIndexerTest() + ob[1] = "wrong" self.assertRaises(TypeError, test) def testEnumIndexer(self): """Test enum indexers.""" - object = Test.EnumIndexerTest() + ob = Test.EnumIndexerTest() key = Test.ShortEnum.One - self.assertTrue(object[key] == None) + self.assertTrue(ob[key] == None) - object[key] = "spam" - self.assertTrue(object[key] == "spam") + ob[key] = "spam" + self.assertTrue(ob[key] == "spam") - object[key] = "eggs" - self.assertTrue(object[key] == "eggs") + ob[key] = "eggs" + self.assertTrue(ob[key] == "eggs") - object[1] = "spam" - self.assertTrue(object[1] == "spam") + ob[1] = "spam" + self.assertTrue(ob[1] == "spam") def test(): - object = Test.EnumIndexerTest() - object["wrong"] + ob = Test.EnumIndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.EnumIndexerTest() - object["wrong"] = "wrong" + ob = Test.EnumIndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testObjectIndexer(self): - """Test object indexers.""" - object = Test.ObjectIndexerTest() + """Test ob indexers.""" + ob = Test.ObjectIndexerTest() from Python.Test import Spam spam = Spam("spam") - self.assertTrue(object[spam] == None) - self.assertTrue(object["spam"] == None) - self.assertTrue(object[1] == None) - self.assertTrue(object[None] == None) + self.assertTrue(ob[spam] == None) + self.assertTrue(ob["spam"] == None) + self.assertTrue(ob[1] == None) + self.assertTrue(ob[None] == None) - object[spam] = "spam" - self.assertTrue(object[spam] == "spam") + ob[spam] = "spam" + self.assertTrue(ob[spam] == "spam") - object["spam"] = "eggs" - self.assertTrue(object["spam"] == "eggs") + ob["spam"] = "eggs" + self.assertTrue(ob["spam"] == "eggs") - object[1] = "one" - self.assertTrue(object[1] == "one") + ob[1] = "one" + self.assertTrue(ob[1] == "one") - object[long(1)] = "long" - self.assertTrue(object[long(1)] == "long") + ob[long(1)] = "long" + self.assertTrue(ob[long(1)] == "long") def test(): class eggs: pass key = eggs() - object = Test.ObjectIndexerTest() - object[key] = "wrong" + ob = Test.ObjectIndexerTest() + ob[key] = "wrong" self.assertRaises(TypeError, test) def testInterfaceIndexer(self): """Test interface indexers.""" - object = Test.InterfaceIndexerTest() + ob = Test.InterfaceIndexerTest() from Python.Test import Spam spam = Spam("spam") - self.assertTrue(object[spam] == None) + self.assertTrue(ob[spam] == None) - object[spam] = "spam" - self.assertTrue(object[spam] == "spam") + ob[spam] = "spam" + self.assertTrue(ob[spam] == "spam") - object[spam] = "eggs" - self.assertTrue(object[spam] == "eggs") + ob[spam] = "eggs" + self.assertTrue(ob[spam] == "eggs") def test(): - object = Test.InterfaceIndexerTest() - object["wrong"] + ob = Test.InterfaceIndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.InterfaceIndexerTest() - object["wrong"] = "wrong" + ob = Test.InterfaceIndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testTypedIndexer(self): """Test typed indexers.""" - object = Test.TypedIndexerTest() + ob = Test.TypedIndexerTest() from Python.Test import Spam spam = Spam("spam") - self.assertTrue(object[spam] == None) + self.assertTrue(ob[spam] == None) - object[spam] = "spam" - self.assertTrue(object[spam] == "spam") + ob[spam] = "spam" + self.assertTrue(ob[spam] == "spam") - object[spam] = "eggs" - self.assertTrue(object[spam] == "eggs") + ob[spam] = "eggs" + self.assertTrue(ob[spam] == "eggs") def test(): - object = Test.TypedIndexerTest() - object["wrong"] + ob = Test.TypedIndexerTest() + ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.TypedIndexerTest() - object["wrong"] = "wrong" + ob = Test.TypedIndexerTest() + ob["wrong"] = "wrong" self.assertRaises(TypeError, test) def testMultiArgIndexer(self): """Test indexers that take multiple index arguments.""" - object = Test.MultiArgIndexerTest() + ob = Test.MultiArgIndexerTest() - object[0, 1] = "zero one" - self.assertTrue(object[0, 1] == "zero one") + ob[0, 1] = "zero one" + self.assertTrue(ob[0, 1] == "zero one") - object[1, 9] = "one nine" - self.assertTrue(object[1, 9] == "one nine") + ob[1, 9] = "one nine" + self.assertTrue(ob[1, 9] == "one nine") - self.assertTrue(object[10, 50] == None) + self.assertTrue(ob[10, 50] == None) def test(): - object = Test.MultiArgIndexerTest() - v = object[0, "one"] + ob = Test.MultiArgIndexerTest() + v = ob[0, "one"] self.assertRaises(TypeError, test) def test(): - object = Test.MultiArgIndexerTest() - object[0, "one"] = "wrong" + ob = Test.MultiArgIndexerTest() + ob[0, "one"] = "wrong" self.assertRaises(TypeError, test) def testMultiTypeIndexer(self): """Test indexers that take multiple indices of different types.""" - object = Test.MultiTypeIndexerTest() + ob = Test.MultiTypeIndexerTest() spam = Test.Spam("spam") - object[0, "one", spam] = "zero one spam" - self.assertTrue(object[0, "one", spam] == "zero one spam") + ob[0, "one", spam] = "zero one spam" + self.assertTrue(ob[0, "one", spam] == "zero one spam") - object[1, "nine", spam] = "one nine spam" - self.assertTrue(object[1, "nine", spam] == "one nine spam") + ob[1, "nine", spam] = "one nine spam" + self.assertTrue(ob[1, "nine", spam] == "one nine spam") def test(): - object = Test.MultiTypeIndexerTest() - v = object[0, 1, spam] + ob = Test.MultiTypeIndexerTest() + v = ob[0, 1, spam] self.assertRaises(TypeError, test) def test(): - object = Test.MultiTypeIndexerTest() - object[0, 1, spam] = "wrong" + ob = Test.MultiTypeIndexerTest() + ob[0, 1, spam] = "wrong" self.assertRaises(TypeError, test) def testMultiDefaultKeyIndexer(self): """Test indexers that take multiple indices with a default key arguments.""" # default argument is 2 in the MultiDefaultKeyIndexerTest object - object = Test.MultiDefaultKeyIndexerTest() - object[0, 2] = "zero one spam" - self.assertTrue(object[0] == "zero one spam") + ob = Test.MultiDefaultKeyIndexerTest() + ob[0, 2] = "zero one spam" + self.assertTrue(ob[0] == "zero one spam") - object[1] = "one nine spam" - self.assertTrue(object[1, 2] == "one nine spam") + ob[1] = "one nine spam" + self.assertTrue(ob[1, 2] == "one nine spam") def testIndexerWrongKeyType(self): """Test calling an indexer using a key of the wrong type.""" def test(): - object = Test.PublicIndexerTest() - v = object["wrong"] + ob = Test.PublicIndexerTest() + v = ob["wrong"] self.assertRaises(TypeError, test) def test(): - object = Test.PublicIndexerTest() - object["wrong"] = "spam" + ob = Test.PublicIndexerTest() + ob["wrong"] = "spam" self.assertRaises(TypeError, test) @@ -629,27 +629,27 @@ def testIndexerWrongValueType(self): """Test calling an indexer using a value of the wrong type.""" def test(): - object = Test.PublicIndexerTest() - object[1] = 9993.9 + ob = Test.PublicIndexerTest() + ob[1] = 9993.9 self.assertRaises(TypeError, test) def testUnboundIndexer(self): """Test calling an unbound indexer.""" - object = Test.PublicIndexerTest() + ob = Test.PublicIndexerTest() - Test.PublicIndexerTest.__setitem__(object, 0, "zero") - self.assertTrue(object[0] == "zero") + Test.PublicIndexerTest.__setitem__(ob, 0, "zero") + self.assertTrue(ob[0] == "zero") - Test.PublicIndexerTest.__setitem__(object, 1, "one") - self.assertTrue(object[1] == "one") + Test.PublicIndexerTest.__setitem__(ob, 1, "one") + self.assertTrue(ob[1] == "one") - self.assertTrue(object[10] == None) + self.assertTrue(ob[10] == None) def testIndexerAbuse(self): """Test indexer abuse.""" _class = Test.PublicIndexerTest - object = Test.PublicIndexerTest() + ob = Test.PublicIndexerTest() def test(): del _class.__getitem__ @@ -657,7 +657,7 @@ def test(): self.assertRaises(AttributeError, test) def test(): - del object.__getitem__ + del ob.__getitem__ self.assertRaises(AttributeError, test) @@ -667,7 +667,7 @@ def test(): self.assertRaises(AttributeError, test) def test(): - del object.__setitem__ + del ob.__setitem__ self.assertRaises(AttributeError, test) diff --git a/src/tests/test_method.py b/src/tests/test_method.py index 88652cd71..0430bb019 100644 --- a/src/tests/test_method.py +++ b/src/tests/test_method.py @@ -59,26 +59,26 @@ def test(): def testPublicInstanceMethod(self): """Test public instance method visibility.""" - object = MethodTest() - self.assertTrue(object.PublicMethod() == "public") + ob = MethodTest() + self.assertTrue(ob.PublicMethod() == "public") def testPublicStaticMethod(self): """Test public static method visibility.""" - object = MethodTest() + ob = MethodTest() self.assertTrue(MethodTest.PublicStaticMethod() == "public static") - self.assertTrue(object.PublicStaticMethod() == "public static") + self.assertTrue(ob.PublicStaticMethod() == "public static") def testProtectedInstanceMethod(self): """Test protected instance method visibility.""" - object = MethodTest() - self.assertTrue(object.ProtectedMethod() == "protected") + ob = MethodTest() + self.assertTrue(ob.ProtectedMethod() == "protected") def testProtectedStaticMethod(self): """Test protected static method visibility.""" - object = MethodTest() + ob = MethodTest() result = "protected static" self.assertTrue(MethodTest.ProtectedStaticMethod() == result) - self.assertTrue(object.ProtectedStaticMethod() == result) + self.assertTrue(ob.ProtectedStaticMethod() == result) def testInternalMethod(self): """Test internal method visibility.""" @@ -130,17 +130,17 @@ def testUnboundManagedMethodCall(self): """Test calling unbound managed methods.""" from Python.Test import MethodTestSub - object = MethodTest() - self.assertTrue(MethodTest.PublicMethod(object) == "public") + ob = MethodTest() + self.assertTrue(MethodTest.PublicMethod(ob) == "public") def test(): MethodTest.PublicMethod() self.assertRaises(TypeError, test) - object = MethodTestSub() - self.assertTrue(MethodTestSub.PublicMethod(object) == "public") - self.assertTrue(MethodTestSub.PublicMethod(object, "echo") == "echo") + ob = MethodTestSub() + self.assertTrue(MethodTestSub.PublicMethod(ob) == "public") + self.assertTrue(MethodTestSub.PublicMethod(ob, "echo") == "echo") def test(): MethodTestSub.PublicMethod("echo") @@ -151,19 +151,19 @@ def testOverloadedMethodInheritance(self): """Test that overloads are inherited properly.""" from Python.Test import MethodTestSub - object = MethodTest() - self.assertTrue(object.PublicMethod() == "public") + ob = MethodTest() + self.assertTrue(ob.PublicMethod() == "public") def test(): - object = MethodTest() - object.PublicMethod("echo") + ob = MethodTest() + ob.PublicMethod("echo") self.assertRaises(TypeError, test) - object = MethodTestSub() - self.assertTrue(object.PublicMethod() == "public") + ob = MethodTestSub() + self.assertTrue(ob.PublicMethod() == "public") - self.assertTrue(object.PublicMethod("echo") == "echo") + self.assertTrue(ob.PublicMethod("echo") == "echo") def testMethodDescriptorAbuse(self): """Test method descriptor abuse.""" @@ -193,27 +193,27 @@ def testMethodCallEnumConversion(self): """Test enum conversion in method call.""" from System import TypeCode - object = MethodTest() - r = object.TestEnumConversion(TypeCode.Int32) + ob = MethodTest() + r = ob.TestEnumConversion(TypeCode.Int32) self.assertTrue(r == TypeCode.Int32) def testMethodCallFlagsConversion(self): """Test flags conversion in method call.""" from System.IO import FileAccess - object = MethodTest() + ob = MethodTest() flags = FileAccess.Read | FileAccess.Write - r = object.TestFlagsConversion(flags) + r = ob.TestFlagsConversion(flags) self.assertTrue(r == flags) def testMethodCallStructConversion(self): """Test struct conversion in method call.""" from System import Guid - object = MethodTest() + ob = MethodTest() guid = Guid.NewGuid() temp = guid.ToString() - r = object.TestStructConversion(guid) + r = ob.TestStructConversion(guid) self.assertTrue(r.ToString() == temp) def testSubclassInstanceConversion(self): @@ -222,17 +222,17 @@ def testSubclassInstanceConversion(self): class TestSubException(System.Exception): pass - object = MethodTest() + ob = MethodTest() instance = TestSubException() - result = object.TestSubclassConversion(instance) + result = ob.TestSubclassConversion(instance) self.assertTrue(isinstance(result, System.Exception)) def testNullArrayConversion(self): """Test null array conversion in method call.""" from System import Type - object = MethodTest() - r = object.TestNullArrayConversion(None) + ob = MethodTest() + r = ob.TestNullArrayConversion(None) self.assertTrue(r == None) def testStringParamsArgs(self): diff --git a/src/tests/test_property.py b/src/tests/test_property.py index e5d7112ef..b0676f6b1 100644 --- a/src/tests/test_property.py +++ b/src/tests/test_property.py @@ -10,11 +10,11 @@ class PropertyTests(unittest.TestCase): def testPublicInstanceProperty(self): """Test public instance properties.""" - object = PropertyTest() + ob = PropertyTest() - self.assertTrue(object.PublicProperty == 0) - object.PublicProperty = 1 - self.assertTrue(object.PublicProperty == 1) + self.assertTrue(ob.PublicProperty == 0) + ob.PublicProperty = 1 + self.assertTrue(ob.PublicProperty == 1) def test(): del PropertyTest().PublicProperty @@ -23,15 +23,15 @@ def test(): def testPublicStaticProperty(self): """Test public static properties.""" - object = PropertyTest() + ob = PropertyTest() self.assertTrue(PropertyTest.PublicStaticProperty == 0) PropertyTest.PublicStaticProperty = 1 self.assertTrue(PropertyTest.PublicStaticProperty == 1) - self.assertTrue(object.PublicStaticProperty == 1) - object.PublicStaticProperty = 0 - self.assertTrue(object.PublicStaticProperty == 0) + self.assertTrue(ob.PublicStaticProperty == 1) + ob.PublicStaticProperty = 0 + self.assertTrue(ob.PublicStaticProperty == 0) def test(): del PropertyTest.PublicStaticProperty @@ -45,11 +45,11 @@ def test(): def testProtectedInstanceProperty(self): """Test protected instance properties.""" - object = PropertyTest() + ob = PropertyTest() - self.assertTrue(object.ProtectedProperty == 0) - object.ProtectedProperty = 1 - self.assertTrue(object.ProtectedProperty == 1) + self.assertTrue(ob.ProtectedProperty == 0) + ob.ProtectedProperty = 1 + self.assertTrue(ob.ProtectedProperty == 1) def test(): del PropertyTest().ProtectedProperty @@ -58,15 +58,15 @@ def test(): def testProtectedStaticProperty(self): """Test protected static properties.""" - object = PropertyTest() + ob = PropertyTest() self.assertTrue(PropertyTest.ProtectedStaticProperty == 0) PropertyTest.ProtectedStaticProperty = 1 self.assertTrue(PropertyTest.ProtectedStaticProperty == 1) - self.assertTrue(object.ProtectedStaticProperty == 1) - object.ProtectedStaticProperty = 0 - self.assertTrue(object.ProtectedStaticProperty == 0) + self.assertTrue(ob.ProtectedStaticProperty == 1) + ob.ProtectedStaticProperty = 0 + self.assertTrue(ob.ProtectedStaticProperty == 0) def test(): del PropertyTest.ProtectedStaticProperty @@ -82,17 +82,17 @@ def testInternalProperty(self): """Test internal properties.""" def test(): - f = PropertyTest().InternalProperty + return PropertyTest().InternalProperty self.assertRaises(AttributeError, test) def test(): - f = PropertyTest().InternalStaticProperty + return PropertyTest().InternalStaticProperty self.assertRaises(AttributeError, test) def test(): - f = PropertyTest.InternalStaticProperty + return PropertyTest.InternalStaticProperty self.assertRaises(AttributeError, test) @@ -100,17 +100,17 @@ def testPrivateProperty(self): """Test private properties.""" def test(): - f = PropertyTest().PrivateProperty + return PropertyTest().PrivateProperty self.assertRaises(AttributeError, test) def test(): - f = PropertyTest().PrivateStaticProperty + return PropertyTest().PrivateStaticProperty self.assertRaises(AttributeError, test) def test(): - f = PropertyTest.PrivateStaticProperty + return PropertyTest.PrivateStaticProperty self.assertRaises(AttributeError, test) @@ -121,15 +121,15 @@ def testPropertyDescriptorGetSet(self): # a descriptor actually goes through the descriptor (rather than # silently replacing the descriptor in the instance or type dict. - object = PropertyTest() + ob = PropertyTest() self.assertTrue(PropertyTest.PublicStaticProperty == 0) - self.assertTrue(object.PublicStaticProperty == 0) + self.assertTrue(ob.PublicStaticProperty == 0) descriptor = PropertyTest.__dict__['PublicStaticProperty'] self.assertTrue(type(descriptor) != int) - object.PublicStaticProperty = 0 + ob.PublicStaticProperty = 0 descriptor = PropertyTest.__dict__['PublicStaticProperty'] self.assertTrue(type(descriptor) != int) @@ -141,8 +141,8 @@ def testPropertyDescriptorWrongType(self): """Test setting a property using a value of the wrong type.""" def test(): - object = PropertyTest() - object.PublicProperty = "spam" + ob = PropertyTest() + ob.PublicProperty = "spam" self.assertTrue(TypeError, test) @@ -164,8 +164,8 @@ def testInterfaceProperty(self): """Test properties of interfaces. Added after a bug report that an IsAbstract check was inappropriate and prevented use of properties when only the interface is known.""" - from System.Collections import Hashtable, ICollection + mapping = Hashtable() coll = ICollection(mapping) self.assertTrue(coll.Count == 0) diff --git a/src/tests/test_subclass.py b/src/tests/test_subclass.py index 20938ba88..444d0a116 100644 --- a/src/tests/test_subclass.py +++ b/src/tests/test_subclass.py @@ -71,65 +71,65 @@ class SubClassTests(unittest.TestCase): def testBaseClass(self): """Test base class managed type""" - object = SubClassTest() - self.assertEqual(object.foo(), "foo") - self.assertEqual(TestFunctions.test_foo(object), "foo") - self.assertEqual(object.bar("bar", 2), "bar") - self.assertEqual(TestFunctions.test_bar(object, "bar", 2), "bar") - self.assertEqual(object.not_overriden(), "not_overriden") - self.assertEqual(list(object.return_list()), ["a", "b", "c"]) - self.assertEqual(list(SubClassTest.test_list(object)), ["a", "b", "c"]) + ob = SubClassTest() + self.assertEqual(ob.foo(), "foo") + self.assertEqual(TestFunctions.test_foo(ob), "foo") + self.assertEqual(ob.bar("bar", 2), "bar") + self.assertEqual(TestFunctions.test_bar(ob, "bar", 2), "bar") + self.assertEqual(ob.not_overriden(), "not_overriden") + self.assertEqual(list(ob.return_list()), ["a", "b", "c"]) + self.assertEqual(list(SubClassTest.test_list(ob)), ["a", "b", "c"]) def testInterface(self): """Test python classes can derive from C# interfaces""" - object = InterfaceTestClass() - self.assertEqual(object.foo(), "InterfaceTestClass") - self.assertEqual(TestFunctions.test_foo(object), "InterfaceTestClass") - self.assertEqual(object.bar("bar", 2), "bar/bar") - self.assertEqual(TestFunctions.test_bar(object, "bar", 2), "bar/bar") + ob = InterfaceTestClass() + self.assertEqual(ob.foo(), "InterfaceTestClass") + self.assertEqual(TestFunctions.test_foo(ob), "InterfaceTestClass") + self.assertEqual(ob.bar("bar", 2), "bar/bar") + self.assertEqual(TestFunctions.test_bar(ob, "bar", 2), "bar/bar") - x = TestFunctions.pass_through(object) - self.assertEqual(id(x), id(object)) + x = TestFunctions.pass_through(ob) + self.assertEqual(id(x), id(ob)) def testDerivedClass(self): """Test python class derived from managed type""" - object = DerivedClass() - self.assertEqual(object.foo(), "DerivedClass") - self.assertEqual(object.base_foo(), "foo") - self.assertEqual(object.super_foo(), "foo") - self.assertEqual(TestFunctions.test_foo(object), "DerivedClass") - self.assertEqual(object.bar("bar", 2), "bar_bar") - self.assertEqual(TestFunctions.test_bar(object, "bar", 2), "bar_bar") - self.assertEqual(object.not_overriden(), "not_overriden") - self.assertEqual(list(object.return_list()), ["A", "B", "C"]) - self.assertEqual(list(SubClassTest.test_list(object)), ["A", "B", "C"]) - - x = TestFunctions.pass_through(object) - self.assertEqual(id(x), id(object)) + ob = DerivedClass() + self.assertEqual(ob.foo(), "DerivedClass") + self.assertEqual(ob.base_foo(), "foo") + self.assertEqual(ob.super_foo(), "foo") + self.assertEqual(TestFunctions.test_foo(ob), "DerivedClass") + self.assertEqual(ob.bar("bar", 2), "bar_bar") + self.assertEqual(TestFunctions.test_bar(ob, "bar", 2), "bar_bar") + self.assertEqual(ob.not_overriden(), "not_overriden") + self.assertEqual(list(ob.return_list()), ["A", "B", "C"]) + self.assertEqual(list(SubClassTest.test_list(ob)), ["A", "B", "C"]) + + x = TestFunctions.pass_through(ob) + self.assertEqual(id(x), id(ob)) def testCreateInstance(self): """Test derived instances can be created from managed code""" - object = TestFunctions.create_instance(DerivedClass) - self.assertEqual(object.foo(), "DerivedClass") - self.assertEqual(TestFunctions.test_foo(object), "DerivedClass") - self.assertEqual(object.bar("bar", 2), "bar_bar") - self.assertEqual(TestFunctions.test_bar(object, "bar", 2), "bar_bar") - self.assertEqual(object.not_overriden(), "not_overriden") + ob = TestFunctions.create_instance(DerivedClass) + self.assertEqual(ob.foo(), "DerivedClass") + self.assertEqual(TestFunctions.test_foo(ob), "DerivedClass") + self.assertEqual(ob.bar("bar", 2), "bar_bar") + self.assertEqual(TestFunctions.test_bar(ob, "bar", 2), "bar_bar") + self.assertEqual(ob.not_overriden(), "not_overriden") - x = TestFunctions.pass_through(object) - self.assertEqual(id(x), id(object)) + x = TestFunctions.pass_through(ob) + self.assertEqual(id(x), id(ob)) - object2 = TestFunctions.create_instance(InterfaceTestClass) - self.assertEqual(object2.foo(), "InterfaceTestClass") - self.assertEqual(TestFunctions.test_foo(object2), "InterfaceTestClass") - self.assertEqual(object2.bar("bar", 2), "bar/bar") - self.assertEqual(TestFunctions.test_bar(object2, "bar", 2), "bar/bar") + ob2 = TestFunctions.create_instance(InterfaceTestClass) + self.assertEqual(ob2.foo(), "InterfaceTestClass") + self.assertEqual(TestFunctions.test_foo(ob2), "InterfaceTestClass") + self.assertEqual(ob2.bar("bar", 2), "bar/bar") + self.assertEqual(TestFunctions.test_bar(ob2, "bar", 2), "bar/bar") - y = TestFunctions.pass_through(object2) - self.assertEqual(id(y), id(object2)) + y = TestFunctions.pass_through(ob2) + self.assertEqual(id(y), id(ob2)) def testEvents(self): - class EventHandler: + class EventHandler(object): def handler(self, x, args): self.value = args.value From 072219cc6dc17f546a67ed50c004dd7f446d3d88 Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sat, 21 Jan 2017 21:10:12 -0700 Subject: [PATCH 06/13] Refactor utility functions --- src/tests/leaktest.py | 97 ++---------------- src/tests/test_class.py | 20 ++-- src/tests/test_compat.py | 54 ++++------ src/tests/test_delegate.py | 66 +++--------- src/tests/test_event.py | 83 ++------------- src/tests/test_generic.py | 202 +++++++++++++++++++------------------ src/tests/test_indexer.py | 2 +- src/tests/test_module.py | 60 +++++------ src/tests/utils.py | 132 ++++++++++++++++++++++++ 9 files changed, 315 insertions(+), 401 deletions(-) create mode 100644 src/tests/utils.py diff --git a/src/tests/leaktest.py b/src/tests/leaktest.py index 43a0e83a7..666e6e276 100644 --- a/src/tests/leaktest.py +++ b/src/tests/leaktest.py @@ -6,10 +6,14 @@ import clr import gc +import sys import System from _compat import range +from utils import (CallableHandler, ClassMethodHandler, GenericHandler, + HelloClass, StaticMethodHandler, VarCallableHandler, + VariableArgsHandler, hello_func) class LeakTest(object): @@ -53,7 +57,6 @@ def run(self): self.testDelegates() def report(self): - import sys, gc gc.collect() dicttype = type({}) for item in gc.get_objects(): @@ -78,7 +81,6 @@ def testModules(self): def testClasses(self): from System.Collections import Hashtable from Python.Test import StringDelegate - from System import Int32 self.notify("Running class leak check...") @@ -91,7 +93,7 @@ def testClasses(self): del x # Value type - x = Int32(99) + x = System.Int32(99) del x # Delegate type @@ -101,7 +103,7 @@ def testClasses(self): self.end_test() def testEnumerations(self): - from Python import Test + import Python.Test as Test self.notify("Running enum leak check...") @@ -215,7 +217,6 @@ def handler(sender, args, dict=dict): def testDelegates(self): from Python.Test import DelegateTest, StringDelegate - import System self.notify("Running delegate leak check...") @@ -326,92 +327,6 @@ def testDelegates(self): self.end_test() -class GenericHandler(object): - """A generic handler to test event callbacks.""" - - def __init__(self): - self.value = None - - def handler(self, sender, args): - self.value = args.value - - -class VariableArgsHandler(object): - """A variable args handler to test event callbacks.""" - - def __init__(self): - self.value = None - - def handler(self, *args): - ob, eventargs = args - self.value = eventargs.value - - -class CallableHandler(object): - """A callable handler to test event callbacks.""" - - def __init__(self): - self.value = None - - def __call__(self, sender, args): - self.value = args.value - - -class VarCallableHandler(object): - """A variable args callable handler to test event callbacks.""" - - def __init__(self): - self.value = None - - def __call__(self, *args): - ob, eventargs = args - self.value = eventargs.value - - -class StaticMethodHandler(object): - """A static method handler to test event callbacks.""" - - value = None - - def handler(sender, args): - StaticMethodHandler.value = args.value - - handler = staticmethod(handler) - - -class ClassMethodHandler(object): - """A class method handler to test event callbacks.""" - - value = None - - def handler(cls, sender, args): - cls.value = args.value - - handler = classmethod(handler) - - -class HelloClass(object): - def hello(self): - return "hello" - - def __call__(self): - return "hello" - - def s_hello(): - return "hello" - - s_hello = staticmethod(s_hello) - - def c_hello(cls): - return "hello" - - c_hello = classmethod(c_hello) - - -def hello_func(): - return "hello" - - if __name__ == '__main__': test = LeakTest() test.run() diff --git a/src/tests/test_class.py b/src/tests/test_class.py index 169683883..b681c3a11 100644 --- a/src/tests/test_class.py +++ b/src/tests/test_class.py @@ -8,6 +8,16 @@ from _compat import DictProxyType, range +class ClassicClass: + def kind(self): + return 'classic' + + +class NewStyleClass(object): + def kind(self): + return 'new-style' + + class ClassTests(unittest.TestCase): """Test CLR class support.""" @@ -273,15 +283,5 @@ def PyCallback(self, self2): self.assertTrue(testobj.SameReference) -class ClassicClass: - def kind(self): - return 'classic' - - -class NewStyleClass(object): - def kind(self): - return 'new-style' - - def test_suite(): return unittest.makeSuite(ClassTests) diff --git a/src/tests/test_compat.py b/src/tests/test_compat.py index f89aceece..fbdd5260e 100644 --- a/src/tests/test_compat.py +++ b/src/tests/test_compat.py @@ -4,32 +4,18 @@ import unittest from _compat import ClassType, PY2, PY3, range +from utils import isCLRClass, isCLRModule, isCLRRootModule class CompatibilityTests(unittest.TestCase): - """ - Backward-compatibility tests for deprecated features. - """ - - def isCLRModule(self, object): - return type(object).__name__ == 'ModuleObject' - - def isCLRRootModule(self, object): - if PY3: - # in Python 3 the clr module is a normal python module - return object.__name__ == "clr" - elif PY2: - return type(object).__name__ == 'CLRModule' - - def isCLRClass(self, object): - return type(object).__name__ == 'CLR Metatype' # for now + """Backward-compatibility tests for deprecated features.""" # Tests for old-style CLR-prefixed module naming. def testSimpleImport(self): """Test simple import.""" import CLR - self.assertTrue(self.isCLRRootModule(CLR)) + self.assertTrue(isCLRRootModule(CLR)) self.assertTrue(CLR.__name__ == 'clr') import sys @@ -49,7 +35,7 @@ def testSimpleImport(self): def testSimpleImportWithAlias(self): """Test simple import with aliasing.""" import CLR as myCLR - self.assertTrue(self.isCLRRootModule(myCLR)) + self.assertTrue(isCLRRootModule(myCLR)) self.assertTrue(myCLR.__name__ == 'clr') import sys as mySys @@ -69,11 +55,11 @@ def testSimpleImportWithAlias(self): def testDottedNameImport(self): """Test dotted-name import.""" import CLR.System - self.assertTrue(self.isCLRModule(CLR.System)) + self.assertTrue(isCLRModule(CLR.System)) self.assertTrue(CLR.System.__name__ == 'System') import System - self.assertTrue(self.isCLRModule(System)) + self.assertTrue(isCLRModule(System)) self.assertTrue(System.__name__ == 'System') self.assertTrue(System is CLR.System) @@ -85,11 +71,11 @@ def testDottedNameImport(self): def testDottedNameImportWithAlias(self): """Test dotted-name import with aliasing.""" import CLR.System as myCLRSystem - self.assertTrue(self.isCLRModule(myCLRSystem)) + self.assertTrue(isCLRModule(myCLRSystem)) self.assertTrue(myCLRSystem.__name__ == 'System') import System as mySystem - self.assertTrue(self.isCLRModule(mySystem)) + self.assertTrue(isCLRModule(mySystem)) self.assertTrue(mySystem.__name__ == 'System') self.assertTrue(mySystem is myCLRSystem) @@ -101,7 +87,7 @@ def testDottedNameImportWithAlias(self): def testSimpleImportFrom(self): """Test simple 'import from'.""" from CLR import System - self.assertTrue(self.isCLRModule(System)) + self.assertTrue(isCLRModule(System)) self.assertTrue(System.__name__ == 'System') from xml import dom @@ -111,7 +97,7 @@ def testSimpleImportFrom(self): def testSimpleImportFromWithAlias(self): """Test simple 'import from' with aliasing.""" from CLR import System as mySystem - self.assertTrue(self.isCLRModule(mySystem)) + self.assertTrue(isCLRModule(mySystem)) self.assertTrue(mySystem.__name__ == 'System') from xml import dom as myDom @@ -121,11 +107,11 @@ def testSimpleImportFromWithAlias(self): def testDottedNameImportFrom(self): """Test dotted-name 'import from'.""" from CLR.System import Xml - self.assertTrue(self.isCLRModule(Xml)) + self.assertTrue(isCLRModule(Xml)) self.assertTrue(Xml.__name__ == 'System.Xml') from CLR.System.Xml import XmlDocument - self.assertTrue(self.isCLRClass(XmlDocument)) + self.assertTrue(isCLRClass(XmlDocument)) self.assertTrue(XmlDocument.__name__ == 'XmlDocument') from xml.dom import pulldom @@ -139,11 +125,11 @@ def testDottedNameImportFrom(self): def testDottedNameImportFromWithAlias(self): """Test dotted-name 'import from' with aliasing.""" from CLR.System import Xml as myXml - self.assertTrue(self.isCLRModule(myXml)) + self.assertTrue(isCLRModule(myXml)) self.assertTrue(myXml.__name__ == 'System.Xml') from CLR.System.Xml import XmlDocument as myXmlDocument - self.assertTrue(self.isCLRClass(myXmlDocument)) + self.assertTrue(isCLRClass(myXmlDocument)) self.assertTrue(myXmlDocument.__name__ == 'XmlDocument') from xml.dom import pulldom as myPulldom @@ -159,12 +145,12 @@ def testFromModuleImportStar(self): count = len(locals().keys()) m = __import__('CLR.System.Management', globals(), locals(), ['*']) self.assertTrue(m.__name__ == 'System.Management') - self.assertTrue(self.isCLRModule(m)) + self.assertTrue(isCLRModule(m)) self.assertTrue(len(locals().keys()) > count + 1) m2 = __import__('System.Management', globals(), locals(), ['*']) self.assertTrue(m2.__name__ == 'System.Management') - self.assertTrue(self.isCLRModule(m2)) + self.assertTrue(isCLRModule(m2)) self.assertTrue(len(locals().keys()) > count + 1) self.assertTrue(m is m2) @@ -193,7 +179,7 @@ def testImplicitLoadAlreadyValidNamespace(self): # Python runtime to "do the right thing", allowing types from both # assemblies to be found in the CLR.System module implicitly. import CLR.System - self.assertTrue(self.isCLRClass(CLR.System.UriBuilder)) + self.assertTrue(isCLRClass(CLR.System.UriBuilder)) def testImportNonExistantModule(self): """Test import failure for a non-existant module.""" @@ -211,7 +197,7 @@ def testLookupNoNamespaceType(self): """Test lookup of types without a qualified namespace.""" import CLR.Python.Test import CLR - self.assertTrue(self.isCLRClass(CLR.NoNamespaceType)) + self.assertTrue(isCLRClass(CLR.NoNamespaceType)) def testModuleLookupRecursion(self): """Test for recursive lookup handling.""" @@ -232,10 +218,10 @@ def testModuleGetAttr(self): import CLR.System as System int_type = System.Int32 - self.assertTrue(self.isCLRClass(int_type)) + self.assertTrue(isCLRClass(int_type)) module = System.Xml - self.assertTrue(self.isCLRModule(module)) + self.assertTrue(isCLRModule(module)) def test(): spam = System.Spam diff --git a/src/tests/test_delegate.py b/src/tests/test_delegate.py index df371ca9a..33940caca 100644 --- a/src/tests/test_delegate.py +++ b/src/tests/test_delegate.py @@ -8,6 +8,7 @@ from Python.Test import DelegateTest, StringDelegate from _compat import DictProxyType +from utils import HelloClass, hello_func, MultipleHandler class DelegateTests(unittest.TestCase): @@ -60,10 +61,7 @@ def test(): def testDelegateFromFunction(self): """Test delegate implemented with a Python function.""" - def sayhello(): - return "hello" - - d = StringDelegate(sayhello) + d = StringDelegate(hello_func) ob = DelegateTest() self.assertTrue(ob.CallStringDelegate(d) == "hello") @@ -76,12 +74,8 @@ def sayhello(): def testDelegateFromMethod(self): """Test delegate implemented with a Python instance method.""" - class Hello: - def sayhello(self): - return "hello" - - inst = Hello() - d = StringDelegate(inst.sayhello) + inst = HelloClass() + d = StringDelegate(inst.hello) ob = DelegateTest() self.assertTrue(ob.CallStringDelegate(d) == "hello") @@ -94,12 +88,8 @@ def sayhello(self): def testDelegateFromUnboundMethod(self): """Test failure mode for unbound methods.""" - class Hello: - def sayhello(self): - return "hello" - def test(): - d = StringDelegate(Hello.sayhello) + d = StringDelegate(HelloClass.hello) d() self.assertRaises(TypeError, test) @@ -107,13 +97,7 @@ def test(): def testDelegateFromStaticMethod(self): """Test delegate implemented with a Python static method.""" - class Hello: - def sayhello(): - return "hello" - - sayhello = staticmethod(sayhello) - - d = StringDelegate(Hello.sayhello) + d = StringDelegate(HelloClass.s_hello) ob = DelegateTest() self.assertTrue(ob.CallStringDelegate(d) == "hello") @@ -123,8 +107,8 @@ def sayhello(): self.assertTrue(ob.CallStringDelegate(ob.stringDelegate) == "hello") self.assertTrue(ob.stringDelegate() == "hello") - inst = Hello() - d = StringDelegate(inst.sayhello) + inst = HelloClass() + d = StringDelegate(inst.s_hello) ob = DelegateTest() self.assertTrue(ob.CallStringDelegate(d) == "hello") @@ -137,13 +121,7 @@ def sayhello(): def testDelegateFromClassMethod(self): """Test delegate implemented with a Python class method.""" - class Hello: - def sayhello(self): - return "hello" - - sayhello = classmethod(sayhello) - - d = StringDelegate(Hello.sayhello) + d = StringDelegate(HelloClass.c_hello) ob = DelegateTest() self.assertTrue(ob.CallStringDelegate(d) == "hello") @@ -153,8 +131,8 @@ def sayhello(self): self.assertTrue(ob.CallStringDelegate(ob.stringDelegate) == "hello") self.assertTrue(ob.stringDelegate() == "hello") - inst = Hello() - d = StringDelegate(inst.sayhello) + inst = HelloClass() + d = StringDelegate(inst.c_hello) ob = DelegateTest() self.assertTrue(ob.CallStringDelegate(d) == "hello") @@ -167,11 +145,7 @@ def sayhello(self): def testDelegateFromCallable(self): """Test delegate implemented with a Python callable object.""" - class Hello: - def __call__(self): - return "hello" - - inst = Hello() + inst = HelloClass() d = StringDelegate(inst) ob = DelegateTest() @@ -208,11 +182,7 @@ def testDelegateFromManagedStaticMethod(self): def testDelegateFromDelegate(self): """Test delegate implemented with another delegate.""" - - def sayhello(): - return "hello" - - d1 = StringDelegate(sayhello) + d1 = StringDelegate(hello_func) d2 = StringDelegate(d1) ob = DelegateTest() @@ -244,15 +214,7 @@ def test(): def testMulticastDelegate(self): """Test multicast delegates.""" - class Multi: - def __init__(self): - self.value = 0 - - def count(self): - self.value += 1 - return 'ok' - - inst = Multi() + inst = MultipleHandler() d1 = StringDelegate(inst.count) d2 = StringDelegate(inst.count) diff --git a/src/tests/test_event.py b/src/tests/test_event.py index 008b6b20a..858069f6c 100644 --- a/src/tests/test_event.py +++ b/src/tests/test_event.py @@ -5,6 +5,9 @@ from Python.Test import EventTest, TestEventArgs from _compat import range +from utils import (CallableHandler, ClassMethodHandler, GenericHandler, + MultipleHandler, StaticMethodHandler, VarCallableHandler, + VariableArgsHandler) class EventTests(unittest.TestCase): @@ -311,7 +314,7 @@ def test(): self.assertRaises(TypeError, test) def test(): - class spam: + class spam(object): pass ob = EventTest() @@ -486,7 +489,7 @@ def test(): def testHandlerCallbackFailure(self): """Test failure mode for inappropriate handlers.""" - class BadHandler: + class BadHandler(object): def handler(self, one): return 'too many' @@ -501,7 +504,7 @@ def test(): ob.PublicEvent -= handler.handler - class BadHandler: + class BadHandler(object): def handler(self, one, two, three, four, five): return 'not enough' @@ -602,79 +605,5 @@ def test(): self.assertRaises(TypeError, test) -class GenericHandler: - """A generic handler to test event callbacks.""" - - def __init__(self): - self.value = None - - def handler(self, sender, args): - self.value = args.value - - -class VariableArgsHandler: - """A variable args handler to test event callbacks.""" - - def __init__(self): - self.value = None - - def handler(self, *args): - ob, eventargs = args - self.value = eventargs.value - - -class CallableHandler: - """A callable handler to test event callbacks.""" - - def __init__(self): - self.value = None - - def __call__(self, sender, args): - self.value = args.value - - -class VarCallableHandler: - """A variable args callable handler to test event callbacks.""" - - def __init__(self): - self.value = None - - def __call__(self, *args): - ob, eventargs = args - self.value = eventargs.value - - -class StaticMethodHandler(object): - """A static method handler to test event callbacks.""" - - value = None - - def handler(sender, args): - StaticMethodHandler.value = args.value - - handler = staticmethod(handler) - - -class ClassMethodHandler(object): - """A class method handler to test event callbacks.""" - - value = None - - def handler(cls, sender, args): - cls.value = args.value - - handler = classmethod(handler) - - -class MultipleHandler: - """A generic handler to test multiple callbacks.""" - - def __init__(self): - self.value = 0 - - def handler(self, sender, args): - self.value += args.value - - def test_suite(): return unittest.makeSuite(EventTests) diff --git a/src/tests/test_generic.py b/src/tests/test_generic.py index 67af8acb4..536a2bb7f 100644 --- a/src/tests/test_generic.py +++ b/src/tests/test_generic.py @@ -11,6 +11,107 @@ class GenericTests(unittest.TestCase): """Test CLR generics support.""" + def _testGenericWrapperByType(self, ptype, value): + """Test Helper""" + from Python.Test import GenericWrapper + import System + + inst = GenericWrapper[ptype](value) + self.assertTrue(inst.value == value) + + atype = System.Array[ptype] + items = atype([value, value, value]) + inst = GenericWrapper[atype](items) + self.assertTrue(len(inst.value) == 3) + self.assertTrue(inst.value[0] == value) + self.assertTrue(inst.value[1] == value) + + def _testGenericMethodByType(self, ptype, value, test_type=0): + """Test Helper""" + from Python.Test import GenericMethodTest, GenericStaticMethodTest + import System + + itype = GenericMethodTest[System.Type] + stype = GenericStaticMethodTest[System.Type] + + # Explicit selection (static method) + result = stype.Overloaded[ptype](value) + if test_type: + self.assertTrue(result.__class__ == value.__class__) + else: + self.assertTrue(result == value) + + # Type inference (static method) + result = stype.Overloaded(value) + self.assertTrue(result == value) + if test_type: + self.assertTrue(result.__class__ == value.__class__) + else: + self.assertTrue(result == value) + + # Explicit selection (instance method) + result = itype().Overloaded[ptype](value) + self.assertTrue(result == value) + if test_type: + self.assertTrue(result.__class__ == value.__class__) + else: + self.assertTrue(result == value) + + # Type inference (instance method) + result = itype().Overloaded(value) + self.assertTrue(result == value) + if test_type: + self.assertTrue(result.__class__ == value.__class__) + else: + self.assertTrue(result == value) + + atype = System.Array[ptype] + items = atype([value, value, value]) + + # Explicit selection (static method) + result = stype.Overloaded[atype](items) + if test_type: + self.assertTrue(len(result) == 3) + self.assertTrue(result[0].__class__ == value.__class__) + self.assertTrue(result[1].__class__ == value.__class__) + else: + self.assertTrue(len(result) == 3) + self.assertTrue(result[0] == value) + self.assertTrue(result[1] == value) + + # Type inference (static method) + result = stype.Overloaded(items) + if test_type: + self.assertTrue(len(result) == 3) + self.assertTrue(result[0].__class__ == value.__class__) + self.assertTrue(result[1].__class__ == value.__class__) + else: + self.assertTrue(len(result) == 3) + self.assertTrue(result[0] == value) + self.assertTrue(result[1] == value) + + # Explicit selection (instance method) + result = itype().Overloaded[atype](items) + if test_type: + self.assertTrue(len(result) == 3) + self.assertTrue(result[0].__class__ == value.__class__) + self.assertTrue(result[1].__class__ == value.__class__) + else: + self.assertTrue(len(result) == 3) + self.assertTrue(result[0] == value) + self.assertTrue(result[1] == value) + + # Type inference (instance method) + result = itype().Overloaded(items) + if test_type: + self.assertTrue(len(result) == 3) + self.assertTrue(result[0].__class__ == value.__class__) + self.assertTrue(result[1].__class__ == value.__class__) + else: + self.assertTrue(len(result) == 3) + self.assertTrue(result[0] == value) + self.assertTrue(result[1] == value) + def testPythonTypeAliasing(self): """Test python type alias support with generics.""" from System.Collections.Generic import Dictionary @@ -80,9 +181,11 @@ def testGenericValueType(self): self.assertTrue(inst.Value == 10) def testGenericInterface(self): + # TODO NotImplemented pass def testGenericDelegate(self): + # TODO NotImplemented pass def testOpenGenericType(self): @@ -138,20 +241,6 @@ def test(): self.assertTrue(_class().value == 2) self.assertTrue(_class.value == 2) - def _testGenericWrapperByType(self, ptype, value, test_type=0): - from Python.Test import GenericWrapper - import System - - inst = GenericWrapper[ptype](value) - self.assertTrue(inst.value == value) - - atype = System.Array[ptype] - items = atype([value, value, value]) - inst = GenericWrapper[atype](items) - self.assertTrue(len(inst.value) == 3) - self.assertTrue(inst.value[0] == value) - self.assertTrue(inst.value[1] == value) - def testGenericTypeBinding(self): """Test argument conversion / binding for generic methods.""" from Python.Test import InterfaceTest, ISayHello1, ShortEnum @@ -184,91 +273,6 @@ def testGenericTypeBinding(self): self._testGenericWrapperByType(InterfaceTest, InterfaceTest()) self._testGenericWrapperByType(ISayHello1, InterfaceTest()) - def _testGenericMethodByType(self, ptype, value, test_type=0): - from Python.Test import GenericMethodTest, GenericStaticMethodTest - import System - - itype = GenericMethodTest[System.Type] - stype = GenericStaticMethodTest[System.Type] - - # Explicit selection (static method) - result = stype.Overloaded[ptype](value) - if test_type: - self.assertTrue(result.__class__ == value.__class__) - else: - self.assertTrue(result == value) - - # Type inference (static method) - result = stype.Overloaded(value) - self.assertTrue(result == value) - if test_type: - self.assertTrue(result.__class__ == value.__class__) - else: - self.assertTrue(result == value) - - # Explicit selection (instance method) - result = itype().Overloaded[ptype](value) - self.assertTrue(result == value) - if test_type: - self.assertTrue(result.__class__ == value.__class__) - else: - self.assertTrue(result == value) - - # Type inference (instance method) - result = itype().Overloaded(value) - self.assertTrue(result == value) - if test_type: - self.assertTrue(result.__class__ == value.__class__) - else: - self.assertTrue(result == value) - - atype = System.Array[ptype] - items = atype([value, value, value]) - - # Explicit selection (static method) - result = stype.Overloaded[atype](items) - if test_type: - self.assertTrue(len(result) == 3) - self.assertTrue(result[0].__class__ == value.__class__) - self.assertTrue(result[1].__class__ == value.__class__) - else: - self.assertTrue(len(result) == 3) - self.assertTrue(result[0] == value) - self.assertTrue(result[1] == value) - - # Type inference (static method) - result = stype.Overloaded(items) - if test_type: - self.assertTrue(len(result) == 3) - self.assertTrue(result[0].__class__ == value.__class__) - self.assertTrue(result[1].__class__ == value.__class__) - else: - self.assertTrue(len(result) == 3) - self.assertTrue(result[0] == value) - self.assertTrue(result[1] == value) - - # Explicit selection (instance method) - result = itype().Overloaded[atype](items) - if test_type: - self.assertTrue(len(result) == 3) - self.assertTrue(result[0].__class__ == value.__class__) - self.assertTrue(result[1].__class__ == value.__class__) - else: - self.assertTrue(len(result) == 3) - self.assertTrue(result[0] == value) - self.assertTrue(result[1] == value) - - # Type inference (instance method) - result = itype().Overloaded(items) - if test_type: - self.assertTrue(len(result) == 3) - self.assertTrue(result[0].__class__ == value.__class__) - self.assertTrue(result[1].__class__ == value.__class__) - else: - self.assertTrue(len(result) == 3) - self.assertTrue(result[0] == value) - self.assertTrue(result[1] == value) - def testGenericMethodBinding(self): from Python.Test import GenericMethodTest, GenericStaticMethodTest from System import InvalidOperationException diff --git a/src/tests/test_indexer.py b/src/tests/test_indexer.py index 4e631de4f..eaa02abd0 100644 --- a/src/tests/test_indexer.py +++ b/src/tests/test_indexer.py @@ -490,7 +490,7 @@ def testObjectIndexer(self): self.assertTrue(ob[long(1)] == "long") def test(): - class eggs: + class eggs(object): pass key = eggs() diff --git a/src/tests/test_module.py b/src/tests/test_module.py index a2624fc4c..4748c0497 100644 --- a/src/tests/test_module.py +++ b/src/tests/test_module.py @@ -7,38 +7,24 @@ from fnmatch import fnmatch from _compat import ClassType, PY2, PY3, range +from utils import isCLRClass, isCLRModule, isCLRRootModule # testImplicitAssemblyLoad() passes on deprecation warning; perfect! # # clr.AddReference('System.Windows.Forms') - class ModuleTests(unittest.TestCase): """Test CLR modules and the CLR import hook.""" - def isCLRModule(self, object): - return type(object).__name__ == 'ModuleObject' - - def isCLRRootModule(self, object): - if PY3: - # in Python 3 the clr module is a normal python module - return object.__name__ == "clr" - elif PY2: - return type(object).__name__ == 'CLRModule' - - def isCLRClass(self, object): - return type(object).__name__ == 'CLR Metatype' # for now - def testAAAImportHookWorks(self): """Test that the import hook works correctly both using the included runtime and an external runtime. This must be the first test run in the unit tests!""" - from System import String def test000importClr(self): import clr - self.assertTrue(self.isCLRRootModule(clr)) + self.assertTrue(isCLRRootModule(clr)) def testVersionClr(self): import clr @@ -74,13 +60,13 @@ def testModuleInterface(self): self.assertTrue(fnmatch(system_file, "*System*.dll") or fnmatch(system_file, "*mscorlib.dll"), "unexpected System.__file__: " + system_file) self.assertTrue(System.__doc__.startswith("Namespace containing types from the following assemblies:")) - self.assertTrue(self.isCLRClass(System.String)) - self.assertTrue(self.isCLRClass(System.Int32)) + self.assertTrue(isCLRClass(System.String)) + self.assertTrue(isCLRClass(System.Int32)) def testSimpleImport(self): """Test simple import.""" import System - self.assertTrue(self.isCLRModule(System)) + self.assertTrue(isCLRModule(System)) self.assertTrue(System.__name__ == 'System') import sys @@ -99,7 +85,7 @@ def testSimpleImport(self): def testSimpleImportWithAlias(self): """Test simple import with aliasing.""" import System as mySystem - self.assertTrue(self.isCLRModule(mySystem)) + self.assertTrue(isCLRModule(mySystem)) self.assertTrue(mySystem.__name__ == 'System') import sys as mySys @@ -118,7 +104,7 @@ def testSimpleImportWithAlias(self): def testDottedNameImport(self): """Test dotted-name import.""" import System.Reflection - self.assertTrue(self.isCLRModule(System.Reflection)) + self.assertTrue(isCLRModule(System.Reflection)) self.assertTrue(System.Reflection.__name__ == 'System.Reflection') import xml.dom @@ -128,16 +114,16 @@ def testDottedNameImport(self): def testMultipleDottedNameImport(self): """Test an import bug with multiple dotted imports.""" import System.Data - self.assertTrue(self.isCLRModule(System.Data)) + self.assertTrue(isCLRModule(System.Data)) self.assertTrue(System.Data.__name__ == 'System.Data') import System.Data - self.assertTrue(self.isCLRModule(System.Data)) + self.assertTrue(isCLRModule(System.Data)) self.assertTrue(System.Data.__name__ == 'System.Data') def testDottedNameImportWithAlias(self): """Test dotted-name import with aliasing.""" import System.Reflection as SysRef - self.assertTrue(self.isCLRModule(SysRef)) + self.assertTrue(isCLRModule(SysRef)) self.assertTrue(SysRef.__name__ == 'System.Reflection') import xml.dom as myDom @@ -147,7 +133,7 @@ def testDottedNameImportWithAlias(self): def testSimpleImportFrom(self): """Test simple 'import from'.""" from System import Reflection - self.assertTrue(self.isCLRModule(Reflection)) + self.assertTrue(isCLRModule(Reflection)) self.assertTrue(Reflection.__name__ == 'System.Reflection') from xml import dom @@ -157,7 +143,7 @@ def testSimpleImportFrom(self): def testSimpleImportFromWithAlias(self): """Test simple 'import from' with aliasing.""" from System import Collections as Coll - self.assertTrue(self.isCLRModule(Coll)) + self.assertTrue(isCLRModule(Coll)) self.assertTrue(Coll.__name__ == 'System.Collections') from xml import dom as myDom @@ -167,13 +153,13 @@ def testSimpleImportFromWithAlias(self): def testDottedNameImportFrom(self): """Test dotted-name 'import from'.""" from System.Collections import Specialized - self.assertTrue(self.isCLRModule(Specialized)) + self.assertTrue(isCLRModule(Specialized)) self.assertTrue( Specialized.__name__ == 'System.Collections.Specialized' ) from System.Collections.Specialized import StringCollection - self.assertTrue(self.isCLRClass(StringCollection)) + self.assertTrue(isCLRClass(StringCollection)) self.assertTrue(StringCollection.__name__ == 'StringCollection') from xml.dom import pulldom @@ -187,11 +173,11 @@ def testDottedNameImportFrom(self): def testDottedNameImportFromWithAlias(self): """Test dotted-name 'import from' with aliasing.""" from System.Collections import Specialized as Spec - self.assertTrue(self.isCLRModule(Spec)) + self.assertTrue(isCLRModule(Spec)) self.assertTrue(Spec.__name__ == 'System.Collections.Specialized') from System.Collections.Specialized import StringCollection as SC - self.assertTrue(self.isCLRClass(SC)) + self.assertTrue(isCLRClass(SC)) self.assertTrue(SC.__name__ == 'StringCollection') from xml.dom import pulldom as myPulldom @@ -207,7 +193,7 @@ def testFromModuleImportStar(self): count = len(locals().keys()) m = __import__('System.Xml', globals(), locals(), ['*']) self.assertTrue(m.__name__ == 'System.Xml') - self.assertTrue(self.isCLRModule(m)) + self.assertTrue(isCLRModule(m)) self.assertTrue(len(locals().keys()) > count + 1) def testImplicitAssemblyLoad(self): @@ -225,10 +211,10 @@ def testImplicitAssemblyLoad(self): with warnings.catch_warnings(record=True) as w: clr.AddReference("System.Windows.Forms") import System.Windows.Forms as Forms - self.assertTrue(self.isCLRModule(Forms)) + self.assertTrue(isCLRModule(Forms)) self.assertTrue(Forms.__name__ == 'System.Windows.Forms') from System.Windows.Forms import Form - self.assertTrue(self.isCLRClass(Form)) + self.assertTrue(isCLRClass(Form)) self.assertTrue(Form.__name__ == 'Form') self.assertEqual(len(w), 0) @@ -255,7 +241,7 @@ def testImplicitLoadAlreadyValidNamespace(self): # Python runtime to "do the right thing", allowing types from both # assemblies to be found in the System module implicitly. import System - self.assertTrue(self.isCLRClass(System.UriBuilder)) + self.assertTrue(isCLRClass(System.UriBuilder)) def testImportNonExistantModule(self): """Test import failure for a non-existant module.""" @@ -269,7 +255,7 @@ def testLookupNoNamespaceType(self): """Test lookup of types without a qualified namespace.""" import Python.Test import clr - self.assertTrue(self.isCLRClass(clr.NoNamespaceType)) + self.assertTrue(isCLRClass(clr.NoNamespaceType)) def testModuleLookupRecursion(self): """Test for recursive lookup handling.""" @@ -290,10 +276,10 @@ def testModuleGetAttr(self): import System int_type = System.Int32 - self.assertTrue(self.isCLRClass(int_type)) + self.assertTrue(isCLRClass(int_type)) module = System.Xml - self.assertTrue(self.isCLRModule(module)) + self.assertTrue(isCLRModule(module)) def test(): spam = System.Spam diff --git a/src/tests/utils.py b/src/tests/utils.py new file mode 100644 index 000000000..dd4d8767d --- /dev/null +++ b/src/tests/utils.py @@ -0,0 +1,132 @@ +# -*- coding: utf-8 -*- + +"""Tests Utilities + +Refactor utility functions and classes +""" + +from _compat import PY2, PY3 + + +def isCLRModule(ob): + return type(ob).__name__ == 'ModuleObject' + + +def isCLRRootModule(ob): + if PY3: + # in Python 3 the clr module is a normal python module + return ob.__name__ == "clr" + elif PY2: + return type(ob).__name__ == 'CLRModule' + + +def isCLRClass(ob): + return type(ob).__name__ == 'CLR Metatype' # for now + + +class ClassicClass: + def kind(self): + return "classic" + + +class NewStyleClass(object): + def kind(self): + return "new-style" + + +class GenericHandler(object): + """A generic handler to test event callbacks.""" + + def __init__(self): + self.value = None + + def handler(self, sender, args): + self.value = args.value + + +class VariableArgsHandler(object): + """A variable args handler to test event callbacks.""" + + def __init__(self): + self.value = None + + def handler(self, *args): + ob, eventargs = args + self.value = eventargs.value + + +class CallableHandler(object): + """A callable handler to test event callbacks.""" + + def __init__(self): + self.value = None + + def __call__(self, sender, args): + self.value = args.value + + +class VarCallableHandler(object): + """A variable args callable handler to test event callbacks.""" + + def __init__(self): + self.value = None + + def __call__(self, *args): + ob, eventargs = args + self.value = eventargs.value + + +class StaticMethodHandler(object): + """A static method handler to test event callbacks.""" + + value = None + + def handler(sender, args): + StaticMethodHandler.value = args.value + + handler = staticmethod(handler) + + +class ClassMethodHandler(object): + """A class method handler to test event callbacks.""" + + value = None + + def handler(cls, sender, args): + cls.value = args.value + + handler = classmethod(handler) + + +class MultipleHandler(object): + """A generic handler to test multiple callbacks.""" + + def __init__(self): + self.value = 0 + + def handler(self, sender, args): + self.value += args.value + + def count(self): + self.value += 1 + return 'ok' + + +class HelloClass(object): + def hello(self): + return "hello" + + def __call__(self): + return "hello" + + @staticmethod + def s_hello(): + return "hello" + + @classmethod + def c_hello(cls): + return "hello" + + +def hello_func(): + return "hello" From 5206a4664f2739ae2b774a240e7cacbe52daa0e0 Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sat, 21 Jan 2017 23:18:16 -0700 Subject: [PATCH 07/13] Rename tests --- src/tests/leaktest.py | 10 +-- src/tests/test_array.py | 80 ++++++++++---------- src/tests/test_class.py | 36 ++++----- src/tests/test_compat.py | 32 ++++---- src/tests/test_constructors.py | 8 +- src/tests/test_conversion.py | 40 +++++----- src/tests/test_delegate.py | 34 ++++----- src/tests/test_docstring.py | 6 +- src/tests/test_engine.py | 6 +- src/tests/test_enum.py | 30 ++++---- src/tests/test_event.py | 56 +++++++------- src/tests/test_exceptions.py | 46 +++++------ src/tests/test_field.py | 60 +++++++-------- src/tests/test_generic.py | 34 ++++----- src/tests/test_indexer.py | 58 +++++++------- src/tests/test_interface.py | 8 +- src/tests/test_method.py | 80 ++++++++++---------- src/tests/test_module.py | 54 ++++++------- src/tests/test_property.py | 20 ++--- src/tests/test_subclass.py | 10 +-- src/tests/test_suite/test_callback.py | 4 +- src/tests/test_suite/test_import.py | 2 +- src/tests/test_suite/test_recursive_types.py | 2 +- src/tests/test_thread.py | 6 +- 24 files changed, 361 insertions(+), 361 deletions(-) diff --git a/src/tests/leaktest.py b/src/tests/leaktest.py index 666e6e276..a54774566 100644 --- a/src/tests/leaktest.py +++ b/src/tests/leaktest.py @@ -63,7 +63,7 @@ def report(self): if type(item) != dicttype: print(item, sys.getrefcount(item)) - def testModules(self): + def test_modules(self): self.notify("Running module leak check...") for i in range(self.count): @@ -78,7 +78,7 @@ def testModules(self): self.end_test() - def testClasses(self): + def test_classes(self): from System.Collections import Hashtable from Python.Test import StringDelegate @@ -102,7 +102,7 @@ def testClasses(self): self.end_test() - def testEnumerations(self): + def test_enumerations(self): import Python.Test as Test self.notify("Running enum leak check...") @@ -137,7 +137,7 @@ def testEnumerations(self): self.end_test() - def testEvents(self): + def test_events(self): from Python.Test import EventTest, TestEventArgs self.notify("Running event leak check...") @@ -215,7 +215,7 @@ def handler(sender, args, dict=dict): self.end_test() - def testDelegates(self): + def test_delegates(self): from Python.Test import DelegateTest, StringDelegate self.notify("Running delegate leak check...") diff --git a/src/tests/test_array.py b/src/tests/test_array.py index 134b95557..b12c785e7 100644 --- a/src/tests/test_array.py +++ b/src/tests/test_array.py @@ -11,7 +11,7 @@ class ArrayTests(unittest.TestCase): """Test support for managed arrays.""" - def testPublicArray(self): + def test_public_array(self): """Test public arrays.""" ob = Test.PublicArrayTest() items = ob.items @@ -33,7 +33,7 @@ def testPublicArray(self): items[-1] = 4 self.assertTrue(items[-1] == 4) - def testProtectedArray(self): + def test_protected_array(self): """Test protected arrays.""" ob = Test.ProtectedArrayTest() items = ob.items @@ -55,7 +55,7 @@ def testProtectedArray(self): items[-1] = 4 self.assertTrue(items[-1] == 4) - def testInternalArray(self): + def test_internal_array(self): """Test internal arrays.""" def test(): @@ -64,7 +64,7 @@ def test(): self.assertRaises(AttributeError, test) - def testPrivateArray(self): + def test_private_array(self): """Test private arrays.""" def test(): @@ -73,7 +73,7 @@ def test(): self.assertRaises(AttributeError, test) - def testArrayBoundsChecking(self): + def test_array_bounds_checking(self): """Test array bounds checking.""" ob = Test.Int32ArrayTest() @@ -115,7 +115,7 @@ def test(): self.assertRaises(IndexError, test) - def testArrayContains(self): + def test_array_contains(self): """Test array support for __contains__.""" ob = Test.Int32ArrayTest() @@ -132,7 +132,7 @@ def testArrayContains(self): self.assertFalse(None in items) # which threw ^ here which is a little odd. # But when run from runtests.py. Not when this module ran by itself. - def testBooleanArray(self): + def test_boolean_array(self): """Test boolean arrays.""" ob = Test.BooleanArrayTest() items = ob.items @@ -163,7 +163,7 @@ def test(): self.assertRaises(TypeError, test) - def testByteArray(self): + def test_byte_array(self): """Test byte arrays.""" ob = Test.ByteArrayTest() items = ob.items @@ -212,7 +212,7 @@ def test(): self.assertRaises(TypeError, test) - def testSByteArray(self): + def test_sbyte_array(self): """Test sbyte arrays.""" ob = Test.SByteArrayTest() items = ob.items @@ -261,7 +261,7 @@ def test(): self.assertRaises(TypeError, test) - def testCharArray(self): + def test_char_array(self): """Test char arrays.""" ob = Test.CharArrayTest() items = ob.items @@ -298,7 +298,7 @@ def test(): self.assertRaises(TypeError, test) - def testInt16Array(self): + def test_int16_array(self): """Test Int16 arrays.""" ob = Test.Int16ArrayTest() items = ob.items @@ -347,7 +347,7 @@ def test(): self.assertRaises(TypeError, test) - def testInt32Array(self): + def test_int32_array(self): """Test Int32 arrays.""" ob = Test.Int32ArrayTest() items = ob.items @@ -396,7 +396,7 @@ def test(): self.assertRaises(TypeError, test) - def testInt64Array(self): + def test_int64_array(self): """Test Int64 arrays.""" ob = Test.Int64ArrayTest() items = ob.items @@ -445,7 +445,7 @@ def test(): self.assertRaises(TypeError, test) - def testUInt16Array(self): + def test_uint16_array(self): """Test UInt16 arrays.""" ob = Test.UInt16ArrayTest() items = ob.items @@ -494,7 +494,7 @@ def test(): self.assertRaises(TypeError, test) - def testUInt32Array(self): + def test_uint32_array(self): """Test UInt32 arrays.""" ob = Test.UInt32ArrayTest() items = ob.items @@ -543,7 +543,7 @@ def test(): self.assertRaises(TypeError, test) - def testUInt64Array(self): + def test_uint64_array(self): """Test UInt64 arrays.""" ob = Test.UInt64ArrayTest() items = ob.items @@ -592,7 +592,7 @@ def test(): self.assertRaises(TypeError, test) - def testSingleArray(self): + def test_single_array(self): """Test Single arrays.""" ob = Test.SingleArrayTest() items = ob.items @@ -629,7 +629,7 @@ def test(): self.assertRaises(TypeError, test) - def testDoubleArray(self): + def test_double_array(self): """Test Double arrays.""" ob = Test.DoubleArrayTest() items = ob.items @@ -666,7 +666,7 @@ def test(): self.assertRaises(TypeError, test) - def testDecimalArray(self): + def test_decimal_array(self): """Test Decimal arrays.""" ob = Test.DecimalArrayTest() items = ob.items @@ -704,7 +704,7 @@ def test(): self.assertRaises(TypeError, test) - def testStringArray(self): + def test_string_array(self): """Test String arrays.""" ob = Test.StringArrayTest() items = ob.items @@ -738,7 +738,7 @@ def test(): self.assertRaises(TypeError, test) - def testEnumArray(self): + def test_enum_array(self): """Test enum arrays.""" from Python.Test import ShortEnum ob = Test.EnumArrayTest() @@ -779,7 +779,7 @@ def test(): self.assertRaises(TypeError, test) - def testObjectArray(self): + def test_object_array(self): """Test ob arrays.""" from Python.Test import Spam ob = Test.ObjectArrayTest() @@ -820,7 +820,7 @@ def test(): self.assertRaises(TypeError, test) - def testNullArray(self): + def test_null_array(self): """Test null arrays.""" ob = Test.NullArrayTest() items = ob.items @@ -851,7 +851,7 @@ def test(): self.assertRaises(TypeError, test) - def testInterfaceArray(self): + def test_interface_array(self): """Test interface arrays.""" from Python.Test import Spam ob = Test.InterfaceArrayTest() @@ -895,7 +895,7 @@ def test(): self.assertRaises(TypeError, test) - def testTypedArray(self): + def test_typed_array(self): """Test typed arrays.""" from Python.Test import Spam ob = Test.TypedArrayTest() @@ -939,7 +939,7 @@ def test(): self.assertRaises(TypeError, test) - def testMultiDimensionalArray(self): + def test_multi_dimensional_array(self): """Test multi-dimensional arrays.""" ob = Test.MultiDimensionalArrayTest() items = ob.items @@ -1011,7 +1011,7 @@ def test(): self.assertRaises(TypeError, test) - def testArrayIteration(self): + def test_array_iteration(self): """Test array iteration.""" items = Test.Int32ArrayTest().items @@ -1028,7 +1028,7 @@ def testArrayIteration(self): for i in empty: raise TypeError('iteration over empty array') - def testTupleArrayConversion(self): + def test_tuple_array_conversion(self): """Test conversion of tuples to array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam @@ -1042,7 +1042,7 @@ def testTupleArrayConversion(self): self.assertTrue(result[0].__class__ == Spam) self.assertTrue(len(result) == 10) - def testTupleNestedArrayConversion(self): + def test_tuple_nested_array_conversion(self): """Test conversion of tuples to array-of-array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam @@ -1061,7 +1061,7 @@ def testTupleNestedArrayConversion(self): self.assertTrue(len(result[0]) == 10) self.assertTrue(result[0][0].__class__ == Spam) - def testListArrayConversion(self): + def test_list_array_conversion(self): """Test conversion of lists to array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam @@ -1074,7 +1074,7 @@ def testListArrayConversion(self): self.assertTrue(result[0].__class__ == Spam) self.assertTrue(len(result) == 10) - def testListNestedArrayConversion(self): + def test_list_nested_array_conversion(self): """Test conversion of lists to array-of-array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam @@ -1092,7 +1092,7 @@ def testListNestedArrayConversion(self): self.assertTrue(len(result[0]) == 10) self.assertTrue(result[0][0].__class__ == Spam) - def testSequenceArrayConversion(self): + def test_sequence_array_conversion(self): """Test conversion of sequence-like obs to array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam @@ -1105,7 +1105,7 @@ def testSequenceArrayConversion(self): self.assertTrue(result[0].__class__ == Spam) self.assertTrue(len(result) == 10) - def testSequenceNestedArrayConversion(self): + def test_sequence_nested_array_conversion(self): """Test conversion of sequences to array-of-array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam @@ -1123,7 +1123,7 @@ def testSequenceNestedArrayConversion(self): self.assertTrue(len(result[0]) == 10) self.assertTrue(result[0][0].__class__ == Spam) - def testTupleArrayConversionTypeChecking(self): + def test_tuple_array_conversion_type_checking(self): """Test error handling for tuple conversion to array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam @@ -1159,7 +1159,7 @@ def test(items=items): self.assertRaises(TypeError, test) - def testListArrayConversionTypeChecking(self): + def test_list_array_conversion_type_checking(self): """Test error handling for list conversion to array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam @@ -1190,7 +1190,7 @@ def test(items=items): self.assertRaises(TypeError, test) - def testSequenceArrayConversionTypeChecking(self): + def test_sequence_array_conversion_type_checking(self): """Test error handling for sequence conversion to array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam @@ -1221,7 +1221,7 @@ def test(items=items): self.assertRaises(TypeError, test) - def testMDArrayConversion(self): + def test_md_array_conversion(self): """Test passing of multi-dimensional array arguments.""" from Python.Test import ArrayConversionTest from Python.Test import Spam @@ -1245,7 +1245,7 @@ def testMDArrayConversion(self): self.assertTrue(result[0, 0].__class__ == Spam) self.assertTrue(result[0, 0].__class__ == Spam) - def testBoxedValueTypeMutationResult(self): + def test_boxed_value_type_mutation_result(self): """Test behavior of boxed value types.""" # This test actually exists mostly as documentation of an important @@ -1282,7 +1282,7 @@ def testBoxedValueTypeMutationResult(self): self.assertTrue(items[i].X == i + 1) self.assertTrue(items[i].Y == i + 1) - def testSpecialArrayCreation(self): + def test_special_array_creation(self): """Test using the Array[] syntax for creating arrays.""" from Python.Test import ISayHello1, InterfaceTest, ShortEnum from System import Array @@ -1416,7 +1416,7 @@ def testSpecialArrayCreation(self): self.assertTrue(value[1].__class__ == inst.__class__) self.assertTrue(value.Length == 2) - def testArrayAbuse(self): + def test_array_abuse(self): """Test array abuse.""" _class = Test.PublicArrayTest ob = Test.PublicArrayTest() diff --git a/src/tests/test_class.py b/src/tests/test_class.py index b681c3a11..02d5f1efc 100644 --- a/src/tests/test_class.py +++ b/src/tests/test_class.py @@ -21,17 +21,17 @@ def kind(self): class ClassTests(unittest.TestCase): """Test CLR class support.""" - def testBasicReferenceType(self): + def test_basic_reference_type(self): """Test usage of CLR defined reference types.""" String = System.String self.assertEquals(String.Empty, "") - def testBasicValueType(self): + def test_basic_value_type(self): """Test usage of CLR defined value types.""" Int32 = System.Int32 self.assertEquals(Int32.MaxValue, 2147483647) - def testClassStandardAttrs(self): + def test_class_standard_attrs(self): """Test standard class attributes.""" from Python.Test import ClassTest @@ -40,24 +40,24 @@ def testClassStandardAttrs(self): self.assertTrue(type(ClassTest.__dict__) == DictProxyType) self.assertTrue(len(ClassTest.__doc__) > 0) - def testClassDocstrings(self): + def test_class_docstrings(self): """Test standard class docstring generation""" from Python.Test import ClassTest value = 'Void .ctor()' self.assertTrue(ClassTest.__doc__ == value) - def testClassDefaultStr(self): + def test_class_default_str(self): """Test the default __str__ implementation for managed objects.""" s = System.String("this is a test") self.assertTrue(str(s) == "this is a test") - def testClassDefaultRepr(self): + def test_class_default_repr(self): """Test the default __repr__ implementation for managed objects.""" s = System.String("this is a test") self.assertTrue(repr(s).startswith(" Python type conversions.""" - def testBoolConversion(self): + def test_bool_conversion(self): """Test bool conversion.""" ob = ConversionTest() self.assertTrue(ob.BooleanField == False) @@ -63,7 +63,7 @@ def testBoolConversion(self): self.assertTrue(ob.BooleanField is True) self.assertTrue(ob.BooleanField == 1) - def testSByteConversion(self): + def test_sbyte_conversion(self): """Test sbyte conversion.""" self.assertTrue(System.SByte.MaxValue == 127) self.assertTrue(System.SByte.MinValue == -128) @@ -113,7 +113,7 @@ def test(): self.assertRaises(OverflowError, test) - def testByteConversion(self): + def test_byte_conversion(self): """Test byte conversion.""" self.assertTrue(System.Byte.MaxValue == 255) self.assertTrue(System.Byte.MinValue == 0) @@ -163,7 +163,7 @@ def test(): self.assertRaises(OverflowError, test) - def testCharConversion(self): + def test_char_conversion(self): """Test char conversion.""" self.assertTrue(System.Char.MaxValue == unichr(65535)) self.assertTrue(System.Char.MinValue == unichr(0)) @@ -195,7 +195,7 @@ def test(): self.assertRaises(TypeError, test) - def testInt16Conversion(self): + def test_int16_conversion(self): """Test int16 conversion.""" self.assertTrue(System.Int16.MaxValue == 32767) self.assertTrue(System.Int16.MinValue == -32768) @@ -245,7 +245,7 @@ def test(): self.assertRaises(OverflowError, test) - def testInt32Conversion(self): + def test_int32_conversion(self): """Test int32 conversion.""" self.assertTrue(System.Int32.MaxValue == 2147483647) self.assertTrue(System.Int32.MinValue == -2147483648) @@ -295,7 +295,7 @@ def test(): self.assertRaises(OverflowError, test) - def testInt64Conversion(self): + def test_int64_conversion(self): """Test int64 conversion.""" self.assertTrue(System.Int64.MaxValue == long(9223372036854775807)) self.assertTrue(System.Int64.MinValue == long(-9223372036854775808)) @@ -345,7 +345,7 @@ def test(): self.assertRaises(OverflowError, test) - def testUInt16Conversion(self): + def test_uint16_conversion(self): """Test uint16 conversion.""" self.assertTrue(System.UInt16.MaxValue == 65535) self.assertTrue(System.UInt16.MinValue == 0) @@ -395,7 +395,7 @@ def test(): self.assertRaises(OverflowError, test) - def testUInt32Conversion(self): + def test_uint32_conversion(self): """Test uint32 conversion.""" self.assertTrue(System.UInt32.MaxValue == long(4294967295)) self.assertTrue(System.UInt32.MinValue == 0) @@ -445,7 +445,7 @@ def test(): self.assertRaises(OverflowError, test) - def testUInt64Conversion(self): + def test_uint64_conversion(self): """Test uint64 conversion.""" self.assertTrue(System.UInt64.MaxValue == long(18446744073709551615)) self.assertTrue(System.UInt64.MinValue == 0) @@ -495,7 +495,7 @@ def test(): self.assertRaises(OverflowError, test) - def testSingleConversion(self): + def test_single_conversion(self): """Test single conversion.""" self.assertTrue(System.Single.MaxValue == 3.402823e38) self.assertTrue(System.Single.MinValue == -3.402823e38) @@ -545,7 +545,7 @@ def test(): self.assertRaises(OverflowError, test) - def testDoubleConversion(self): + def test_double_conversion(self): """Test double conversion.""" self.assertTrue(System.Double.MaxValue == 1.7976931348623157e308) self.assertTrue(System.Double.MinValue == -1.7976931348623157e308) @@ -595,7 +595,7 @@ def test(): self.assertRaises(OverflowError, test) - def testDecimalConversion(self): + def test_decimal_conversion(self): """Test decimal conversion.""" from System import Decimal @@ -637,7 +637,7 @@ def test(): self.assertRaises(TypeError, test) - def testStringConversion(self): + def test_string_conversion(self): """Test string / unicode conversion.""" ob = ConversionTest() @@ -670,7 +670,7 @@ def test(): self.assertRaises(TypeError, test) - def testInterfaceConversion(self): + def test_interface_conversion(self): """Test interface conversion.""" from Python.Test import Spam, ISpam @@ -700,7 +700,7 @@ def test(): self.assertRaises(TypeError, test) - def testObjectConversion(self): + def test_object_conversion(self): """Test ob conversion.""" from Python.Test import Spam @@ -728,7 +728,7 @@ def test(): self.assertRaises(TypeError, test) - def testEnumConversion(self): + def test_enum_conversion(self): """Test enum conversion.""" from Python.Test import ShortEnum @@ -770,7 +770,7 @@ def test(): self.assertRaises(TypeError, test) - def testNullConversion(self): + def test_null_conversion(self): """Test null conversion.""" ob = ConversionTest() @@ -795,7 +795,7 @@ def test(): self.assertRaises(TypeError, test) - def testByteArrayConversion(self): + def test_byte_array_conversion(self): """Test byte array conversion.""" ob = ConversionTest() @@ -813,7 +813,7 @@ def testByteArrayConversion(self): for i in range(len(value)): self.assertTrue(array[i] == indexbytes(value, i)) - def testSByteArrayConversion(self): + def test_sbyte_array_conversion(self): """Test sbyte array conversion.""" ob = ConversionTest() diff --git a/src/tests/test_delegate.py b/src/tests/test_delegate.py index 33940caca..37203e77d 100644 --- a/src/tests/test_delegate.py +++ b/src/tests/test_delegate.py @@ -14,7 +14,7 @@ class DelegateTests(unittest.TestCase): """Test CLR delegate support.""" - def testDelegateStandardAttrs(self): + def test_delegate_standard_attrs(self): """Test standard delegate attributes.""" from Python.Test import PublicDelegate @@ -23,7 +23,7 @@ def testDelegateStandardAttrs(self): self.assertTrue(type(PublicDelegate.__dict__) == DictProxyType) self.assertTrue(PublicDelegate.__doc__ == None) - def testGlobalDelegateVisibility(self): + def test_global_delegate_visibility(self): """Test visibility of module-level delegates.""" from Python.Test import PublicDelegate @@ -40,7 +40,7 @@ def test(): self.assertRaises(AttributeError, test) - def testNestedDelegateVisibility(self): + def test_nested_delegate_visibility(self): """Test visibility of nested delegates.""" ob = DelegateTest.PublicDelegate self.assertTrue(ob.__name__ == 'PublicDelegate') @@ -58,7 +58,7 @@ def test(): self.assertRaises(AttributeError, test) - def testDelegateFromFunction(self): + def test_delegate_from_function(self): """Test delegate implemented with a Python function.""" d = StringDelegate(hello_func) @@ -71,7 +71,7 @@ def testDelegateFromFunction(self): self.assertTrue(ob.CallStringDelegate(ob.stringDelegate) == "hello") self.assertTrue(ob.stringDelegate() == "hello") - def testDelegateFromMethod(self): + def test_delegate_from_method(self): """Test delegate implemented with a Python instance method.""" inst = HelloClass() @@ -85,7 +85,7 @@ def testDelegateFromMethod(self): self.assertTrue(ob.CallStringDelegate(ob.stringDelegate) == "hello") self.assertTrue(ob.stringDelegate() == "hello") - def testDelegateFromUnboundMethod(self): + def test_delegate_from_unbound_method(self): """Test failure mode for unbound methods.""" def test(): @@ -94,7 +94,7 @@ def test(): self.assertRaises(TypeError, test) - def testDelegateFromStaticMethod(self): + def test_delegate_from_static_method(self): """Test delegate implemented with a Python static method.""" d = StringDelegate(HelloClass.s_hello) @@ -118,7 +118,7 @@ def testDelegateFromStaticMethod(self): self.assertTrue(ob.CallStringDelegate(ob.stringDelegate) == "hello") self.assertTrue(ob.stringDelegate() == "hello") - def testDelegateFromClassMethod(self): + def test_delegate_from_class_method(self): """Test delegate implemented with a Python class method.""" d = StringDelegate(HelloClass.c_hello) @@ -142,7 +142,7 @@ def testDelegateFromClassMethod(self): self.assertTrue(ob.CallStringDelegate(ob.stringDelegate) == "hello") self.assertTrue(ob.stringDelegate() == "hello") - def testDelegateFromCallable(self): + def test_delegate_from_callable(self): """Test delegate implemented with a Python callable object.""" inst = HelloClass() @@ -156,7 +156,7 @@ def testDelegateFromCallable(self): self.assertTrue(ob.CallStringDelegate(ob.stringDelegate) == "hello") self.assertTrue(ob.stringDelegate() == "hello") - def testDelegateFromManagedInstanceMethod(self): + def test_delegate_from_managed_instance_method(self): """Test delegate implemented with a managed instance method.""" ob = DelegateTest() d = StringDelegate(ob.SayHello) @@ -168,7 +168,7 @@ def testDelegateFromManagedInstanceMethod(self): self.assertTrue(ob.CallStringDelegate(ob.stringDelegate) == "hello") self.assertTrue(ob.stringDelegate() == "hello") - def testDelegateFromManagedStaticMethod(self): + def test_delegate_from_managed_static_method(self): """Test delegate implemented with a managed static method.""" d = StringDelegate(DelegateTest.StaticSayHello) ob = DelegateTest() @@ -180,7 +180,7 @@ def testDelegateFromManagedStaticMethod(self): self.assertTrue(ob.CallStringDelegate(ob.stringDelegate) == "hello") self.assertTrue(ob.stringDelegate() == "hello") - def testDelegateFromDelegate(self): + def test_delegate_from_delegate(self): """Test delegate implemented with another delegate.""" d1 = StringDelegate(hello_func) d2 = StringDelegate(d1) @@ -193,7 +193,7 @@ def testDelegateFromDelegate(self): self.assertTrue(ob.CallStringDelegate(ob.stringDelegate) == "hello") self.assertTrue(ob.stringDelegate() == "hello") - def testDelegateWithInvalidArgs(self): + def test_delegate_with_invalid_args(self): """Test delegate instantiation with invalid (non-callable) args.""" def test(): @@ -211,7 +211,7 @@ def test(): self.assertRaises(TypeError, test) - def testMulticastDelegate(self): + def test_multicast_delegate(self): """Test multicast delegates.""" inst = MultipleHandler() @@ -227,7 +227,7 @@ def testMulticastDelegate(self): self.assertTrue(md() == "ok") self.assertTrue(inst.value == 4) - def testSubclassDelegateFails(self): + def test_subclass_delegate_fails(self): """Test that subclassing of a delegate type fails.""" from Python.Test import PublicDelegate @@ -237,7 +237,7 @@ class Boom(PublicDelegate): self.assertRaises(TypeError, test) - def testDelegateEquality(self): + def test_delegate_equality(self): """Test delegate equality.""" def sayhello(): @@ -248,7 +248,7 @@ def sayhello(): ob.stringDelegate = d self.assertTrue(ob.stringDelegate == d) - def testBoolDelegate(self): + def test_bool_delegate(self): """Test boolean delegate.""" from Python.Test import BoolDelegate diff --git a/src/tests/test_docstring.py b/src/tests/test_docstring.py index afbd1062f..f2bc3302b 100644 --- a/src/tests/test_docstring.py +++ b/src/tests/test_docstring.py @@ -6,21 +6,21 @@ class DocStringTests(unittest.TestCase): """Test doc strings support.""" - def testDocWithCtor(self): + def test_doc_with_ctor(self): from Python.Test import DocWithCtorTest self.assertEqual(DocWithCtorTest.__doc__, 'DocWithCtorTest Class') self.assertEqual(DocWithCtorTest.TestMethod.__doc__, 'DocWithCtorTest TestMethod') self.assertEqual(DocWithCtorTest.StaticTestMethod.__doc__, 'DocWithCtorTest StaticTestMethod') - def testDocWithCtorNoDoc(self): + def test_doc_with_ctor_no_doc(self): from Python.Test import DocWithCtorNoDocTest self.assertEqual(DocWithCtorNoDocTest.__doc__, 'Void .ctor(Boolean)') self.assertEqual(DocWithCtorNoDocTest.TestMethod.__doc__, 'Void TestMethod(Double, Int32)') self.assertEqual(DocWithCtorNoDocTest.StaticTestMethod.__doc__, 'Void StaticTestMethod(Double, Int32)') - def testDocWithoutCtor(self): + def test_doc_without_ctor(self): from Python.Test import DocWithoutCtorTest self.assertEqual(DocWithoutCtorTest.__doc__, 'DocWithoutCtorTest Class') diff --git a/src/tests/test_engine.py b/src/tests/test_engine.py index 274dfb704..cfc019b5f 100644 --- a/src/tests/test_engine.py +++ b/src/tests/test_engine.py @@ -11,19 +11,19 @@ class EngineTests(unittest.TestCase): """Test PythonEngine embedding APIs.""" - def testMultipleCallsToInitialize(self): + def test_multiple_calls_to_initialize(self): """Test that multiple initialize calls are harmless.""" PythonEngine.Initialize() PythonEngine.Initialize() PythonEngine.Initialize() - def testImportModule(self): + def test_import_module(self): """Test module import.""" m = PythonEngine.ImportModule("sys") n = m.GetAttr("__name__") self.assertTrue(n.AsManagedObject(System.String) == "sys") - def testRunString(self): + def test_run_string(self): """Test the RunString method.""" PythonEngine.AcquireLock() diff --git a/src/tests/test_enum.py b/src/tests/test_enum.py index 493395d27..6f6097029 100644 --- a/src/tests/test_enum.py +++ b/src/tests/test_enum.py @@ -10,7 +10,7 @@ class EnumTests(unittest.TestCase): """Test CLR enum support.""" - def testEnumStandardAttrs(self): + def test_enum_standard_attrs(self): """Test standard enum attributes.""" from System import DayOfWeek @@ -19,7 +19,7 @@ def testEnumStandardAttrs(self): self.assertTrue(type(DayOfWeek.__dict__) == DictProxyType) self.assertTrue(DayOfWeek.__doc__ == None) - def testEnumGetMember(self): + def test_enum_get_member(self): """Test access to enum members.""" from System import DayOfWeek @@ -31,55 +31,55 @@ def testEnumGetMember(self): self.assertTrue(DayOfWeek.Friday == 5) self.assertTrue(DayOfWeek.Saturday == 6) - def testByteEnum(self): + def test_byte_enum(self): """Test byte enum.""" self.assertTrue(Test.ByteEnum.Zero == 0) self.assertTrue(Test.ByteEnum.One == 1) self.assertTrue(Test.ByteEnum.Two == 2) - def testSByteEnum(self): + def test_sbyte_enum(self): """Test sbyte enum.""" self.assertTrue(Test.SByteEnum.Zero == 0) self.assertTrue(Test.SByteEnum.One == 1) self.assertTrue(Test.SByteEnum.Two == 2) - def testShortEnum(self): + def test_short_enum(self): """Test short enum.""" self.assertTrue(Test.ShortEnum.Zero == 0) self.assertTrue(Test.ShortEnum.One == 1) self.assertTrue(Test.ShortEnum.Two == 2) - def testUShortEnum(self): + def test_ushort_enum(self): """Test ushort enum.""" self.assertTrue(Test.UShortEnum.Zero == 0) self.assertTrue(Test.UShortEnum.One == 1) self.assertTrue(Test.UShortEnum.Two == 2) - def testIntEnum(self): + def test_int_enum(self): """Test int enum.""" self.assertTrue(Test.IntEnum.Zero == 0) self.assertTrue(Test.IntEnum.One == 1) self.assertTrue(Test.IntEnum.Two == 2) - def testUIntEnum(self): + def test_uint_enum(self): """Test uint enum.""" self.assertTrue(Test.UIntEnum.Zero == long(0)) self.assertTrue(Test.UIntEnum.One == long(1)) self.assertTrue(Test.UIntEnum.Two == long(2)) - def testLongEnum(self): + def test_long_enum(self): """Test long enum.""" self.assertTrue(Test.LongEnum.Zero == long(0)) self.assertTrue(Test.LongEnum.One == long(1)) self.assertTrue(Test.LongEnum.Two == long(2)) - def testULongEnum(self): + def test_ulong_enum(self): """Test ulong enum.""" self.assertTrue(Test.ULongEnum.Zero == long(0)) self.assertTrue(Test.ULongEnum.One == long(1)) self.assertTrue(Test.ULongEnum.Two == long(2)) - def testInstantiateEnumFails(self): + def test_instantiate_enum_fails(self): """Test that instantiation of an enum class fails.""" from System import DayOfWeek @@ -88,7 +88,7 @@ def test(): self.assertRaises(TypeError, test) - def testSubclassEnumFails(self): + def test_subclass_enum_fails(self): """Test that subclassing of an enumeration fails.""" from System import DayOfWeek @@ -98,7 +98,7 @@ class Boom(DayOfWeek): self.assertRaises(TypeError, test) - def testEnumSetMemberFails(self): + def test_enum_set_member_fails(self): """Test that setattr operations on enumerations fail.""" from System import DayOfWeek @@ -112,7 +112,7 @@ def test(): self.assertRaises(TypeError, test) - def testEnumWithFlagsAttrConversion(self): + def test_enum_with_flags_attr_conversion(self): """Test enumeration conversion with FlagsAttribute set.""" # This works because the FlagsField enum has FlagsAttribute. Test.FieldTest().FlagsField = 99 @@ -123,7 +123,7 @@ def test(): self.assertRaises(ValueError, test) - def testEnumConversion(self): + def test_enum_conversion(self): """Test enumeration conversion.""" ob = Test.FieldTest() self.assertTrue(ob.EnumField == 0) diff --git a/src/tests/test_event.py b/src/tests/test_event.py index 858069f6c..84a495430 100644 --- a/src/tests/test_event.py +++ b/src/tests/test_event.py @@ -13,7 +13,7 @@ class EventTests(unittest.TestCase): """Test CLR event support.""" - def testPublicInstanceEvent(self): + def test_public_instance_event(self): """Test public instance events.""" ob = EventTest() @@ -27,7 +27,7 @@ def testPublicInstanceEvent(self): ob.PublicEvent -= handler.handler - def testPublicStaticEvent(self): + def test_public_static_event(self): """Test public static events.""" handler = GenericHandler() self.assertTrue(handler.value == None) @@ -37,7 +37,7 @@ def testPublicStaticEvent(self): EventTest.OnPublicStaticEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) - def testProtectedInstanceEvent(self): + def test_protected_instance_event(self): """Test protected instance events.""" ob = EventTest() @@ -51,7 +51,7 @@ def testProtectedInstanceEvent(self): ob.ProtectedEvent -= handler.handler - def testProtectedStaticEvent(self): + def test_protected_static_event(self): """Test protected static events.""" ob = EventTest @@ -65,7 +65,7 @@ def testProtectedStaticEvent(self): EventTest.ProtectedStaticEvent -= handler.handler - def testInternalEvents(self): + def test_internal_events(self): """Test internal events.""" def test(): @@ -83,7 +83,7 @@ def test(): self.assertRaises(AttributeError, test) - def testPrivateEvents(self): + def test_private_events(self): """Test private events.""" def test(): @@ -101,7 +101,7 @@ def test(): self.assertRaises(AttributeError, test) - def testMulticastEvent(self): + def test_multicast_event(self): """Test multicast events.""" ob = EventTest() @@ -129,7 +129,7 @@ def testMulticastEvent(self): ob.PublicEvent -= handler2.handler ob.PublicEvent -= handler3.handler - def testInstanceMethodHandler(self): + def test_instance_method_handler(self): """Test instance method handlers.""" ob = EventTest() handler = GenericHandler() @@ -146,7 +146,7 @@ def testInstanceMethodHandler(self): ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) - def testVarArgsInstanceMethodHandler(self): + def test_var_args_instance_method_handler(self): """Test vararg instance method handlers.""" ob = EventTest() handler = VariableArgsHandler() @@ -163,7 +163,7 @@ def testVarArgsInstanceMethodHandler(self): ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) - def testCallableobHandler(self): + def test_callableob_handler(self): """Test callable ob handlers.""" ob = EventTest() handler = CallableHandler() @@ -180,7 +180,7 @@ def testCallableobHandler(self): ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) - def testVarArgsCallableHandler(self): + def test_var_args_callable_handler(self): """Test varargs callable handlers.""" ob = EventTest() handler = VarCallableHandler() @@ -197,7 +197,7 @@ def testVarArgsCallableHandler(self): ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) - def testStaticMethodHandler(self): + def test_static_method_handler(self): """Test static method handlers.""" ob = EventTest() handler = StaticMethodHandler() @@ -215,7 +215,7 @@ def testStaticMethodHandler(self): ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) - def testClassMethodHandler(self): + def test_class_method_handler(self): """Test class method handlers.""" ob = EventTest() handler = ClassMethodHandler() @@ -233,7 +233,7 @@ def testClassMethodHandler(self): ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) - def testManagedInstanceMethodHandler(self): + def test_managed_instance_method_handler(self): """Test managed instance method handlers.""" ob = EventTest() @@ -249,7 +249,7 @@ def testManagedInstanceMethodHandler(self): ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(ob.value == 10) - def testManagedStaticMethodHandler(self): + def test_managed_static_method_handler(self): """Test managed static method handlers.""" ob = EventTest() EventTest.s_value = 0 @@ -266,7 +266,7 @@ def testManagedStaticMethodHandler(self): ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(EventTest.s_value == 10) - def testUnboundMethodHandler(self): + def test_unbound_method_handler(self): """Test failure mode for unbound method handlers.""" ob = EventTest() ob.PublicEvent += GenericHandler.handler @@ -278,7 +278,7 @@ def testUnboundMethodHandler(self): raise TypeError("should have raised a TypeError") - def testFunctionHandler(self): + def test_function_handler(self): """Test function handlers.""" ob = EventTest() dict = {'value': None} @@ -298,7 +298,7 @@ def handler(sender, args, dict=dict): ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(dict['value'] == 10) - def testAddNonCallableHandler(self): + def test_add_non_callable_handler(self): """Test handling of attempts to add non-callable handlers.""" def test(): @@ -322,7 +322,7 @@ class spam(object): self.assertRaises(TypeError, test) - def testRemoveMultipleHandlers(self): + def test_remove_multiple_handlers(self): """Test removing multiple instances of the same handler.""" ob = EventTest() handler = MultipleHandler() @@ -370,7 +370,7 @@ def testRemoveMultipleHandlers(self): ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 30) - def testRemoveMultipleStaticHandlers(self): + def test_remove_multiple_static_handlers(self): """Test removing multiple instances of a static handler.""" ob = EventTest() handler = MultipleHandler() @@ -418,7 +418,7 @@ def testRemoveMultipleStaticHandlers(self): ob.OnPublicStaticEvent(TestEventArgs(10)) self.assertTrue(handler.value == 30) - def testRandomMultipleHandlers(self): + def test_random_multiple_handlers(self): """Test random subscribe / unsubscribe of the same handlers.""" import random ob = EventTest() @@ -465,7 +465,7 @@ def testRandomMultipleHandlers(self): ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler2.value == 0) - def testRemoveInternalCallHandler(self): + def test_remove_internal_call_handler(self): """Test remove on an event sink implemented w/internalcall.""" ob = EventTest() @@ -475,7 +475,7 @@ def h(sender, args): ob.PublicEvent += h ob.PublicEvent -= h - def testRemoveUnknownHandler(self): + def test_remove_unknown_handler(self): """Test removing an event handler that was never added.""" def test(): @@ -486,7 +486,7 @@ def test(): self.assertRaises(ValueError, test) - def testHandlerCallbackFailure(self): + def test_handler_callback_failure(self): """Test failure mode for inappropriate handlers.""" class BadHandler(object): @@ -519,7 +519,7 @@ def test(): ob.PublicEvent -= handler.handler - def testIncorrectInvokation(self): + def test_incorrect_invokation(self): """Test incorrect invocation of events.""" ob = EventTest() @@ -538,7 +538,7 @@ def test(): ob.PublicEvent -= handler.handler - def testExplicitCLSEventRegistration(self): + def test_explicit_cls_event_registration(self): """Test explicit CLS event registration.""" from Python.Test import TestEventHandler @@ -558,7 +558,7 @@ def testExplicitCLSEventRegistration(self): ob.OnPublicEvent(TestEventArgs(20)) self.assertTrue(handler.value == 10) - def testImplicitCLSEventRegistration(self): + def test_implicit_cls_event_registration(self): """Test implicit CLS event registration.""" def test(): @@ -568,7 +568,7 @@ def test(): self.assertRaises(TypeError, test) - def testEventDescriptorAbuse(self): + def test_event_descriptor_abuse(self): """Test event descriptor abuse.""" def test(): diff --git a/src/tests/test_exceptions.py b/src/tests/test_exceptions.py index 647106a70..ffd9445eb 100644 --- a/src/tests/test_exceptions.py +++ b/src/tests/test_exceptions.py @@ -11,13 +11,13 @@ class ExceptionTests(unittest.TestCase): """Test exception support.""" - def testUnifiedExceptionSemantics(self): + def test_unified_exception_semantics(self): """Test unified exception semantics.""" e = System.Exception('Something bad happened') self.assertTrue(isinstance(e, Exception)) self.assertTrue(isinstance(e, System.Exception)) - def testStandardExceptionAttributes(self): + def test_standard_exception_attributes(self): """Test accessing standard exception attributes.""" from System import OverflowException from Python.Test import ExceptionTest @@ -33,7 +33,7 @@ def testStandardExceptionAttributes(self): v = e.ToString() self.assertTrue(len(v) > 0) - def testExtendedExceptionAttributes(self): + def test_extended_exception_attributes(self): """Test accessing extended exception attributes.""" from Python.Test import ExceptionTest, ExtendedException from System import OverflowException @@ -57,7 +57,7 @@ def testExtendedExceptionAttributes(self): self.assertTrue(e.GetExtraInfo() == 'changed') - def testRaiseClassException(self): + def test_raise_class_exception(self): """Test class exception propagation.""" from System import NullReferenceException @@ -73,7 +73,7 @@ def test(): self.assertTrue(type is NullReferenceException) self.assertTrue(isinstance(value, NullReferenceException)) - def testRaiseClassExceptionWithValue(self): + def test_raise_class_exception_with_value(self): """Test class exception propagation with associated value.""" from System import NullReferenceException @@ -90,7 +90,7 @@ def test(): self.assertTrue(isinstance(value, NullReferenceException)) self.assertTrue(value.Message == 'Aiiieee!') - def testRaiseInstanceException(self): + def test_raise_instance_exception(self): """Test instance exception propagation.""" from System import NullReferenceException @@ -107,7 +107,7 @@ def test(): self.assertTrue(isinstance(value, NullReferenceException)) self.assertTrue(len(value.Message) > 0) - def testRaiseInstanceExceptionWithArgs(self): + def test_raise_instance_exception_with_args(self): """Test instance exception propagation with args.""" from System import NullReferenceException @@ -124,7 +124,7 @@ def test(): self.assertTrue(isinstance(value, NullReferenceException)) self.assertTrue(value.Message == 'Aiiieee!') - def testManagedExceptionPropagation(self): + def test_managed_exception_propagation(self): """Test propagation of exceptions raised in managed code.""" from System import Decimal, OverflowException @@ -133,7 +133,7 @@ def test(): self.assertRaises(OverflowException, test) - def testManagedExceptionConversion(self): + def test_managed_exception_conversion(self): """Test conversion of managed exceptions.""" from System import Exception, OverflowException from Python.Test import ExceptionTest @@ -158,7 +158,7 @@ def testManagedExceptionConversion(self): v = ExceptionTest.SetWidenedException(OverflowException('error')) self.assertTrue(v) - def testCatchExceptionFromManagedMethod(self): + def test_catch_exception_from_managed_method(self): """Test catching an exception from a managed method.""" from Python.Test import ExceptionTest from System import OverflowException @@ -172,7 +172,7 @@ def testCatchExceptionFromManagedMethod(self): raise SystemError('failed to catch exception from managed method') - def testCatchExceptionFromManagedProperty(self): + def test_catch_exception_from_managed_property(self): """Test catching an exception from a managed property.""" from Python.Test import ExceptionTest from System import OverflowException @@ -193,7 +193,7 @@ def testCatchExceptionFromManagedProperty(self): raise SystemError('failed to catch exception from managed property') - def testCatchExceptionManagedClass(self): + def test_catch_exception_managed_class(self): """Test catching the managed class of an exception.""" from System import OverflowException @@ -204,7 +204,7 @@ def testCatchExceptionManagedClass(self): raise SystemError('failed to catch managed class exception') - def testCatchExceptionPythonClass(self): + def test_catch_exception_python_class(self): """Test catching the python class of an exception.""" from System import OverflowException if PY3: @@ -219,7 +219,7 @@ def testCatchExceptionPythonClass(self): raise SystemError('failed to catch python class exception') - def testCatchExceptionBaseClass(self): + def test_catch_exception_base_class(self): """Test catching the base of an exception.""" from System import OverflowException, ArithmeticException @@ -230,7 +230,7 @@ def testCatchExceptionBaseClass(self): raise SystemError('failed to catch base exception') - def testCatchExceptionNestedBaseClass(self): + def test_catch_exception_nested_base_class(self): """Test catching the nested base of an exception.""" from System import OverflowException, SystemException @@ -241,7 +241,7 @@ def testCatchExceptionNestedBaseClass(self): raise SystemError('failed to catch nested base exception') - def testCatchExceptionWithAssignment(self): + def test_catch_exception_with_assignment(self): """Test catching an exception with assignment.""" from System import OverflowException @@ -251,7 +251,7 @@ def testCatchExceptionWithAssignment(self): e = sys.exc_info()[1] self.assertTrue(isinstance(e, OverflowException)) - def testCatchExceptionUnqualified(self): + def test_catch_exception_unqualified(self): """Test catching an unqualified exception.""" from System import OverflowException @@ -262,14 +262,14 @@ def testCatchExceptionUnqualified(self): raise SystemError('failed to catch unqualified exception') - def testApparentModuleOfException(self): + def test_apparent_module_of_exception(self): """Test the apparent module of an exception.""" from System import Exception, OverflowException self.assertTrue(Exception.__module__ == 'System') self.assertTrue(OverflowException.__module__ == 'System') - def testStrOfException(self): + def test_str_of_exception(self): """Test the str() representation of an exception.""" from System import NullReferenceException from System import Convert, FormatException @@ -286,7 +286,7 @@ def testStrOfException(self): msg = text_type(e).encode("utf8") # fix for international installation self.assertTrue(msg.find(text_type('System.Convert.ToDateTime').encode("utf8")) > -1, msg) - def testPythonCompatOfManagedExceptions(self): + def test_python_compat_of_managed_exceptions(self): """Test if managed exceptions are compatible with Python's implementation """ from System import OverflowException @@ -303,7 +303,7 @@ def testPythonCompatOfManagedExceptions(self): elif PY2: self.assertEqual(repr(e), "OverflowException(u'A simple message',)") - def testExceptionIsInstanceOfSystemObject(self): + def test_exception_is_instance_of_system_object(self): """Test behavior of isinstance(, System.Object).""" # This is an anti-test, in that this is a caveat of the current # implementation. Because exceptions are not allowed to be new-style @@ -330,14 +330,14 @@ def testExceptionIsInstanceOfSystemObject(self): else: self.assertFalse(isinstance(o, Object)) - def testPicklingExceptions(self): + def test_pickling_exceptions(self): exc = System.Exception("test") dumped = pickle.dumps(exc) loaded = pickle.loads(dumped) self.assertEqual(exc.args, loaded.args) - def testChainedExceptions(self): + def test_chained_exceptions(self): # TODO: Why is this test PY3 only? if PY3: from Python.Test import ExceptionTest diff --git a/src/tests/test_field.py b/src/tests/test_field.py index 1a46e1d96..f3ec8b382 100644 --- a/src/tests/test_field.py +++ b/src/tests/test_field.py @@ -9,7 +9,7 @@ class FieldTests(unittest.TestCase): """Test CLR field support.""" - def testPublicInstanceField(self): + def test_public_instance_field(self): """Test public instance fields.""" ob = FieldTest() self.assertTrue(ob.PublicField == 0) @@ -22,7 +22,7 @@ def test(): self.assertRaises(TypeError, test) - def testPublicStaticField(self): + def test_public_static_field(self): """Test public static fields.""" ob = FieldTest() self.assertTrue(FieldTest.PublicStaticField == 0) @@ -44,7 +44,7 @@ def test(): self.assertRaises(TypeError, test) - def testProtectedInstanceField(self): + def test_protected_instance_field(self): """Test protected instance fields.""" ob = FieldTest() self.assertTrue(ob.ProtectedField == 0) @@ -57,7 +57,7 @@ def test(): self.assertRaises(TypeError, test) - def testProtectedStaticField(self): + def test_protected_static_field(self): """Test protected static fields.""" ob = FieldTest() self.assertTrue(FieldTest.ProtectedStaticField == 0) @@ -79,7 +79,7 @@ def test(): self.assertRaises(TypeError, test) - def testReadOnlyInstanceField(self): + def test_read_only_instance_field(self): """Test readonly instance fields.""" self.assertTrue(FieldTest().ReadOnlyField == 0) @@ -93,7 +93,7 @@ def test(): self.assertRaises(TypeError, test) - def testReadOnlyStaticField(self): + def test_read_only_static_field(self): """Test readonly static fields.""" ob = FieldTest() @@ -120,7 +120,7 @@ def test(): self.assertRaises(TypeError, test) - def testConstantField(self): + def test_constant_field(self): """Test const fields.""" ob = FieldTest() @@ -147,7 +147,7 @@ def test(): self.assertRaises(TypeError, test) - def testInternalField(self): + def test_internal_field(self): """Test internal fields.""" def test(): @@ -165,7 +165,7 @@ def test(): self.assertRaises(AttributeError, test) - def testPrivateField(self): + def test_private_field(self): """Test private fields.""" def test(): @@ -183,7 +183,7 @@ def test(): self.assertRaises(AttributeError, test) - def testFieldDescriptorGetSet(self): + def test_field_descriptor_get_set(self): """Test field descriptor get / set.""" # This test ensures that setting an attribute implemented with @@ -206,7 +206,7 @@ def testFieldDescriptorGetSet(self): descriptor = FieldTest.__dict__['PublicStaticField'] self.assertTrue(type(descriptor) != int) - def testFieldDescriptorWrongType(self): + def test_field_descriptor_wrong_type(self): """Test setting a field using a value of the wrong type.""" def test(): @@ -214,7 +214,7 @@ def test(): self.assertRaises(TypeError, test) - def testFieldDescriptorAbuse(self): + def test_field_descriptor_abuse(self): """Test field descriptor abuse.""" desc = FieldTest.__dict__['PublicField'] @@ -228,7 +228,7 @@ def test(): self.assertRaises(TypeError, test) - def testBooleanField(self): + def test_boolean_field(self): """Test boolean fields.""" # change this to true / false later for Python 2.3? ob = FieldTest() @@ -246,7 +246,7 @@ def testBooleanField(self): ob.BooleanField = 0 self.assertTrue(ob.BooleanField == False) - def testSByteField(self): + def test_sbyte_field(self): """Test sbyte fields.""" ob = FieldTest() self.assertTrue(ob.SByteField == 0) @@ -254,7 +254,7 @@ def testSByteField(self): ob.SByteField = 1 self.assertTrue(ob.SByteField == 1) - def testByteField(self): + def test_byte_field(self): """Test byte fields.""" ob = FieldTest() self.assertTrue(ob.ByteField == 0) @@ -262,7 +262,7 @@ def testByteField(self): ob.ByteField = 1 self.assertTrue(ob.ByteField == 1) - def testCharField(self): + def test_char_field(self): """Test char fields.""" ob = FieldTest() self.assertTrue(ob.CharField == u'A') @@ -276,7 +276,7 @@ def testCharField(self): self.assertTrue(ob.CharField == u'C') self.assertTrue(ob.CharField == 'C') - def testInt16Field(self): + def test_int16_field(self): """Test int16 fields.""" ob = FieldTest() self.assertTrue(ob.Int16Field == 0) @@ -284,7 +284,7 @@ def testInt16Field(self): ob.Int16Field = 1 self.assertTrue(ob.Int16Field == 1) - def testInt32Field(self): + def test_int32_field(self): """Test int32 fields.""" ob = FieldTest() self.assertTrue(ob.Int32Field == 0) @@ -292,7 +292,7 @@ def testInt32Field(self): ob.Int32Field = 1 self.assertTrue(ob.Int32Field == 1) - def testInt64Field(self): + def test_int64_field(self): """Test int64 fields.""" ob = FieldTest() self.assertTrue(ob.Int64Field == 0) @@ -300,7 +300,7 @@ def testInt64Field(self): ob.Int64Field = 1 self.assertTrue(ob.Int64Field == 1) - def testUInt16Field(self): + def test_uint16_field(self): """Test uint16 fields.""" ob = FieldTest() self.assertTrue(ob.UInt16Field == 0) @@ -308,7 +308,7 @@ def testUInt16Field(self): ob.UInt16Field = 1 self.assertTrue(ob.UInt16Field == 1) - def testUInt32Field(self): + def test_uint32_field(self): """Test uint32 fields.""" ob = FieldTest() self.assertTrue(ob.UInt32Field == 0) @@ -316,7 +316,7 @@ def testUInt32Field(self): ob.UInt32Field = 1 self.assertTrue(ob.UInt32Field == 1) - def testUInt64Field(self): + def test_uint64_field(self): """Test uint64 fields.""" ob = FieldTest() self.assertTrue(ob.UInt64Field == 0) @@ -324,7 +324,7 @@ def testUInt64Field(self): ob.UInt64Field = 1 self.assertTrue(ob.UInt64Field == 1) - def testSingleField(self): + def test_single_field(self): """Test single fields.""" ob = FieldTest() self.assertTrue(ob.SingleField == 0.0) @@ -332,7 +332,7 @@ def testSingleField(self): ob.SingleField = 1.1 self.assertTrue(ob.SingleField == 1.1) - def testDoubleField(self): + def test_double_field(self): """Test double fields.""" ob = FieldTest() self.assertTrue(ob.DoubleField == 0.0) @@ -340,7 +340,7 @@ def testDoubleField(self): ob.DoubleField = 1.1 self.assertTrue(ob.DoubleField == 1.1) - def testDecimalField(self): + def test_decimal_field(self): """Test decimal fields.""" ob = FieldTest() self.assertTrue(ob.DecimalField == System.Decimal(0)) @@ -348,7 +348,7 @@ def testDecimalField(self): ob.DecimalField = System.Decimal(1) self.assertTrue(ob.DecimalField == System.Decimal(1)) - def testStringField(self): + def test_string_field(self): """Test string fields.""" ob = FieldTest() self.assertTrue(ob.StringField == "spam") @@ -356,7 +356,7 @@ def testStringField(self): ob.StringField = "eggs" self.assertTrue(ob.StringField == "eggs") - def testInterfaceField(self): + def test_interface_field(self): """Test interface fields.""" from Python.Test import Spam, ISpam @@ -369,7 +369,7 @@ def testInterfaceField(self): self.assertTrue(ISpam(ob.SpamField).GetValue() == "eggs") self.assertTrue(ob.SpamField.GetValue() == "eggs") - def testObjectField(self): + def test_object_field(self): """Test ob fields.""" ob = FieldTest() self.assertTrue(ob.ObjectField == None) @@ -383,7 +383,7 @@ def testObjectField(self): ob.ObjectField = None self.assertTrue(ob.ObjectField == None) - def testEnumField(self): + def test_enum_field(self): """Test enum fields.""" from Python.Test import ShortEnum @@ -393,7 +393,7 @@ def testEnumField(self): ob.EnumField = ShortEnum.One self.assertTrue(ob.EnumField == ShortEnum.One) - def testNullableField(self): + def test_nullable_field(self): """Test nullable fields.""" ob = FieldTest() diff --git a/src/tests/test_generic.py b/src/tests/test_generic.py index 536a2bb7f..d4c93c060 100644 --- a/src/tests/test_generic.py +++ b/src/tests/test_generic.py @@ -112,7 +112,7 @@ def _testGenericMethodByType(self, ptype, value, test_type=0): self.assertTrue(result[0] == value) self.assertTrue(result[1] == value) - def testPythonTypeAliasing(self): + def test_python_type_aliasing(self): """Test python type alias support with generics.""" from System.Collections.Generic import Dictionary @@ -166,7 +166,7 @@ def testPythonTypeAliasing(self): dict.Add(True, False) self.assertTrue(dict[True] == False) - def testGenericReferenceType(self): + def test_generic_reference_type(self): """Test usage of generic reference type definitions.""" from Python.Test import GenericTypeDefinition @@ -174,21 +174,21 @@ def testGenericReferenceType(self): self.assertTrue(inst.value1 == "one") self.assertTrue(inst.value2 == 2) - def testGenericValueType(self): + def test_generic_value_type(self): """Test usage of generic value type definitions.""" inst = System.Nullable[System.Int32](10) self.assertTrue(inst.HasValue) self.assertTrue(inst.Value == 10) - def testGenericInterface(self): + def test_generic_interface(self): # TODO NotImplemented pass - def testGenericDelegate(self): + def test_generic_delegate(self): # TODO NotImplemented pass - def testOpenGenericType(self): + def test_open_generic_type(self): """Test behavior of reflected open constructed generic types.""" from Python.Test import DerivedFromOpenGeneric @@ -204,7 +204,7 @@ def test(): self.assertRaises(TypeError, test) - def testDerivedFromOpenGenericType(self): + def test_derived_from_open_generic_type(self): """Test a generic type derived from an open generic type.""" from Python.Test import DerivedFromOpenGeneric @@ -215,7 +215,7 @@ def testDerivedFromOpenGenericType(self): self.assertTrue(inst.value2 == 'two') self.assertTrue(inst.value3 == 'three') - def testGenericTypeNameResolution(self): + def test_generic_type_name_resolution(self): """Test the ability to disambiguate generic type names.""" from Python.Test import GenericNameTest1, GenericNameTest2 @@ -241,7 +241,7 @@ def test(): self.assertTrue(_class().value == 2) self.assertTrue(_class.value == 2) - def testGenericTypeBinding(self): + def test_generic_type_binding(self): """Test argument conversion / binding for generic methods.""" from Python.Test import InterfaceTest, ISayHello1, ShortEnum import System @@ -273,7 +273,7 @@ def testGenericTypeBinding(self): self._testGenericWrapperByType(InterfaceTest, InterfaceTest()) self._testGenericWrapperByType(ISayHello1, InterfaceTest()) - def testGenericMethodBinding(self): + def test_generic_method_binding(self): from Python.Test import GenericMethodTest, GenericStaticMethodTest from System import InvalidOperationException @@ -298,7 +298,7 @@ def test(): self.assertRaises(TypeError, test) - def testGenericMethodTypeHandling(self): + def test_generic_method_type_handling(self): """Test argument conversion / binding for generic methods.""" from Python.Test import InterfaceTest, ISayHello1, ShortEnum import System @@ -333,7 +333,7 @@ def testGenericMethodTypeHandling(self): self._testGenericMethodByType(InterfaceTest, InterfaceTest(), 1) self._testGenericMethodByType(ISayHello1, InterfaceTest(), 1) - def testCorrectOverloadSelection(self): + def test_correct_overload_selection(self): """Test correct overloading selection for common types.""" from System.Drawing import Font @@ -371,7 +371,7 @@ def testCorrectOverloadSelection(self): CSArray = Array.CreateInstance(Byte, 1000) handler = GCHandle.Alloc(CSArray, GCHandleType.Pinned) - def testGenericMethodOverloadSelection(self): + def test_generic_method_overload_selection(self): """Test explicit overload selection with generic methods.""" from Python.Test import GenericMethodTest, GenericStaticMethodTest @@ -452,7 +452,7 @@ def test(): self.assertRaises(TypeError, test) - def testMethodOverloadSelectionWithGenericTypes(self): + def test_method_overload_selection_with_generic_types(self): """Check method overload selection using generic types.""" from Python.Test import ISayHello1, InterfaceTest, ShortEnum from Python.Test import MethodTest, GenericWrapper @@ -587,7 +587,7 @@ def testMethodOverloadSelectionWithGenericTypes(self): self.assertTrue(value[0].value == 0) self.assertTrue(value[1].value == 1) - def testOverloadSelectionWithArraysOfGenericTypes(self): + def test_overload_selection_with_arrays_of_generic_types(self): """Check overload selection using arrays of generic types.""" from Python.Test import ISayHello1, InterfaceTest, ShortEnum from Python.Test import MethodTest, GenericWrapper @@ -770,12 +770,12 @@ def testOverloadSelectionWithArraysOfGenericTypes(self): self.assertTrue(value[0].value.__class__ == inst.__class__) self.assertTrue(value.Length == 2) - def testGenericOverloadSelectionMagicNameOnly(self): + def test_generic_overload_selection_magic_name_only(self): """Test using only __overloads__ to select on type & sig""" # TODO NotImplemented pass - def testNestedGenericClass(self): + def test_nested_generic_class(self): """Check nested generic classes.""" # TODO NotImplemented pass diff --git a/src/tests/test_indexer.py b/src/tests/test_indexer.py index eaa02abd0..daec3d7f7 100644 --- a/src/tests/test_indexer.py +++ b/src/tests/test_indexer.py @@ -10,7 +10,7 @@ class IndexerTests(unittest.TestCase): """Test support for indexer properties.""" - def testPublicIndexer(self): + def test_public_indexer(self): """Test public indexers.""" ob = Test.PublicIndexerTest() @@ -22,7 +22,7 @@ def testPublicIndexer(self): self.assertTrue(ob[10] == None) - def testProtectedIndexer(self): + def test_protected_indexer(self): """Test protected indexers.""" ob = Test.ProtectedIndexerTest() @@ -34,7 +34,7 @@ def testProtectedIndexer(self): self.assertTrue(ob[10] == None) - def testInternalIndexer(self): + def test_internal_indexer(self): """Test internal indexers.""" ob = Test.InternalIndexerTest() @@ -53,7 +53,7 @@ def test(): self.assertRaises(TypeError, test) - def testPrivateIndexer(self): + def test_private_indexer(self): """Test private indexers.""" ob = Test.PrivateIndexerTest() @@ -72,7 +72,7 @@ def test(): self.assertRaises(TypeError, test) - def testBooleanIndexer(self): + def test_boolean_indexer(self): """Test boolean indexers.""" ob = Test.BooleanIndexerTest() @@ -91,7 +91,7 @@ def testBooleanIndexer(self): ob[True] = "true" self.assertTrue(ob[True] == "true") - def testByteIndexer(self): + def test_byte_indexer(self): """Test byte indexers.""" ob = Test.ByteIndexerTest() max = 255 @@ -117,7 +117,7 @@ def test(): self.assertRaises(TypeError, test) - def testSByteIndexer(self): + def test_sbyte_indexer(self): """Test sbyte indexers.""" ob = Test.SByteIndexerTest() max = 127 @@ -143,7 +143,7 @@ def test(): self.assertRaises(TypeError, test) - def testCharIndexer(self): + def test_char_indexer(self): """Test char indexers.""" ob = Test.CharIndexerTest() max = unichr(65535) @@ -169,7 +169,7 @@ def test(): self.assertRaises(TypeError, test) - def testInt16Indexer(self): + def test_int16_indexer(self): """Test Int16 indexers.""" ob = Test.Int16IndexerTest() max = 32767 @@ -195,7 +195,7 @@ def test(): self.assertRaises(TypeError, test) - def testInt32Indexer(self): + def test_int32_indexer(self): """Test Int32 indexers.""" ob = Test.Int32IndexerTest() max = 2147483647 @@ -221,7 +221,7 @@ def test(): self.assertRaises(TypeError, test) - def testInt64Indexer(self): + def test_int64_indexer(self): """Test Int64 indexers.""" ob = Test.Int64IndexerTest() max = long(9223372036854775807) @@ -247,7 +247,7 @@ def test(): self.assertRaises(TypeError, test) - def testUInt16Indexer(self): + def test_uint16_indexer(self): """Test UInt16 indexers.""" ob = Test.UInt16IndexerTest() max = 65535 @@ -273,7 +273,7 @@ def test(): self.assertRaises(TypeError, test) - def testUInt32Indexer(self): + def test_uint32_indexer(self): """Test UInt32 indexers.""" ob = Test.UInt32IndexerTest() max = long(4294967295) @@ -299,7 +299,7 @@ def test(): self.assertRaises(TypeError, test) - def testUInt64Indexer(self): + def test_uint64_indexer(self): """Test UInt64 indexers.""" ob = Test.UInt64IndexerTest() max = long(18446744073709551615) @@ -325,7 +325,7 @@ def test(): self.assertRaises(TypeError, test) - def testSingleIndexer(self): + def test_single_indexer(self): """Test Single indexers.""" ob = Test.SingleIndexerTest() max = 3.402823e38 @@ -351,7 +351,7 @@ def test(): self.assertRaises(TypeError, test) - def testDoubleIndexer(self): + def test_double_indexer(self): """Test Double indexers.""" ob = Test.DoubleIndexerTest() max = 1.7976931348623157e308 @@ -377,7 +377,7 @@ def test(): self.assertRaises(TypeError, test) - def testDecimalIndexer(self): + def test_decimal_indexer(self): """Test Decimal indexers.""" ob = Test.DecimalIndexerTest() @@ -405,7 +405,7 @@ def test(): self.assertRaises(TypeError, test) - def testStringIndexer(self): + def test_string_indexer(self): """Test String indexers.""" ob = Test.StringIndexerTest() @@ -436,7 +436,7 @@ def test(): self.assertRaises(TypeError, test) - def testEnumIndexer(self): + def test_enum_indexer(self): """Test enum indexers.""" ob = Test.EnumIndexerTest() @@ -465,7 +465,7 @@ def test(): self.assertRaises(TypeError, test) - def testObjectIndexer(self): + def test_object_indexer(self): """Test ob indexers.""" ob = Test.ObjectIndexerTest() @@ -499,7 +499,7 @@ class eggs(object): self.assertRaises(TypeError, test) - def testInterfaceIndexer(self): + def test_interface_indexer(self): """Test interface indexers.""" ob = Test.InterfaceIndexerTest() @@ -526,7 +526,7 @@ def test(): self.assertRaises(TypeError, test) - def testTypedIndexer(self): + def test_typed_indexer(self): """Test typed indexers.""" ob = Test.TypedIndexerTest() @@ -553,7 +553,7 @@ def test(): self.assertRaises(TypeError, test) - def testMultiArgIndexer(self): + def test_multi_arg_indexer(self): """Test indexers that take multiple index arguments.""" ob = Test.MultiArgIndexerTest() @@ -577,7 +577,7 @@ def test(): self.assertRaises(TypeError, test) - def testMultiTypeIndexer(self): + def test_multi_type_indexer(self): """Test indexers that take multiple indices of different types.""" ob = Test.MultiTypeIndexerTest() spam = Test.Spam("spam") @@ -600,7 +600,7 @@ def test(): self.assertRaises(TypeError, test) - def testMultiDefaultKeyIndexer(self): + def test_multi_default_key_indexer(self): """Test indexers that take multiple indices with a default key arguments.""" # default argument is 2 in the MultiDefaultKeyIndexerTest object ob = Test.MultiDefaultKeyIndexerTest() @@ -610,7 +610,7 @@ def testMultiDefaultKeyIndexer(self): ob[1] = "one nine spam" self.assertTrue(ob[1, 2] == "one nine spam") - def testIndexerWrongKeyType(self): + def test_indexer_wrong_key_type(self): """Test calling an indexer using a key of the wrong type.""" def test(): @@ -625,7 +625,7 @@ def test(): self.assertRaises(TypeError, test) - def testIndexerWrongValueType(self): + def test_indexer_wrong_value_type(self): """Test calling an indexer using a value of the wrong type.""" def test(): @@ -634,7 +634,7 @@ def test(): self.assertRaises(TypeError, test) - def testUnboundIndexer(self): + def test_unbound_indexer(self): """Test calling an unbound indexer.""" ob = Test.PublicIndexerTest() @@ -646,7 +646,7 @@ def testUnboundIndexer(self): self.assertTrue(ob[10] == None) - def testIndexerAbuse(self): + def test_indexer_abuse(self): """Test indexer abuse.""" _class = Test.PublicIndexerTest ob = Test.PublicIndexerTest() diff --git a/src/tests/test_interface.py b/src/tests/test_interface.py index 6bc05fd5f..d47c6279a 100644 --- a/src/tests/test_interface.py +++ b/src/tests/test_interface.py @@ -10,7 +10,7 @@ class InterfaceTests(unittest.TestCase): """Test CLR interface support.""" - def testInterfaceStandardAttrs(self): + def test_interface_standard_attrs(self): """Test standard class attributes.""" from Python.Test import IPublicInterface @@ -18,7 +18,7 @@ def testInterfaceStandardAttrs(self): self.assertTrue(IPublicInterface.__module__ == 'Python.Test') self.assertTrue(type(IPublicInterface.__dict__) == DictProxyType) - def testGlobalInterfaceVisibility(self): + def test_global_interface_visibility(self): """Test visibility of module-level interfaces.""" from Python.Test import IPublicInterface @@ -34,7 +34,7 @@ def test(): self.assertRaises(AttributeError, test) - def testNestedInterfaceVisibility(self): + def test_nested_interface_visibility(self): """Test visibility of nested interfaces.""" from Python.Test import InterfaceTest @@ -54,7 +54,7 @@ def test(): self.assertRaises(AttributeError, test) - def testExplicitCastToInterface(self): + def test_explicit_cast_to_interface(self): """Test explicit cast to an interface.""" from Python.Test import InterfaceTest diff --git a/src/tests/test_method.py b/src/tests/test_method.py index 0430bb019..677a69b52 100644 --- a/src/tests/test_method.py +++ b/src/tests/test_method.py @@ -11,7 +11,7 @@ class MethodTests(unittest.TestCase): """Test CLR method support.""" - def testInstanceMethodDescriptor(self): + def test_instance_method_descriptor(self): """Test instance method descriptor behavior.""" def test(): @@ -34,7 +34,7 @@ def test(): self.assertRaises(AttributeError, test) - def testStaticMethodDescriptor(self): + def test_static_method_descriptor(self): """Test static method descriptor behavior.""" def test(): @@ -57,30 +57,30 @@ def test(): self.assertRaises(AttributeError, test) - def testPublicInstanceMethod(self): + def test_public_instance_method(self): """Test public instance method visibility.""" ob = MethodTest() self.assertTrue(ob.PublicMethod() == "public") - def testPublicStaticMethod(self): + def test_public_static_method(self): """Test public static method visibility.""" ob = MethodTest() self.assertTrue(MethodTest.PublicStaticMethod() == "public static") self.assertTrue(ob.PublicStaticMethod() == "public static") - def testProtectedInstanceMethod(self): + def test_protected_instance_method(self): """Test protected instance method visibility.""" ob = MethodTest() self.assertTrue(ob.ProtectedMethod() == "protected") - def testProtectedStaticMethod(self): + def test_protected_static_method(self): """Test protected static method visibility.""" ob = MethodTest() result = "protected static" self.assertTrue(MethodTest.ProtectedStaticMethod() == result) self.assertTrue(ob.ProtectedStaticMethod() == result) - def testInternalMethod(self): + def test_internal_method(self): """Test internal method visibility.""" def test(): @@ -103,7 +103,7 @@ def test(): self.assertRaises(AttributeError, test) - def testPrivateMethod(self): + def test_private_method(self): """Test private method visibility.""" def test(): @@ -126,7 +126,7 @@ def test(): self.assertRaises(AttributeError, test) - def testUnboundManagedMethodCall(self): + def test_unbound_managed_method_call(self): """Test calling unbound managed methods.""" from Python.Test import MethodTestSub @@ -147,7 +147,7 @@ def test(): self.assertRaises(TypeError, test) - def testOverloadedMethodInheritance(self): + def test_overloaded_method_inheritance(self): """Test that overloads are inherited properly.""" from Python.Test import MethodTestSub @@ -165,7 +165,7 @@ def test(): self.assertTrue(ob.PublicMethod("echo") == "echo") - def testMethodDescriptorAbuse(self): + def test_method_descriptor_abuse(self): """Test method descriptor abuse.""" desc = MethodTest.__dict__['PublicMethod'] @@ -179,7 +179,7 @@ def test(): self.assertRaises(AttributeError, test) - def testMethodDocstrings(self): + def test_method_docstrings(self): """Test standard method docstring generation""" method = MethodTest.GetType value = 'System.Type GetType()' @@ -189,7 +189,7 @@ def testMethodDocstrings(self): # Tests of specific argument and result conversion scenarios # ====================================================================== - def testMethodCallEnumConversion(self): + def test_method_call_enum_conversion(self): """Test enum conversion in method call.""" from System import TypeCode @@ -197,7 +197,7 @@ def testMethodCallEnumConversion(self): r = ob.TestEnumConversion(TypeCode.Int32) self.assertTrue(r == TypeCode.Int32) - def testMethodCallFlagsConversion(self): + def test_method_call_flags_conversion(self): """Test flags conversion in method call.""" from System.IO import FileAccess @@ -206,7 +206,7 @@ def testMethodCallFlagsConversion(self): r = ob.TestFlagsConversion(flags) self.assertTrue(r == flags) - def testMethodCallStructConversion(self): + def test_method_call_struct_conversion(self): """Test struct conversion in method call.""" from System import Guid @@ -216,7 +216,7 @@ def testMethodCallStructConversion(self): r = ob.TestStructConversion(guid) self.assertTrue(r.ToString() == temp) - def testSubclassInstanceConversion(self): + def test_subclass_instance_conversion(self): """Test subclass instance conversion in method call.""" class TestSubException(System.Exception): @@ -227,7 +227,7 @@ class TestSubException(System.Exception): result = ob.TestSubclassConversion(instance) self.assertTrue(isinstance(result, System.Exception)) - def testNullArrayConversion(self): + def test_null_array_conversion(self): """Test null array conversion in method call.""" from System import Type @@ -235,7 +235,7 @@ def testNullArrayConversion(self): r = ob.TestNullArrayConversion(None) self.assertTrue(r == None) - def testStringParamsArgs(self): + def test_string_params_args(self): """Test use of string params.""" result = MethodTest.TestStringParamsArg('one', 'two', 'three') self.assertEqual(result.Length, 3) @@ -250,7 +250,7 @@ def testStringParamsArgs(self): self.assertTrue(result[1] == 'two') self.assertTrue(result[2] == 'three') - def testObjectParamsArgs(self): + def test_object_params_args(self): """Test use of object params.""" result = MethodTest.TestObjectParamsArg('one', 'two', 'three') self.assertEqual(len(result), 3, result) @@ -264,7 +264,7 @@ def testObjectParamsArgs(self): self.assertTrue(result[1] == 'two') self.assertTrue(result[2] == 'three') - def testValueParamsArgs(self): + def test_value_params_args(self): """Test use of value type params.""" result = MethodTest.TestValueParamsArg(1, 2, 3) self.assertEqual(len(result), 3) @@ -278,12 +278,12 @@ def testValueParamsArgs(self): self.assertTrue(result[1] == 2) self.assertTrue(result[2] == 3) - def testNonParamsArrayInLastPlace(self): + def test_non_params_array_in_last_place(self): """Test overload resolution with of non-"params" array as last parameter.""" result = MethodTest.TestNonParamsArrayInLastPlace(1, 2, 3) self.assertTrue(result) - def testStringOutParams(self): + def test_string_out_params(self): """Test use of string out-parameters.""" result = MethodTest.TestStringOutParams("hi", "there") self.assertTrue(type(result) == type(())) @@ -297,7 +297,7 @@ def testStringOutParams(self): self.assertTrue(result[0] == True) self.assertTrue(result[1] == "output string") - def testStringRefParams(self): + def test_string_ref_params(self): """Test use of string byref parameters.""" result = MethodTest.TestStringRefParams("hi", "there") self.assertTrue(type(result) == type(())) @@ -311,7 +311,7 @@ def testStringRefParams(self): self.assertTrue(result[0] == True) self.assertTrue(result[1] == "output string") - def testValueOutParams(self): + def test_value_out_params(self): """Test use of value type out-parameters.""" result = MethodTest.TestValueOutParams("hi", 1) self.assertTrue(type(result) == type(())) @@ -325,7 +325,7 @@ def test(): # None cannot be converted to a value type like int, long, etc. self.assertRaises(TypeError, test) - def testValueRefParams(self): + def test_value_ref_params(self): """Test use of value type byref parameters.""" result = MethodTest.TestValueRefParams("hi", 1) self.assertTrue(type(result) == type(())) @@ -339,7 +339,7 @@ def test(): # None cannot be converted to a value type like int, long, etc. self.assertRaises(TypeError, test) - def testObjectOutParams(self): + def test_object_out_params(self): """Test use of object out-parameters.""" result = MethodTest.TestObjectOutParams("hi", MethodTest()) self.assertTrue(type(result) == type(())) @@ -353,7 +353,7 @@ def testObjectOutParams(self): self.assertTrue(result[0] == True) self.assertTrue(isinstance(result[1], System.Exception)) - def testObjectRefParams(self): + def test_object_ref_params(self): """Test use of object byref parameters.""" result = MethodTest.TestObjectRefParams("hi", MethodTest()) self.assertTrue(type(result) == type(())) @@ -367,7 +367,7 @@ def testObjectRefParams(self): self.assertTrue(result[0] == True) self.assertTrue(isinstance(result[1], System.Exception)) - def testStructOutParams(self): + def test_struct_out_params(self): """Test use of struct out-parameters.""" result = MethodTest.TestStructOutParams("hi", System.Guid.NewGuid()) self.assertTrue(type(result) == type(())) @@ -381,7 +381,7 @@ def test(): # None cannot be converted to a value type like a struct self.assertRaises(TypeError, test) - def testStructRefParams(self): + def test_struct_ref_params(self): """Test use of struct byref parameters.""" result = MethodTest.TestStructRefParams("hi", System.Guid.NewGuid()) self.assertTrue(type(result) == type(())) @@ -395,7 +395,7 @@ def test(): # None cannot be converted to a value type like a struct self.assertRaises(TypeError, test) - def testVoidSingleOutParam(self): + def test_void_single_out_param(self): """Test void method with single out-parameter.""" result = MethodTest.TestVoidSingleOutParam(9) self.assertTrue(result == 42) @@ -406,7 +406,7 @@ def test(): # None cannot be converted to a value type self.assertRaises(TypeError, test) - def testVoidSingleRefParam(self): + def test_void_single_ref_param(self): """Test void method with single ref-parameter.""" result = MethodTest.TestVoidSingleRefParam(9) self.assertTrue(result == 42) @@ -417,12 +417,12 @@ def test(): # None cannot be converted to a value type self.assertRaises(TypeError, test) - def testSingleDefaultParam(self): + def test_single_default_param(self): """Test void method with single ref-parameter.""" result = MethodTest.TestSingleDefaultParam() self.assertTrue(result == 5) - def testOneArgAndTwoDefaultParam(self): + def test_one_arg_and_two_default_param(self): """Test void method with single ref-parameter.""" result = MethodTest.TestOneArgAndTwoDefaultParam(11) self.assertTrue(result == 22) @@ -433,12 +433,12 @@ def testOneArgAndTwoDefaultParam(self): result = MethodTest.TestOneArgAndTwoDefaultParam(20) self.assertTrue(result == 31) - def testTwoDefaultParam(self): + def test_two_default_param(self): """Test void method with single ref-parameter.""" result = MethodTest.TestTwoDefaultParam() self.assertTrue(result == 11) - def testExplicitSelectionWithOutModifier(self): + def test_explicit_selection_with_out_modifier(self): """Check explicit overload selection with out modifiers.""" refstr = System.String("").GetType().MakeByRefType() result = MethodTest.TestStringOutParams.__overloads__[str, refstr]( @@ -457,7 +457,7 @@ def testExplicitSelectionWithOutModifier(self): self.assertTrue(result[0] == True) self.assertTrue(result[1] == "output string") - def testExplicitSelectionWithRefModifier(self): + def test_explicit_selection_with_ref_modifier(self): """Check explicit overload selection with ref modifiers.""" refstr = System.String("").GetType().MakeByRefType() result = MethodTest.TestStringRefParams.__overloads__[str, refstr]( @@ -476,7 +476,7 @@ def testExplicitSelectionWithRefModifier(self): self.assertTrue(result[0] == True) self.assertTrue(result[1] == "output string") - def testExplicitOverloadSelection(self): + def test_explicit_overload_selection(self): """Check explicit overload selection using [] syntax.""" from Python.Test import ISayHello1, InterfaceTest, ShortEnum from System import Array @@ -580,7 +580,7 @@ def testExplicitOverloadSelection(self): value = MethodTest.Overloaded.__overloads__[int, str](1, "one") self.assertTrue(value == 1) - def testOverloadSelectionWithArrayTypes(self): + def test_overload_selection_with_array_types(self): """Check overload selection using array types.""" from Python.Test import ISayHello1, InterfaceTest, ShortEnum from System import Array @@ -732,7 +732,7 @@ def testOverloadSelectionWithArrayTypes(self): self.assertTrue(value[0].__class__ == inst.__class__) self.assertTrue(value[1].__class__ == inst.__class__) - def testExplicitOverloadSelectionFailure(self): + def test_explicit_overload_selection_failure(self): """Check that overload selection fails correctly.""" def test(): @@ -757,7 +757,7 @@ def test(): self.assertRaises(TypeError, test) - def testWeCanBindToEncodingGetString(self): + def test_we_can_bind_to_encoding_get_string(self): """Check that we can bind to the Encoding.GetString method with variables.""" from System.Text import Encoding diff --git a/src/tests/test_module.py b/src/tests/test_module.py index 4748c0497..998124d67 100644 --- a/src/tests/test_module.py +++ b/src/tests/test_module.py @@ -16,21 +16,21 @@ class ModuleTests(unittest.TestCase): """Test CLR modules and the CLR import hook.""" - def testAAAImportHookWorks(self): + def test_import_hook_works(self): """Test that the import hook works correctly both using the included runtime and an external runtime. This must be the first test run in the unit tests!""" from System import String - def test000importClr(self): + def test_import_clr(self): import clr self.assertTrue(isCLRRootModule(clr)) - def testVersionClr(self): + def test_version_clr(self): import clr self.assertTrue(clr.__version__ >= "2.2.0") - def testPreloadVar(self): + def test_preload_var(self): import clr self.assertTrue(clr.getPreload() is False, clr.getPreload()) clr.setPreload(False) @@ -49,7 +49,7 @@ def testPreloadVar(self): finally: clr.setPreload(False) - def testModuleInterface(self): + def test_module_interface(self): """Test the interface exposed by CLR module objects.""" import System self.assertEquals(type(System.__dict__), type({})) @@ -63,7 +63,7 @@ def testModuleInterface(self): self.assertTrue(isCLRClass(System.String)) self.assertTrue(isCLRClass(System.Int32)) - def testSimpleImport(self): + def test_simple_import(self): """Test simple import.""" import System self.assertTrue(isCLRModule(System)) @@ -82,7 +82,7 @@ def testSimpleImport(self): self.assertTrue(type(httplib) == types.ModuleType) self.assertTrue(httplib.__name__ == 'httplib') - def testSimpleImportWithAlias(self): + def test_simple_import_with_alias(self): """Test simple import with aliasing.""" import System as mySystem self.assertTrue(isCLRModule(mySystem)) @@ -101,7 +101,7 @@ def testSimpleImportWithAlias(self): self.assertTrue(type(myHttplib) == types.ModuleType) self.assertTrue(myHttplib.__name__ == 'httplib') - def testDottedNameImport(self): + def test_dotted_name_import(self): """Test dotted-name import.""" import System.Reflection self.assertTrue(isCLRModule(System.Reflection)) @@ -111,7 +111,7 @@ def testDottedNameImport(self): self.assertTrue(type(xml.dom) == types.ModuleType) self.assertTrue(xml.dom.__name__ == 'xml.dom') - def testMultipleDottedNameImport(self): + def test_multiple_dotted_name_import(self): """Test an import bug with multiple dotted imports.""" import System.Data self.assertTrue(isCLRModule(System.Data)) @@ -120,7 +120,7 @@ def testMultipleDottedNameImport(self): self.assertTrue(isCLRModule(System.Data)) self.assertTrue(System.Data.__name__ == 'System.Data') - def testDottedNameImportWithAlias(self): + def test_dotted_name_import_with_alias(self): """Test dotted-name import with aliasing.""" import System.Reflection as SysRef self.assertTrue(isCLRModule(SysRef)) @@ -130,7 +130,7 @@ def testDottedNameImportWithAlias(self): self.assertTrue(type(myDom) == types.ModuleType) self.assertTrue(myDom.__name__ == 'xml.dom') - def testSimpleImportFrom(self): + def test_simple_import_from(self): """Test simple 'import from'.""" from System import Reflection self.assertTrue(isCLRModule(Reflection)) @@ -140,7 +140,7 @@ def testSimpleImportFrom(self): self.assertTrue(type(dom) == types.ModuleType) self.assertTrue(dom.__name__ == 'xml.dom') - def testSimpleImportFromWithAlias(self): + def test_simple_import_from_with_alias(self): """Test simple 'import from' with aliasing.""" from System import Collections as Coll self.assertTrue(isCLRModule(Coll)) @@ -150,7 +150,7 @@ def testSimpleImportFromWithAlias(self): self.assertTrue(type(myDom) == types.ModuleType) self.assertTrue(myDom.__name__ == 'xml.dom') - def testDottedNameImportFrom(self): + def test_dotted_name_import_from(self): """Test dotted-name 'import from'.""" from System.Collections import Specialized self.assertTrue(isCLRModule(Specialized)) @@ -170,7 +170,7 @@ def testDottedNameImportFrom(self): self.assertTrue(type(PullDOM) == ClassType) self.assertTrue(PullDOM.__name__ == 'PullDOM') - def testDottedNameImportFromWithAlias(self): + def test_dotted_name_import_from_with_alias(self): """Test dotted-name 'import from' with aliasing.""" from System.Collections import Specialized as Spec self.assertTrue(isCLRModule(Spec)) @@ -188,7 +188,7 @@ def testDottedNameImportFromWithAlias(self): self.assertTrue(type(myPullDOM) == ClassType) self.assertTrue(myPullDOM.__name__ == 'PullDOM') - def testFromModuleImportStar(self): + def test_from_module_import_star(self): """Test from module import * behavior.""" count = len(locals().keys()) m = __import__('System.Xml', globals(), locals(), ['*']) @@ -196,7 +196,7 @@ def testFromModuleImportStar(self): self.assertTrue(isCLRModule(m)) self.assertTrue(len(locals().keys()) > count + 1) - def testImplicitAssemblyLoad(self): + def test_implicit_assembly_load(self): """Test implicit assembly loading via import.""" with warnings.catch_warnings(record=True) as w: warnings.simplefilter("always") @@ -218,7 +218,7 @@ def testImplicitAssemblyLoad(self): self.assertTrue(Form.__name__ == 'Form') self.assertEqual(len(w), 0) - def testExplicitAssemblyLoad(self): + def test_explicit_assembly_load(self): """Test explicit assembly loading using standard CLR tools.""" from System.Reflection import Assembly import System, sys @@ -232,7 +232,7 @@ def testExplicitAssemblyLoad(self): assembly = Assembly.LoadWithPartialName('SpamSpamSpamSpamEggsAndSpam') self.assertTrue(assembly == None) - def testImplicitLoadAlreadyValidNamespace(self): + def test_implicit_load_already_valid_namespace(self): """Test implicit assembly load over an already valid namespace.""" # In this case, the mscorlib assembly (loaded by default) defines # a number of types in the System namespace. There is also a System @@ -243,7 +243,7 @@ def testImplicitLoadAlreadyValidNamespace(self): import System self.assertTrue(isCLRClass(System.UriBuilder)) - def testImportNonExistantModule(self): + def test_import_non_existant_module(self): """Test import failure for a non-existant module.""" def test(): @@ -251,13 +251,13 @@ def test(): self.assertTrue(ImportError, test) - def testLookupNoNamespaceType(self): + def test_lookup_no_namespace_type(self): """Test lookup of types without a qualified namespace.""" import Python.Test import clr self.assertTrue(isCLRClass(clr.NoNamespaceType)) - def testModuleLookupRecursion(self): + def test_module_lookup_recursion(self): """Test for recursive lookup handling.""" def test1(): @@ -271,7 +271,7 @@ def test2(): self.assertTrue(AttributeError, test2) - def testModuleGetAttr(self): + def test_module_get_attr(self): """Test module getattr behavior.""" import System @@ -291,7 +291,7 @@ def test(): self.assertTrue(TypeError, test) - def testModuleAttrAbuse(self): + def test_module_attr_abuse(self): """Test handling of attempts to set module attributes.""" # It would be safer to use a dict-proxy as the __dict__ for CLR @@ -305,7 +305,7 @@ def test(): self.assertTrue(test()) - def testModuleTypeAbuse(self): + def test_module_type_abuse(self): """Test handling of attempts to break the module type.""" import System mtype = type(System) @@ -325,7 +325,7 @@ def test(): self.assertTrue(TypeError, test) - def test_ClrListAssemblies(self): + def test_clr_list_assemblies(self): from clr import ListAssemblies verbose = list(ListAssemblies(True)) short = list(ListAssemblies(False)) @@ -334,7 +334,7 @@ def test_ClrListAssemblies(self): self.assertTrue(u'Culture=' in verbose[0]) self.assertTrue(u'Version=' in verbose[0]) - def test_ClrAddReference(self): + def test_clr_add_reference(self): from clr import AddReference from System.IO import FileNotFoundException for name in ("System", "Python.Runtime"): @@ -345,7 +345,7 @@ def test_ClrAddReference(self): self.assertRaises(FileNotFoundException, AddReference, "somethingtotallysilly") - def test_AssemblyLoadThreadSafety(self): + def test_assembly_load_thread_safety(self): import time from Python.Test import ModuleTest # spin up .NET thread which loads assemblies and triggers AppDomain.AssemblyLoad event diff --git a/src/tests/test_property.py b/src/tests/test_property.py index b0676f6b1..d8d967658 100644 --- a/src/tests/test_property.py +++ b/src/tests/test_property.py @@ -8,7 +8,7 @@ class PropertyTests(unittest.TestCase): """Test CLR property support.""" - def testPublicInstanceProperty(self): + def test_public_instance_property(self): """Test public instance properties.""" ob = PropertyTest() @@ -21,7 +21,7 @@ def test(): self.assertRaises(TypeError, test) - def testPublicStaticProperty(self): + def test_public_static_property(self): """Test public static properties.""" ob = PropertyTest() @@ -43,7 +43,7 @@ def test(): self.assertRaises(TypeError, test) - def testProtectedInstanceProperty(self): + def test_protected_instance_property(self): """Test protected instance properties.""" ob = PropertyTest() @@ -56,7 +56,7 @@ def test(): self.assertRaises(TypeError, test) - def testProtectedStaticProperty(self): + def test_protected_static_property(self): """Test protected static properties.""" ob = PropertyTest() @@ -78,7 +78,7 @@ def test(): self.assertRaises(TypeError, test) - def testInternalProperty(self): + def test_internal_property(self): """Test internal properties.""" def test(): @@ -96,7 +96,7 @@ def test(): self.assertRaises(AttributeError, test) - def testPrivateProperty(self): + def test_private_property(self): """Test private properties.""" def test(): @@ -114,7 +114,7 @@ def test(): self.assertRaises(AttributeError, test) - def testPropertyDescriptorGetSet(self): + def test_property_descriptor_get_set(self): """Test property descriptor get / set.""" # This test ensures that setting an attribute implemented with @@ -137,7 +137,7 @@ def testPropertyDescriptorGetSet(self): descriptor = PropertyTest.__dict__['PublicStaticProperty'] self.assertTrue(type(descriptor) != int) - def testPropertyDescriptorWrongType(self): + def test_property_descriptor_wrong_type(self): """Test setting a property using a value of the wrong type.""" def test(): @@ -146,7 +146,7 @@ def test(): self.assertTrue(TypeError, test) - def testPropertyDescriptorAbuse(self): + def test_property_descriptor_abuse(self): """Test property descriptor abuse.""" desc = PropertyTest.__dict__['PublicProperty'] @@ -160,7 +160,7 @@ def test(): self.assertRaises(TypeError, test) - def testInterfaceProperty(self): + def test_interface_property(self): """Test properties of interfaces. Added after a bug report that an IsAbstract check was inappropriate and prevented use of properties when only the interface is known.""" diff --git a/src/tests/test_subclass.py b/src/tests/test_subclass.py index 444d0a116..a1caa27a9 100644 --- a/src/tests/test_subclass.py +++ b/src/tests/test_subclass.py @@ -69,7 +69,7 @@ def OnTestEvent(self, value): class SubClassTests(unittest.TestCase): """Test subclassing managed types""" - def testBaseClass(self): + def test_base_class(self): """Test base class managed type""" ob = SubClassTest() self.assertEqual(ob.foo(), "foo") @@ -80,7 +80,7 @@ def testBaseClass(self): self.assertEqual(list(ob.return_list()), ["a", "b", "c"]) self.assertEqual(list(SubClassTest.test_list(ob)), ["a", "b", "c"]) - def testInterface(self): + def test_interface(self): """Test python classes can derive from C# interfaces""" ob = InterfaceTestClass() self.assertEqual(ob.foo(), "InterfaceTestClass") @@ -91,7 +91,7 @@ def testInterface(self): x = TestFunctions.pass_through(ob) self.assertEqual(id(x), id(ob)) - def testDerivedClass(self): + def test_derived_class(self): """Test python class derived from managed type""" ob = DerivedClass() self.assertEqual(ob.foo(), "DerivedClass") @@ -107,7 +107,7 @@ def testDerivedClass(self): x = TestFunctions.pass_through(ob) self.assertEqual(id(x), id(ob)) - def testCreateInstance(self): + def test_create_instance(self): """Test derived instances can be created from managed code""" ob = TestFunctions.create_instance(DerivedClass) self.assertEqual(ob.foo(), "DerivedClass") @@ -128,7 +128,7 @@ def testCreateInstance(self): y = TestFunctions.pass_through(ob2) self.assertEqual(id(y), id(ob2)) - def testEvents(self): + def test_events(self): class EventHandler(object): def handler(self, x, args): self.value = args.value diff --git a/src/tests/test_suite/test_callback.py b/src/tests/test_suite/test_callback.py index 7a5e473be..412a27a66 100644 --- a/src/tests/test_suite/test_callback.py +++ b/src/tests/test_suite/test_callback.py @@ -10,7 +10,7 @@ def simpleDefaultArg(arg='test'): class CallbackTests(unittest.TestCase): """Test that callbacks from C# into python work.""" - def testDefaultForNull(self): + def test_default_for_null(self): """Test that C# can use null for an optional python argument""" from Python.Test import CallbackTest @@ -19,7 +19,7 @@ def testDefaultForNull(self): pythonRetVal = simpleDefaultArg(None) self.assertEquals(retVal, pythonRetVal) - def testDefaultForNone(self): + def test_default_for_none(self): """Test that C# can use no argument for an optional python argument""" from Python.Test import CallbackTest diff --git a/src/tests/test_suite/test_import.py b/src/tests/test_suite/test_import.py index f3ffbc870..baea6d5cf 100644 --- a/src/tests/test_suite/test_import.py +++ b/src/tests/test_suite/test_import.py @@ -6,7 +6,7 @@ class ImportTests(unittest.TestCase): """Test the import statement.""" - def testRelativeMissingImport(self): + def test_relative_missing_import(self): """Test that a relative missing import doesn't crash. Some modules use this to check if a package is installed. Relative import in the site-packages folder""" diff --git a/src/tests/test_suite/test_recursive_types.py b/src/tests/test_suite/test_recursive_types.py index 32bcad26e..a213937a5 100644 --- a/src/tests/test_suite/test_recursive_types.py +++ b/src/tests/test_suite/test_recursive_types.py @@ -6,7 +6,7 @@ class RecursiveTypesTests(unittest.TestCase): """Test if interop with recursive type inheritance works.""" - def testRecursiveTypeCreation(self): + def test_recursive_type_creation(self): """Test that a recursive types don't crash with a StackOverflowException""" from Python.Test import RecursiveInheritance diff --git a/src/tests/test_thread.py b/src/tests/test_thread.py index 5f395d9aa..0f947933a 100644 --- a/src/tests/test_thread.py +++ b/src/tests/test_thread.py @@ -18,7 +18,7 @@ def dprint(msg): class ThreadTests(unittest.TestCase): """Test CLR bridge threading and GIL handling.""" - def testSimpleCallbackToPython(self): + def test_simple_callback_to_python(self): """Test a call to managed code that then calls back into Python.""" from Python.Test import ThreadTest @@ -27,7 +27,7 @@ def testSimpleCallbackToPython(self): self.assertTrue(result == "spam") dprint("thread %s SimpleCallBack ret" % thread.get_ident()) - def testDoubleCallbackToPython(self): + def test_double_callback_to_python(self): """Test a call to managed code that then calls back into Python that then calls managed code that then calls Python again.""" from Python.Test import ThreadTest @@ -37,7 +37,7 @@ def testDoubleCallbackToPython(self): self.assertTrue(result == "spam") dprint("thread %s DoubleCallBack ret" % thread.get_ident()) - def testPythonThreadCallsToCLR(self): + def test_python_thread_calls_to_clr(self): """Test calls by Python-spawned threads into managed code.""" # This test is very likely to hang if something is wrong ;) import System From 2ef30414c88bec9361d16d44223a11c122517a4f Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sun, 22 Jan 2017 00:13:43 -0700 Subject: [PATCH 08/13] Refactor assertRaises test_exceptions: Add exc_info test & fix Exception nameclash --- src/tests/test_array.py | 324 +++++++--------------------- src/tests/test_class.py | 19 +- src/tests/test_compat.py | 31 +-- src/tests/test_conversion.py | 304 +++++++------------------- src/tests/test_delegate.py | 36 +--- src/tests/test_enum.py | 32 +-- src/tests/test_event.py | 84 ++------ src/tests/test_exceptions.py | 188 +++++++--------- src/tests/test_field.py | 108 +++------- src/tests/test_generic.py | 28 +-- src/tests/test_indexer.py | 200 +++++------------ src/tests/test_interface.py | 18 +- src/tests/test_method.py | 124 +++-------- src/tests/test_module.py | 39 +--- src/tests/test_property.py | 72 ++----- src/tests/test_suite/test_import.py | 4 +- 16 files changed, 443 insertions(+), 1168 deletions(-) diff --git a/src/tests/test_array.py b/src/tests/test_array.py index b12c785e7..a107253c6 100644 --- a/src/tests/test_array.py +++ b/src/tests/test_array.py @@ -58,21 +58,17 @@ def test_protected_array(self): def test_internal_array(self): """Test internal arrays.""" - def test(): + with self.assertRaises(AttributeError): ob = Test.InternalArrayTest() items = ob.items - self.assertRaises(AttributeError, test) - def test_private_array(self): """Test private arrays.""" - def test(): + with self.assertRaises(AttributeError): ob = Test.PrivateArrayTest() items = ob.items - self.assertRaises(AttributeError, test) - def test_array_bounds_checking(self): """Test array bounds checking.""" @@ -91,30 +87,22 @@ def test_array_bounds_checking(self): self.assertTrue(items[-2] == 3) self.assertTrue(items[-1] == 4) - def test(): + with self.assertRaises(IndexError): ob = Test.Int32ArrayTest() ob.items[5] - self.assertRaises(IndexError, test) - - def test(): + with self.assertRaises(IndexError): ob = Test.Int32ArrayTest() ob.items[5] = 0 - self.assertRaises(IndexError, test) - - def test(): + with self.assertRaises(IndexError): ob = Test.Int32ArrayTest() items[-6] - self.assertRaises(IndexError, test) - - def test(): + with self.assertRaises(IndexError): ob = Test.Int32ArrayTest() items[-6] = 0 - self.assertRaises(IndexError, test) - def test_array_contains(self): """Test array support for __contains__.""" @@ -151,18 +139,14 @@ def test_boolean_array(self): items[0] = True self.assertTrue(items[0] == True) - def test(): + with self.assertRaises(TypeError): ob = Test.ByteArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.ByteArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_byte_array(self): """Test byte arrays.""" ob = Test.ByteArrayTest() @@ -188,30 +172,22 @@ def test_byte_array(self): items[-1] = min self.assertTrue(items[-1] == min) - def test(): + with self.assertRaises(OverflowError): ob = Test.ByteArrayTest() ob.items[0] = max + 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ob = Test.ByteArrayTest() ob.items[0] = min - 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.ByteArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.ByteArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_sbyte_array(self): """Test sbyte arrays.""" ob = Test.SByteArrayTest() @@ -237,30 +213,22 @@ def test_sbyte_array(self): items[-1] = min self.assertTrue(items[-1] == min) - def test(): + with self.assertRaises(OverflowError): ob = Test.SByteArrayTest() ob.items[0] = max + 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ob = Test.SByteArrayTest() ob.items[0] = min - 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.SByteArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.SByteArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_char_array(self): """Test char arrays.""" ob = Test.CharArrayTest() @@ -286,18 +254,14 @@ def test_char_array(self): items[-1] = min self.assertTrue(items[-1] == min) - def test(): + with self.assertRaises(TypeError): ob = Test.CharArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.CharArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_int16_array(self): """Test Int16 arrays.""" ob = Test.Int16ArrayTest() @@ -323,30 +287,22 @@ def test_int16_array(self): items[-1] = min self.assertTrue(items[-1] == min) - def test(): + with self.assertRaises(OverflowError): ob = Test.Int16ArrayTest() ob.items[0] = max + 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ob = Test.Int16ArrayTest() ob.items[0] = min - 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.Int16ArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.Int16ArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_int32_array(self): """Test Int32 arrays.""" ob = Test.Int32ArrayTest() @@ -372,30 +328,22 @@ def test_int32_array(self): items[-1] = min self.assertTrue(items[-1] == min) - def test(): + with self.assertRaises(OverflowError): ob = Test.Int32ArrayTest() ob.items[0] = max + 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ob = Test.Int32ArrayTest() ob.items[0] = min - 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.Int32ArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.Int32ArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_int64_array(self): """Test Int64 arrays.""" ob = Test.Int64ArrayTest() @@ -421,30 +369,22 @@ def test_int64_array(self): items[-1] = min self.assertTrue(items[-1] == min) - def test(): + with self.assertRaises(OverflowError): ob = Test.Int64ArrayTest() ob.items[0] = max + 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ob = Test.Int64ArrayTest() ob.items[0] = min - 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.Int64ArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.Int64ArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_uint16_array(self): """Test UInt16 arrays.""" ob = Test.UInt16ArrayTest() @@ -470,30 +410,22 @@ def test_uint16_array(self): items[-1] = min self.assertTrue(items[-1] == min) - def test(): + with self.assertRaises(OverflowError): ob = Test.UInt16ArrayTest() ob.items[0] = max + 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ob = Test.UInt16ArrayTest() ob.items[0] = min - 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.UInt16ArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.UInt16ArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_uint32_array(self): """Test UInt32 arrays.""" ob = Test.UInt32ArrayTest() @@ -519,30 +451,22 @@ def test_uint32_array(self): items[-1] = min self.assertTrue(items[-1] == min) - def test(): + with self.assertRaises(OverflowError): ob = Test.UInt32ArrayTest() ob.items[0] = max + 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ob = Test.UInt32ArrayTest() ob.items[0] = min - 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.UInt32ArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.UInt32ArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_uint64_array(self): """Test UInt64 arrays.""" ob = Test.UInt64ArrayTest() @@ -568,30 +492,22 @@ def test_uint64_array(self): items[-1] = min self.assertTrue(items[-1] == min) - def test(): + with self.assertRaises(OverflowError): ob = Test.UInt64ArrayTest() ob.items[0] = max + 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ob = Test.UInt64ArrayTest() ob.items[0] = min - 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.UInt64ArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.UInt64ArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_single_array(self): """Test Single arrays.""" ob = Test.SingleArrayTest() @@ -617,18 +533,14 @@ def test_single_array(self): items[-1] = min self.assertTrue(items[-1] == min) - def test(): + with self.assertRaises(TypeError): ob = Test.SingleArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.SingleArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_double_array(self): """Test Double arrays.""" ob = Test.DoubleArrayTest() @@ -654,18 +566,14 @@ def test_double_array(self): items[-1] = min self.assertTrue(items[-1] == min) - def test(): + with self.assertRaises(TypeError): ob = Test.DoubleArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.DoubleArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_decimal_array(self): """Test Decimal arrays.""" ob = Test.DecimalArrayTest() @@ -692,18 +600,14 @@ def test_decimal_array(self): items[-1] = min_d self.assertTrue(items[-1] == min_d) - def test(): + with self.assertRaises(TypeError): ob = Test.DecimalArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.DecimalArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_string_array(self): """Test String arrays.""" ob = Test.StringArrayTest() @@ -726,18 +630,14 @@ def test_string_array(self): items[-1] = "eggs" self.assertTrue(items[-1] == "eggs") - def test(): + with self.assertRaises(TypeError): ob = Test.StringArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.Int64ArrayTest() ob[0] = 0 - self.assertRaises(TypeError, test) - def test_enum_array(self): """Test enum arrays.""" from Python.Test import ShortEnum @@ -761,24 +661,18 @@ def test_enum_array(self): items[-1] = ShortEnum.Zero self.assertTrue(items[-1] == ShortEnum.Zero) - def test(): + with self.assertRaises(ValueError): ob = Test.EnumArrayTest() ob.items[0] = 99 - self.assertRaises(ValueError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.EnumArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.EnumArrayTest() ob[0] = "wrong" - self.assertRaises(TypeError, test) - def test_object_array(self): """Test ob arrays.""" from Python.Test import Spam @@ -808,18 +702,14 @@ def test_object_array(self): items[0] = None self.assertTrue(items[0] == None) - def test(): + with self.assertRaises(TypeError): ob = Test.ObjectArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.ObjectArrayTest() ob.items["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_null_array(self): """Test null arrays.""" ob = Test.NullArrayTest() @@ -845,12 +735,10 @@ def test_null_array(self): empty = ob.empty self.assertTrue(len(empty) == 0) - def test(): + with self.assertRaises(TypeError): ob = Test.NullArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - def test_interface_array(self): """Test interface arrays.""" from Python.Test import Spam @@ -877,24 +765,18 @@ def test_interface_array(self): items[0] = None self.assertTrue(items[0] == None) - def test(): + with self.assertRaises(TypeError): ob = Test.InterfaceArrayTest() ob.items[0] = 99 - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.InterfaceArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.InterfaceArrayTest() ob.items["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_typed_array(self): """Test typed arrays.""" from Python.Test import Spam @@ -921,24 +803,18 @@ def test_typed_array(self): items[0] = None self.assertTrue(items[0] == None) - def test(): + with self.assertRaises(TypeError): ob = Test.TypedArrayTest() ob.items[0] = 99 - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.TypedArrayTest() v = ob.items["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.TypedArrayTest() ob.items["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_multi_dimensional_array(self): """Test multi-dimensional arrays.""" ob = Test.MultiDimensionalArrayTest() @@ -987,30 +863,22 @@ def test_multi_dimensional_array(self): items[-1, -1] = min self.assertTrue(items[-1, -1] == min) - def test(): + with self.assertRaises(OverflowError): ob = Test.MultiDimensionalArrayTest() ob.items[0, 0] = max + 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ob = Test.MultiDimensionalArrayTest() ob.items[0, 0] = min - 1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.MultiDimensionalArrayTest() v = ob.items["wrong", 0] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.MultiDimensionalArrayTest() ob[0, 0] = "wrong" - self.assertRaises(TypeError, test) - def test_array_iteration(self): """Test array iteration.""" items = Test.Int32ArrayTest().items @@ -1143,22 +1011,16 @@ def test_tuple_array_conversion_type_checking(self): self.assertTrue(result[1] == None) self.assertTrue(len(result) == 10) - def test(items=items): + with self.assertRaises(TypeError): temp = list(items) temp[1] = 1 - result = ArrayConversionTest.EchoRange(tuple(temp)) - self.assertRaises(TypeError, test) - - def test(items=items): + with self.assertRaises(TypeError): temp = list(items) temp[1] = "spam" - result = ArrayConversionTest.EchoRange(tuple(temp)) - self.assertRaises(TypeError, test) - def test_list_array_conversion_type_checking(self): """Test error handling for list conversion to array arguments.""" from Python.Test import ArrayConversionTest @@ -1178,18 +1040,14 @@ def test_list_array_conversion_type_checking(self): self.assertTrue(result[1] == None) self.assertTrue(len(result) == 10) - def test(items=items): + with self.assertRaises(TypeError): items[1] = 1 result = ArrayConversionTest.EchoRange(items) - self.assertRaises(TypeError, test) - - def test(items=items): + with self.assertRaises(TypeError): items[1] = "spam" result = ArrayConversionTest.EchoRange(items) - self.assertRaises(TypeError, test) - def test_sequence_array_conversion_type_checking(self): """Test error handling for sequence conversion to array arguments.""" from Python.Test import ArrayConversionTest @@ -1209,18 +1067,14 @@ def test_sequence_array_conversion_type_checking(self): self.assertTrue(result[1] == None) self.assertTrue(len(result) == 10) - def test(items=items): + with self.assertRaises(TypeError): items[1] = 1 result = ArrayConversionTest.EchoRange(items) - self.assertRaises(TypeError, test) - - def test(items=items): + with self.assertRaises(TypeError): items[1] = "spam" result = ArrayConversionTest.EchoRange(items) - self.assertRaises(TypeError, test) - def test_md_array_conversion(self): """Test passing of multi-dimensional array arguments.""" from Python.Test import ArrayConversionTest @@ -1263,7 +1117,7 @@ def test_boxed_value_type_mutation_result(self): items[i] = Point(i, i) for i in range(5): - # Boxed items, so settr will not change the array member. + # Boxed items, so set_attr will not change the array member. self.assertTrue(items[i].X == i) self.assertTrue(items[i].Y == i) items[i].X = i + 1 @@ -1421,48 +1275,32 @@ def test_array_abuse(self): _class = Test.PublicArrayTest ob = Test.PublicArrayTest() - def test(): + with self.assertRaises(AttributeError): del _class.__getitem__ - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): del ob.__getitem__ - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): del _class.__setitem__ - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): del ob.__setitem__ - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(TypeError): Test.PublicArrayTest.__getitem__(0, 0) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): Test.PublicArrayTest.__setitem__(0, 0, 0) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): desc = Test.PublicArrayTest.__dict__['__getitem__'] desc(0, 0) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): desc = Test.PublicArrayTest.__dict__['__setitem__'] desc(0, 0, 0) - self.assertRaises(TypeError, test) - def test_suite(): return unittest.makeSuite(ArrayTests) diff --git a/src/tests/test_class.py b/src/tests/test_class.py index 02d5f1efc..373bb326d 100644 --- a/src/tests/test_class.py +++ b/src/tests/test_class.py @@ -59,17 +59,12 @@ def test_class_default_repr(self): def test_non_public_class(self): """Test that non-public classes are inaccessible.""" - - def test(): + with self.assertRaises(ImportError): from Python.Test import InternalClass - self.assertRaises(ImportError, test) - - def test(): + with self.assertRaises(AttributeError): x = Test.InternalClass - self.assertRaises(AttributeError, test) - def test_basic_subclass(self): """Test basic subclass of a managed class.""" from System.Collections import Hashtable @@ -256,13 +251,17 @@ def test_comparisons(self): self.assertEqual(d2 >= d1, True) self.assertEqual(d2 > d1, True) - self.assertRaises(TypeError, lambda: d1 < None) - self.assertRaises(TypeError, lambda: d1 < System.Guid()) + with self.assertRaises(TypeError): + d1 < None + + with self.assertRaises(TypeError): + d1 < System.Guid() # ClassTest does not implement IComparable c1 = ClassTest() c2 = ClassTest() - self.assertRaises(TypeError, lambda: c1 < c2) + with self.assertRaises(TypeError): + c1 < c2 def test_self_callback(self): """Test calling back and forth between this and a c# baseclass.""" diff --git a/src/tests/test_compat.py b/src/tests/test_compat.py index 6eaf752c9..6570f2c1c 100644 --- a/src/tests/test_compat.py +++ b/src/tests/test_compat.py @@ -182,17 +182,13 @@ def test_implicit_load_already_valid_namespace(self): self.assertTrue(isCLRClass(CLR.System.UriBuilder)) def test_import_non_existant_module(self): - """Test import failure for a non-existant module.""" - - def test(): + """Test import failure for a non-existent module.""" + with self.assertRaises(ImportError): import System.SpamSpamSpam - def testclr(): + with self.assertRaises(ImportError): import CLR.System.SpamSpamSpam - self.assertRaises(ImportError, test) - self.assertRaises(ImportError, testclr) - def test_lookup_no_namespace_type(self): """Test lookup of types without a qualified namespace.""" import CLR.Python.Test @@ -201,18 +197,13 @@ def test_lookup_no_namespace_type(self): def test_module_lookup_recursion(self): """Test for recursive lookup handling.""" - - def test1(): + with self.assertRaises(ImportError): from CLR import CLR - self.assertRaises(ImportError, test1) - - def test2(): + with self.assertRaises(AttributeError): import CLR x = CLR.CLR - self.assertRaises(AttributeError, test2) - def test_module_get_attr(self): """Test module getattr behavior.""" import CLR.System as System @@ -223,20 +214,16 @@ def test_module_get_attr(self): module = System.Xml self.assertTrue(isCLRModule(module)) - def test(): + with self.assertRaises(AttributeError): spam = System.Spam - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(TypeError): spam = getattr(System, 1) - self.assertRaises(TypeError, test) - - def test000_multiple_imports(self): + def test_multiple_imports(self): # import CLR did raise a Seg Fault once # test if the Exceptions.warn() method still causes it - for n in range(100): + for _ in range(100): import CLR diff --git a/src/tests/test_conversion.py b/src/tests/test_conversion.py index a63e0793d..7423e2201 100644 --- a/src/tests/test_conversion.py +++ b/src/tests/test_conversion.py @@ -83,36 +83,24 @@ def test_sbyte_conversion(self): ob.SByteField = System.SByte(-128) self.assertTrue(ob.SByteField == -128) - def test(): + with self.assertRaises(TypeError): ConversionTest().SByteField = "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().SByteField = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().SByteField = 128 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().SByteField = -129 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.SByte(128) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.SByte(-129) - self.assertRaises(OverflowError, test) - def test_byte_conversion(self): """Test byte conversion.""" self.assertTrue(System.Byte.MaxValue == 255) @@ -133,36 +121,24 @@ def test_byte_conversion(self): ob.ByteField = System.Byte(0) self.assertTrue(ob.ByteField == 0) - def test(): + with self.assertRaises(TypeError): ConversionTest().ByteField = "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().ByteField = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().ByteField = 256 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().ByteField = -1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Byte(256) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Byte(-1) - self.assertRaises(OverflowError, test) - def test_char_conversion(self): """Test char conversion.""" self.assertTrue(System.Char.MaxValue == unichr(65535)) @@ -180,21 +156,15 @@ def test_char_conversion(self): ob.CharField = 67 self.assertTrue(ob.CharField == u'C') - def test(): + with self.assertRaises(OverflowError): ConversionTest().CharField = 65536 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().CharField = -1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().CharField = None - self.assertRaises(TypeError, test) - def test_int16_conversion(self): """Test int16 conversion.""" self.assertTrue(System.Int16.MaxValue == 32767) @@ -215,36 +185,24 @@ def test_int16_conversion(self): ob.Int16Field = System.Int16(-32768) self.assertTrue(ob.Int16Field == -32768) - def test(): + with self.assertRaises(TypeError): ConversionTest().Int16Field = "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().Int16Field = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().Int16Field = 32768 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().Int16Field = -32769 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Int16(32768) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Int16(-32769) - self.assertRaises(OverflowError, test) - def test_int32_conversion(self): """Test int32 conversion.""" self.assertTrue(System.Int32.MaxValue == 2147483647) @@ -265,36 +223,24 @@ def test_int32_conversion(self): ob.Int32Field = System.Int32(-2147483648) self.assertTrue(ob.Int32Field == -2147483648) - def test(): + with self.assertRaises(TypeError): ConversionTest().Int32Field = "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().Int32Field = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().Int32Field = 2147483648 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().Int32Field = -2147483649 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Int32(2147483648) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Int32(-2147483649) - self.assertRaises(OverflowError, test) - def test_int64_conversion(self): """Test int64 conversion.""" self.assertTrue(System.Int64.MaxValue == long(9223372036854775807)) @@ -315,36 +261,24 @@ def test_int64_conversion(self): ob.Int64Field = System.Int64(long(-9223372036854775808)) self.assertTrue(ob.Int64Field == long(-9223372036854775808)) - def test(): + with self.assertRaises(TypeError): ConversionTest().Int64Field = "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().Int64Field = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().Int64Field = long(9223372036854775808) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().Int64Field = long(-9223372036854775809) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Int64(long(9223372036854775808)) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Int64(long(-9223372036854775809)) - self.assertRaises(OverflowError, test) - def test_uint16_conversion(self): """Test uint16 conversion.""" self.assertTrue(System.UInt16.MaxValue == 65535) @@ -365,36 +299,24 @@ def test_uint16_conversion(self): ob.UInt16Field = System.UInt16(0) self.assertTrue(ob.UInt16Field == 0) - def test(): + with self.assertRaises(TypeError): ConversionTest().UInt16Field = "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().UInt16Field = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().UInt16Field = 65536 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().UInt16Field = -1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.UInt16(65536) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.UInt16(-1) - self.assertRaises(OverflowError, test) - def test_uint32_conversion(self): """Test uint32 conversion.""" self.assertTrue(System.UInt32.MaxValue == long(4294967295)) @@ -415,36 +337,24 @@ def test_uint32_conversion(self): ob.UInt32Field = System.UInt32(0) self.assertTrue(ob.UInt32Field == 0) - def test(): + with self.assertRaises(TypeError): ConversionTest().UInt32Field = "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().UInt32Field = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().UInt32Field = long(4294967296) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().UInt32Field = -1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.UInt32(long(4294967296)) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.UInt32(-1) - self.assertRaises(OverflowError, test) - def test_uint64_conversion(self): """Test uint64 conversion.""" self.assertTrue(System.UInt64.MaxValue == long(18446744073709551615)) @@ -465,36 +375,24 @@ def test_uint64_conversion(self): ob.UInt64Field = System.UInt64(0) self.assertTrue(ob.UInt64Field == 0) - def test(): + with self.assertRaises(TypeError): ConversionTest().UInt64Field = "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().UInt64Field = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().UInt64Field = long(18446744073709551616) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().UInt64Field = -1 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.UInt64(long(18446744073709551616)) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.UInt64(-1) - self.assertRaises(OverflowError, test) - def test_single_conversion(self): """Test single conversion.""" self.assertTrue(System.Single.MaxValue == 3.402823e38) @@ -515,36 +413,24 @@ def test_single_conversion(self): ob.SingleField = System.Single(-3.402823e38) self.assertTrue(ob.SingleField == -3.402823e38) - def test(): + with self.assertRaises(TypeError): ConversionTest().SingleField = "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().SingleField = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().SingleField = 3.402824e38 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().SingleField = -3.402824e38 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Single(3.402824e38) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Single(-3.402824e38) - self.assertRaises(OverflowError, test) - def test_double_conversion(self): """Test double conversion.""" self.assertTrue(System.Double.MaxValue == 1.7976931348623157e308) @@ -565,36 +451,24 @@ def test_double_conversion(self): ob.DoubleField = System.Double(-1.7976931348623157e308) self.assertTrue(ob.DoubleField == -1.7976931348623157e308) - def test(): + with self.assertRaises(TypeError): ConversionTest().DoubleField = "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().DoubleField = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().DoubleField = 1.7976931348623159e308 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): ConversionTest().DoubleField = -1.7976931348623159e308 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Double(1.7976931348623159e308) - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(OverflowError): value = System.Double(-1.7976931348623159e308) - self.assertRaises(OverflowError, test) - def test_decimal_conversion(self): """Test decimal conversion.""" from System import Decimal @@ -622,21 +496,15 @@ def test_decimal_conversion(self): ob.DecimalField = min_d self.assertTrue(ob.DecimalField == min_d) - def test(): + with self.assertRaises(TypeError): ConversionTest().DecimalField = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().DecimalField = "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().DecimalField = 1 - self.assertRaises(TypeError, test) - def test_string_conversion(self): """Test string / unicode conversion.""" ob = ConversionTest() @@ -665,11 +533,9 @@ def test_string_conversion(self): ob.StringField = None self.assertTrue(ob.StringField == None) - def test(): + with self.assertRaises(TypeError): ConversionTest().StringField = 1 - self.assertRaises(TypeError, test) - def test_interface_conversion(self): """Test interface conversion.""" from Python.Test import Spam, ISpam @@ -688,18 +554,14 @@ def test_interface_conversion(self): ob.SpamField = None self.assertTrue(ob.SpamField == None) - def test(): + with self.assertRaises(TypeError): ob = ConversionTest() ob.SpamField = System.String("bad") - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = ConversionTest() ob.SpamField = System.Int32(1) - self.assertRaises(TypeError, test) - def test_object_conversion(self): """Test ob conversion.""" from Python.Test import Spam @@ -722,12 +584,10 @@ def test_object_conversion(self): # need to test subclass here - def test(): + with self.assertRaises(TypeError): ob = ConversionTest() ob.ObjectField = self - self.assertRaises(TypeError, test) - def test_enum_conversion(self): """Test enum conversion.""" from Python.Test import ShortEnum @@ -746,30 +606,22 @@ def test_enum_conversion(self): self.assertTrue(ob.EnumField == ShortEnum.One) self.assertTrue(ob.EnumField == 1) - def test(): + with self.assertRaises(ValueError): ob = ConversionTest() ob.EnumField = 10 - self.assertRaises(ValueError, test) - - def test(): + with self.assertRaises(ValueError): ob = ConversionTest() ob.EnumField = 255 - self.assertRaises(ValueError, test) - - def test(): + with self.assertRaises(OverflowError): ob = ConversionTest() ob.EnumField = 1000000 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): ob = ConversionTest() ob.EnumField = "spam" - self.assertRaises(TypeError, test) - def test_null_conversion(self): """Test null conversion.""" ob = ConversionTest() @@ -785,16 +637,12 @@ def test_null_conversion(self): # Primitive types and enums should not be set to null. - def test(): + with self.assertRaises(TypeError): ConversionTest().Int32Field = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ConversionTest().EnumField = None - self.assertRaises(TypeError, test) - def test_byte_array_conversion(self): """Test byte array conversion.""" ob = ConversionTest() diff --git a/src/tests/test_delegate.py b/src/tests/test_delegate.py index 37203e77d..0c51c2937 100644 --- a/src/tests/test_delegate.py +++ b/src/tests/test_delegate.py @@ -30,16 +30,12 @@ def test_global_delegate_visibility(self): self.assertTrue(PublicDelegate.__name__ == 'PublicDelegate') self.assertTrue(Test.PublicDelegate.__name__ == 'PublicDelegate') - def test(): + with self.assertRaises(ImportError): from Python.Test import InternalDelegate - self.assertRaises(ImportError, test) - - def test(): + with self.assertRaises(AttributeError): i = Test.InternalDelegate - self.assertRaises(AttributeError, test) - def test_nested_delegate_visibility(self): """Test visibility of nested delegates.""" ob = DelegateTest.PublicDelegate @@ -48,16 +44,12 @@ def test_nested_delegate_visibility(self): ob = DelegateTest.ProtectedDelegate self.assertTrue(ob.__name__ == 'ProtectedDelegate') - def test(): + with self.assertRaises(AttributeError): ob = DelegateTest.InternalDelegate - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): ob = DelegateTest.PrivateDelegate - self.assertRaises(AttributeError, test) - def test_delegate_from_function(self): """Test delegate implemented with a Python function.""" @@ -88,12 +80,10 @@ def test_delegate_from_method(self): def test_delegate_from_unbound_method(self): """Test failure mode for unbound methods.""" - def test(): + with self.assertRaises(TypeError): d = StringDelegate(HelloClass.hello) d() - self.assertRaises(TypeError, test) - def test_delegate_from_static_method(self): """Test delegate implemented with a Python static method.""" @@ -196,21 +186,15 @@ def test_delegate_from_delegate(self): def test_delegate_with_invalid_args(self): """Test delegate instantiation with invalid (non-callable) args.""" - def test(): + with self.assertRaises(TypeError): d = StringDelegate(None) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): d = StringDelegate("spam") - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): d = StringDelegate(1) - self.assertRaises(TypeError, test) - def test_multicast_delegate(self): """Test multicast delegates.""" @@ -231,12 +215,10 @@ def test_subclass_delegate_fails(self): """Test that subclassing of a delegate type fails.""" from Python.Test import PublicDelegate - def test(): + with self.assertRaises(TypeError): class Boom(PublicDelegate): pass - self.assertRaises(TypeError, test) - def test_delegate_equality(self): """Test delegate equality.""" diff --git a/src/tests/test_enum.py b/src/tests/test_enum.py index 6f6097029..170a47fd1 100644 --- a/src/tests/test_enum.py +++ b/src/tests/test_enum.py @@ -83,46 +83,36 @@ def test_instantiate_enum_fails(self): """Test that instantiation of an enum class fails.""" from System import DayOfWeek - def test(): + with self.assertRaises(TypeError): ob = DayOfWeek() - self.assertRaises(TypeError, test) - def test_subclass_enum_fails(self): """Test that subclassing of an enumeration fails.""" from System import DayOfWeek - def test(): + with self.assertRaises(TypeError): class Boom(DayOfWeek): pass - self.assertRaises(TypeError, test) - def test_enum_set_member_fails(self): """Test that setattr operations on enumerations fail.""" from System import DayOfWeek - def test(): + with self.assertRaises(TypeError): DayOfWeek.Sunday = 13 - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): del DayOfWeek.Sunday - self.assertRaises(TypeError, test) - def test_enum_with_flags_attr_conversion(self): """Test enumeration conversion with FlagsAttribute set.""" # This works because the FlagsField enum has FlagsAttribute. Test.FieldTest().FlagsField = 99 # This should fail because our test enum doesn't have it. - def test(): + with self.assertRaises(ValueError): Test.FieldTest().EnumField = 99 - self.assertRaises(ValueError, test) - def test_enum_conversion(self): """Test enumeration conversion.""" ob = Test.FieldTest() @@ -131,21 +121,15 @@ def test_enum_conversion(self): ob.EnumField = Test.ShortEnum.One self.assertTrue(ob.EnumField == 1) - def test(): + with self.assertRaises(ValueError): Test.FieldTest().EnumField = 20 - self.assertRaises(ValueError, test) - - def test(): + with self.assertRaises(OverflowError): Test.FieldTest().EnumField = 100000 - self.assertRaises(OverflowError, test) - - def test(): + with self.assertRaises(TypeError): Test.FieldTest().EnumField = "str" - self.assertRaises(TypeError, test) - def test_suite(): return unittest.makeSuite(EnumTests) diff --git a/src/tests/test_event.py b/src/tests/test_event.py index 84a495430..64ecc615c 100644 --- a/src/tests/test_event.py +++ b/src/tests/test_event.py @@ -68,39 +68,27 @@ def test_protected_static_event(self): def test_internal_events(self): """Test internal events.""" - def test(): + with self.assertRaises(AttributeError): f = EventTest().InternalEvent - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = EventTest().InternalStaticEvent - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = EventTest.InternalStaticEvent - self.assertRaises(AttributeError, test) - def test_private_events(self): """Test private events.""" - def test(): + with self.assertRaises(AttributeError): f = EventTest().PrivateEvent - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = EventTest().PrivateStaticEvent - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = EventTest.PrivateStaticEvent - self.assertRaises(AttributeError, test) - def test_multicast_event(self): """Test multicast events.""" ob = EventTest() @@ -301,27 +289,21 @@ def handler(sender, args, dict=dict): def test_add_non_callable_handler(self): """Test handling of attempts to add non-callable handlers.""" - def test(): + with self.assertRaises(TypeError): ob = EventTest() ob.PublicEvent += 10 - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = EventTest() ob.PublicEvent += "spam" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): class spam(object): pass ob = EventTest() ob.PublicEvent += spam() - self.assertRaises(TypeError, test) - def test_remove_multiple_handlers(self): """Test removing multiple instances of the same handler.""" ob = EventTest() @@ -478,14 +460,12 @@ def h(sender, args): def test_remove_unknown_handler(self): """Test removing an event handler that was never added.""" - def test(): + with self.assertRaises(ValueError): ob = EventTest() handler = GenericHandler() ob.PublicEvent -= handler.handler - self.assertRaises(ValueError, test) - def test_handler_callback_failure(self): """Test failure mode for inappropriate handlers.""" @@ -496,12 +476,10 @@ def handler(self, one): ob = EventTest() handler = BadHandler() - def test(): + with self.assertRaises(TypeError): ob.PublicEvent += handler.handler ob.OnPublicEvent(TestEventArgs(10)) - self.assertRaises(TypeError, test) - ob.PublicEvent -= handler.handler class BadHandler(object): @@ -511,12 +489,10 @@ def handler(self, one, two, three, four, five): ob = EventTest() handler = BadHandler() - def test(): + with self.assertRaises(TypeError): ob.PublicEvent += handler.handler ob.OnPublicEvent(TestEventArgs(10)) - self.assertRaises(TypeError, test) - ob.PublicEvent -= handler.handler def test_incorrect_invokation(self): @@ -526,16 +502,12 @@ def test_incorrect_invokation(self): handler = GenericHandler() ob.PublicEvent += handler.handler - def test(): + with self.assertRaises(TypeError): ob.OnPublicEvent() - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob.OnPublicEvent(32) - self.assertRaises(TypeError, test) - ob.PublicEvent -= handler.handler def test_explicit_cls_event_registration(self): @@ -561,49 +533,35 @@ def test_explicit_cls_event_registration(self): def test_implicit_cls_event_registration(self): """Test implicit CLS event registration.""" - def test(): + with self.assertRaises(TypeError): ob = EventTest() handler = GenericHandler() ob.add_PublicEvent(handler.handler) - self.assertRaises(TypeError, test) - def test_event_descriptor_abuse(self): """Test event descriptor abuse.""" - def test(): + with self.assertRaises(TypeError): del EventTest.PublicEvent - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): del EventTest.__dict__['PublicEvent'] - self.assertRaises(TypeError, test) - desc = EventTest.__dict__['PublicEvent'] - def test(): + with self.assertRaises(TypeError): desc.__get__(0, 0) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): desc.__set__(0, 0) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = EventTest() ob.PublicEvent = 0 - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): EventTest.PublicStaticEvent = 0 - self.assertRaises(TypeError, test) - def test_suite(): return unittest.makeSuite(EventTests) diff --git a/src/tests/test_exceptions.py b/src/tests/test_exceptions.py index ffd9445eb..aeec1fee3 100644 --- a/src/tests/test_exceptions.py +++ b/src/tests/test_exceptions.py @@ -61,95 +61,84 @@ def test_raise_class_exception(self): """Test class exception propagation.""" from System import NullReferenceException - def test(): + with self.assertRaises(NullReferenceException) as cm: raise NullReferenceException - self.assertRaises(NullReferenceException, test) + exc = cm.exception + self.assertTrue(isinstance(exc, NullReferenceException)) + def test_exc_info(self): + """Test class exception propagation. + Behavior of exc_info changed in Py3. Refactoring its test""" + from System import NullReferenceException try: - raise NullReferenceException - except: - type, value, tb = sys.exc_info() - self.assertTrue(type is NullReferenceException) - self.assertTrue(isinstance(value, NullReferenceException)) + raise NullReferenceException("message") + except Exception as exc: + type_, value, tb = sys.exc_info() + self.assertTrue(type_ is NullReferenceException) + self.assertTrue(value.Message == "message") + self.assertTrue(exc.Message == "message") + # FIXME: Lower-case message isn't implemented + # self.assertTrue(exc.message == "message") + self.assertTrue(value is exc) def test_raise_class_exception_with_value(self): """Test class exception propagation with associated value.""" from System import NullReferenceException - def test(): + with self.assertRaises(NullReferenceException) as cm: raise NullReferenceException('Aiiieee!') - self.assertRaises(NullReferenceException, test) - - try: - raise NullReferenceException('Aiiieee!') - except: - type, value, tb = sys.exc_info() - self.assertTrue(type is NullReferenceException) - self.assertTrue(isinstance(value, NullReferenceException)) - self.assertTrue(value.Message == 'Aiiieee!') + exc = cm.exception + self.assertTrue(isinstance(exc, NullReferenceException)) + self.assertTrue(exc.Message == 'Aiiieee!') def test_raise_instance_exception(self): """Test instance exception propagation.""" from System import NullReferenceException - def test(): + with self.assertRaises(NullReferenceException) as cm: raise NullReferenceException() - self.assertRaises(NullReferenceException, test) - - try: - raise NullReferenceException() - except: - type, value, tb = sys.exc_info() - self.assertTrue(type is NullReferenceException) - self.assertTrue(isinstance(value, NullReferenceException)) - self.assertTrue(len(value.Message) > 0) + exc = cm.exception + self.assertTrue(isinstance(exc, NullReferenceException)) + self.assertTrue(len(exc.Message) > 0) def test_raise_instance_exception_with_args(self): """Test instance exception propagation with args.""" from System import NullReferenceException - def test(): - raise NullReferenceException("Aiieeee!") - - self.assertRaises(NullReferenceException, test) + with self.assertRaises(NullReferenceException) as cm: + raise NullReferenceException("Aiiieee!") - try: - raise NullReferenceException('Aiiieee!') - except: - type, value, tb = sys.exc_info() - self.assertTrue(type is NullReferenceException) - self.assertTrue(isinstance(value, NullReferenceException)) - self.assertTrue(value.Message == 'Aiiieee!') + exc = cm.exception + self.assertTrue(isinstance(exc, NullReferenceException)) + self.assertTrue(exc.Message == 'Aiiieee!') def test_managed_exception_propagation(self): """Test propagation of exceptions raised in managed code.""" from System import Decimal, OverflowException - def test(): - l = Decimal.ToInt64(Decimal.MaxValue) - - self.assertRaises(OverflowException, test) + with self.assertRaises(OverflowException): + Decimal.ToInt64(Decimal.MaxValue) def test_managed_exception_conversion(self): """Test conversion of managed exceptions.""" - from System import Exception, OverflowException + from System import OverflowException from Python.Test import ExceptionTest e = ExceptionTest.GetBaseException() - self.assertTrue(isinstance(e, Exception)) + self.assertTrue(isinstance(e, System.Exception)) e = ExceptionTest.GetExplicitException() self.assertTrue(isinstance(e, OverflowException)) - self.assertTrue(isinstance(e, Exception)) + self.assertTrue(isinstance(e, System.Exception)) e = ExceptionTest.GetWidenedException() self.assertTrue(isinstance(e, OverflowException)) - self.assertTrue(isinstance(e, Exception)) + self.assertTrue(isinstance(e, System.Exception)) - v = ExceptionTest.SetBaseException(Exception('error')) + v = ExceptionTest.SetBaseException(System.Exception('error')) self.assertTrue(v) v = ExceptionTest.SetExplicitException(OverflowException('error')) @@ -163,93 +152,66 @@ def test_catch_exception_from_managed_method(self): from Python.Test import ExceptionTest from System import OverflowException - try: + with self.assertRaises(OverflowException) as cm: ExceptionTest().ThrowException() - except OverflowException: - e = sys.exc_info()[1] - self.assertTrue(isinstance(e, OverflowException)) - return - raise SystemError('failed to catch exception from managed method') + e = cm.exception + self.assertTrue(isinstance(e, OverflowException)) def test_catch_exception_from_managed_property(self): """Test catching an exception from a managed property.""" from Python.Test import ExceptionTest from System import OverflowException - try: - v = ExceptionTest().ThrowProperty - except OverflowException: - e = sys.exc_info()[1] - self.assertTrue(isinstance(e, OverflowException)) - return + with self.assertRaises(OverflowException) as cm: + _ = ExceptionTest().ThrowProperty - try: + e = cm.exception + self.assertTrue(isinstance(e, OverflowException)) + + with self.assertRaises(OverflowException) as cm: ExceptionTest().ThrowProperty = 1 - except OverflowException: - e = sys.exc_info()[1] - self.assertTrue(isinstance(e, OverflowException)) - return - raise SystemError('failed to catch exception from managed property') + e = cm.exception + self.assertTrue(isinstance(e, OverflowException)) def test_catch_exception_managed_class(self): """Test catching the managed class of an exception.""" from System import OverflowException - try: + with self.assertRaises(OverflowException): raise OverflowException('overflow') - except OverflowException: - return - - raise SystemError('failed to catch managed class exception') def test_catch_exception_python_class(self): """Test catching the python class of an exception.""" from System import OverflowException - if PY3: - from builtins import Exception - elif PY2: - from exceptions import Exception - try: + with self.assertRaises(Exception): raise OverflowException('overflow') - except Exception: - return - - raise SystemError('failed to catch python class exception') def test_catch_exception_base_class(self): """Test catching the base of an exception.""" from System import OverflowException, ArithmeticException - try: + with self.assertRaises(ArithmeticException): raise OverflowException('overflow') - except ArithmeticException: - return - - raise SystemError('failed to catch base exception') def test_catch_exception_nested_base_class(self): """Test catching the nested base of an exception.""" from System import OverflowException, SystemException - try: + with self.assertRaises(SystemException): raise OverflowException('overflow') - except SystemException: - return - - raise SystemError('failed to catch nested base exception') def test_catch_exception_with_assignment(self): """Test catching an exception with assignment.""" from System import OverflowException - try: + with self.assertRaises(OverflowException) as cm: raise OverflowException('overflow') - except OverflowException: - e = sys.exc_info()[1] - self.assertTrue(isinstance(e, OverflowException)) + + e = cm.exception + self.assertTrue(isinstance(e, OverflowException)) def test_catch_exception_unqualified(self): """Test catching an unqualified exception.""" @@ -259,14 +221,21 @@ def test_catch_exception_unqualified(self): raise OverflowException('overflow') except: return + else: + self.fail("failed to catch unqualified exception") + + def test_catch_baseexception(self): + """Test catching an unqualified exception with BaseException.""" + from System import OverflowException - raise SystemError('failed to catch unqualified exception') + with self.assertRaises(BaseException): + raise OverflowException('overflow') def test_apparent_module_of_exception(self): """Test the apparent module of an exception.""" - from System import Exception, OverflowException + from System import OverflowException - self.assertTrue(Exception.__module__ == 'System') + self.assertTrue(System.Exception.__module__ == 'System') self.assertTrue(OverflowException.__module__ == 'System') def test_str_of_exception(self): @@ -283,14 +252,15 @@ def test_str_of_exception(self): Convert.ToDateTime('this will fail') except FormatException: e = sys.exc_info()[1] - msg = text_type(e).encode("utf8") # fix for international installation - self.assertTrue(msg.find(text_type('System.Convert.ToDateTime').encode("utf8")) > -1, msg) + # fix for international installation + msg = text_type(e).encode("utf8") + fnd = text_type('System.Convert.ToDateTime').encode("utf8") + self.assertTrue(msg.find(fnd) > -1, msg) def test_python_compat_of_managed_exceptions(self): - """Test if managed exceptions are compatible with Python's implementation - """ + """Test managed exceptions compatible with Python's implementation""" from System import OverflowException - msg = "A simple message" + msg = "Simple message" e = OverflowException(msg) self.assertEqual(str(e), msg) @@ -299,9 +269,9 @@ def test_python_compat_of_managed_exceptions(self): self.assertEqual(e.args, (msg,)) self.assertTrue(isinstance(e.args, tuple)) if PY3: - self.assertEqual(repr(e), "OverflowException('A simple message',)") + self.assertEqual(repr(e), "OverflowException('Simple message',)") elif PY2: - self.assertEqual(repr(e), "OverflowException(u'A simple message',)") + self.assertEqual(repr(e), "OverflowException(u'Simple message',)") def test_exception_is_instance_of_system_object(self): """Test behavior of isinstance(, System.Object).""" @@ -338,24 +308,20 @@ def test_pickling_exceptions(self): self.assertEqual(exc.args, loaded.args) def test_chained_exceptions(self): - # TODO: Why is this test PY3 only? + # __cause__ is py3 only if PY3: from Python.Test import ExceptionTest try: ExceptionTest.ThrowChainedExceptions() except Exception as exc: - msgs = [ - "Outer exception", - "Inner exception", - "Innermost exception", - ] - + msgs = ("Outer exception", + "Inner exception", + "Innermost exception",) for msg in msgs: self.assertEqual(exc.Message, msg) self.assertEqual(exc.__cause__, exc.InnerException) exc = exc.__cause__ - else: self.fail("Test should raise an exception") diff --git a/src/tests/test_field.py b/src/tests/test_field.py index f3ec8b382..1f2ca87ea 100644 --- a/src/tests/test_field.py +++ b/src/tests/test_field.py @@ -17,11 +17,9 @@ def test_public_instance_field(self): ob.PublicField = 1 self.assertTrue(ob.PublicField == 1) - def test(): + with self.assertRaises(TypeError): del FieldTest().PublicField - self.assertRaises(TypeError, test) - def test_public_static_field(self): """Test public static fields.""" ob = FieldTest() @@ -34,16 +32,12 @@ def test_public_static_field(self): ob.PublicStaticField = 0 self.assertTrue(ob.PublicStaticField == 0) - def test(): + with self.assertRaises(TypeError): del FieldTest.PublicStaticField - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): del FieldTest().PublicStaticField - self.assertRaises(TypeError, test) - def test_protected_instance_field(self): """Test protected instance fields.""" ob = FieldTest() @@ -52,11 +46,9 @@ def test_protected_instance_field(self): ob.ProtectedField = 1 self.assertTrue(ob.ProtectedField == 1) - def test(): + with self.assertRaises(TypeError): del FieldTest().ProtectedField - self.assertRaises(TypeError, test) - def test_protected_static_field(self): """Test protected static fields.""" ob = FieldTest() @@ -69,30 +61,22 @@ def test_protected_static_field(self): ob.ProtectedStaticField = 0 self.assertTrue(ob.ProtectedStaticField == 0) - def test(): + with self.assertRaises(TypeError): del FieldTest.ProtectedStaticField - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): del FieldTest().ProtectedStaticField - self.assertRaises(TypeError, test) - def test_read_only_instance_field(self): """Test readonly instance fields.""" self.assertTrue(FieldTest().ReadOnlyField == 0) - def test(): + with self.assertRaises(TypeError): FieldTest().ReadOnlyField = 1 - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): del FieldTest().ReadOnlyField - self.assertRaises(TypeError, test) - def test_read_only_static_field(self): """Test readonly static fields.""" ob = FieldTest() @@ -100,26 +84,18 @@ def test_read_only_static_field(self): self.assertTrue(FieldTest.ReadOnlyStaticField == 0) self.assertTrue(ob.ReadOnlyStaticField == 0) - def test(): + with self.assertRaises(TypeError): FieldTest.ReadOnlyStaticField = 1 - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): FieldTest().ReadOnlyStaticField = 1 - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): del FieldTest.ReadOnlyStaticField - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): del FieldTest().ReadOnlyStaticField - self.assertRaises(TypeError, test) - def test_constant_field(self): """Test const fields.""" ob = FieldTest() @@ -127,62 +103,42 @@ def test_constant_field(self): self.assertTrue(FieldTest.ConstField == 0) self.assertTrue(ob.ConstField == 0) - def test(): + with self.assertRaises(TypeError): FieldTest().ConstField = 1 - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): FieldTest.ConstField = 1 - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): del FieldTest().ConstField - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): del FieldTest.ConstField - self.assertRaises(TypeError, test) - def test_internal_field(self): """Test internal fields.""" - def test(): + with self.assertRaises(AttributeError): f = FieldTest().InternalField - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = FieldTest().InternalStaticField - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = FieldTest.InternalStaticField - self.assertRaises(AttributeError, test) - def test_private_field(self): """Test private fields.""" - def test(): + with self.assertRaises(AttributeError): f = FieldTest().PrivateField - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = FieldTest().PrivateStaticField - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = FieldTest.PrivateStaticField - self.assertRaises(AttributeError, test) - def test_field_descriptor_get_set(self): """Test field descriptor get / set.""" @@ -209,25 +165,19 @@ def test_field_descriptor_get_set(self): def test_field_descriptor_wrong_type(self): """Test setting a field using a value of the wrong type.""" - def test(): + with self.assertRaises(TypeError): FieldTest().PublicField = "spam" - self.assertRaises(TypeError, test) - def test_field_descriptor_abuse(self): """Test field descriptor abuse.""" desc = FieldTest.__dict__['PublicField'] - def test(): + with self.assertRaises(TypeError): desc.__get__(0, 0) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): desc.__set__(0, 0) - self.assertRaises(TypeError, test) - def test_boolean_field(self): """Test boolean fields.""" # change this to true / false later for Python 2.3? @@ -408,16 +358,12 @@ def test_nullable_field(self): # Primitive types and enums should not be set to null. - def test(): + with self.assertRaises(TypeError): FieldTest().Int32Field = None - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): FieldTest().EnumField = None - self.assertRaises(TypeError, test) - def test_suite(): return unittest.makeSuite(FieldTests) diff --git a/src/tests/test_generic.py b/src/tests/test_generic.py index d4c93c060..e85e76667 100644 --- a/src/tests/test_generic.py +++ b/src/tests/test_generic.py @@ -194,16 +194,12 @@ def test_open_generic_type(self): OpenGenericType = DerivedFromOpenGeneric.__bases__[0] - def test(): + with self.assertRaises(TypeError): inst = OpenGenericType() - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): type = OpenGenericType[System.String] - self.assertRaises(TypeError, test) - def test_derived_from_open_generic_type(self): """Test a generic type derived from an open generic type.""" from Python.Test import DerivedFromOpenGeneric @@ -228,11 +224,9 @@ def test_generic_type_name_resolution(self): # If no non-generic type exists for a name, the unadorned name # cannot be instantiated. It can only be used to bind a generic. - def test(): + with self.assertRaises(TypeError): inst = GenericNameTest2() - self.assertRaises(TypeError, test) - _class = GenericNameTest2[int] self.assertTrue(_class().value == 1) self.assertTrue(_class.value == 1) @@ -281,23 +275,19 @@ def test_generic_method_binding(self): value = GenericStaticMethodTest[str].Overloaded() self.assertTrue(value == 1) - def test(): + with self.assertRaises(InvalidOperationException): # Cannot invoke a static member on an open type. GenericStaticMethodTest.Overloaded() - self.assertRaises(InvalidOperationException, test) - # Can invoke an instance member on a closed generic type. value = GenericMethodTest[str]().Overloaded() self.assertTrue(value == 1) - def test(): + with self.assertRaises(TypeError): # Cannot invoke an instance member on an open type, # because the open type cannot be instantiated. GenericMethodTest().Overloaded() - self.assertRaises(TypeError, test) - def test_generic_method_type_handling(self): """Test argument conversion / binding for generic methods.""" from Python.Test import InterfaceTest, ISayHello1, ShortEnum @@ -442,16 +432,12 @@ def test_generic_method_overload_selection(self): value = inst.Overloaded[str](123, 456, "success") self.assertTrue(value == "success") - def test(): + with self.assertRaises(TypeError): value = type.Overloaded[str, bool, int]("true", True, 1) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): value = inst.Overloaded[str, bool, int]("true", True, 1) - self.assertRaises(TypeError, test) - def test_method_overload_selection_with_generic_types(self): """Check method overload selection using generic types.""" from Python.Test import ISayHello1, InterfaceTest, ShortEnum diff --git a/src/tests/test_indexer.py b/src/tests/test_indexer.py index daec3d7f7..90a8d71f0 100644 --- a/src/tests/test_indexer.py +++ b/src/tests/test_indexer.py @@ -38,40 +38,28 @@ def test_internal_indexer(self): """Test internal indexers.""" ob = Test.InternalIndexerTest() - def test(): + with self.assertRaises(TypeError): ob[0] = "zero" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): Test.InternalIndexerTest.__getitem__(ob, 0) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob.__getitem__(0) - self.assertRaises(TypeError, test) - def test_private_indexer(self): """Test private indexers.""" ob = Test.PrivateIndexerTest() - def test(): + with self.assertRaises(TypeError): ob[0] = "zero" - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): Test.PrivateIndexerTest.__getitem__(ob, 0) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob.__getitem__(0) - self.assertRaises(TypeError, test) - def test_boolean_indexer(self): """Test boolean indexers.""" ob = Test.BooleanIndexerTest() @@ -105,18 +93,14 @@ def test_byte_indexer(self): ob[min] = str(min) self.assertTrue(ob[min] == str(min)) - def test(): + with self.assertRaises(TypeError): ob = Test.ByteIndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.ByteIndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_sbyte_indexer(self): """Test sbyte indexers.""" ob = Test.SByteIndexerTest() @@ -131,18 +115,14 @@ def test_sbyte_indexer(self): ob[min] = str(min) self.assertTrue(ob[min] == str(min)) - def test(): + with self.assertRaises(TypeError): ob = Test.SByteIndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.SByteIndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_char_indexer(self): """Test char indexers.""" ob = Test.CharIndexerTest() @@ -157,18 +137,14 @@ def test_char_indexer(self): ob[min] = "min" self.assertTrue(ob[min] == "min") - def test(): + with self.assertRaises(TypeError): ob = Test.CharIndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.CharIndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_int16_indexer(self): """Test Int16 indexers.""" ob = Test.Int16IndexerTest() @@ -183,18 +159,14 @@ def test_int16_indexer(self): ob[min] = str(min) self.assertTrue(ob[min] == str(min)) - def test(): + with self.assertRaises(TypeError): ob = Test.Int16IndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.Int16IndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_int32_indexer(self): """Test Int32 indexers.""" ob = Test.Int32IndexerTest() @@ -209,18 +181,14 @@ def test_int32_indexer(self): ob[min] = str(min) self.assertTrue(ob[min] == str(min)) - def test(): + with self.assertRaises(TypeError): ob = Test.Int32IndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.Int32IndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_int64_indexer(self): """Test Int64 indexers.""" ob = Test.Int64IndexerTest() @@ -235,18 +203,14 @@ def test_int64_indexer(self): ob[min] = str(min) self.assertTrue(ob[min] == str(min)) - def test(): + with self.assertRaises(TypeError): ob = Test.Int64IndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.Int64IndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_uint16_indexer(self): """Test UInt16 indexers.""" ob = Test.UInt16IndexerTest() @@ -261,18 +225,14 @@ def test_uint16_indexer(self): ob[min] = str(min) self.assertTrue(ob[min] == str(min)) - def test(): + with self.assertRaises(TypeError): ob = Test.UInt16IndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.UInt16IndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_uint32_indexer(self): """Test UInt32 indexers.""" ob = Test.UInt32IndexerTest() @@ -287,18 +247,14 @@ def test_uint32_indexer(self): ob[min] = str(min) self.assertTrue(ob[min] == str(min)) - def test(): + with self.assertRaises(TypeError): ob = Test.UInt32IndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.UInt32IndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_uint64_indexer(self): """Test UInt64 indexers.""" ob = Test.UInt64IndexerTest() @@ -313,18 +269,14 @@ def test_uint64_indexer(self): ob[min] = str(min) self.assertTrue(ob[min] == str(min)) - def test(): + with self.assertRaises(TypeError): ob = Test.UInt64IndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.UInt64IndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_single_indexer(self): """Test Single indexers.""" ob = Test.SingleIndexerTest() @@ -339,18 +291,14 @@ def test_single_indexer(self): ob[min] = "min" self.assertTrue(ob[min] == "min") - def test(): + with self.assertRaises(TypeError): ob = Test.SingleIndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.SingleIndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_double_indexer(self): """Test Double indexers.""" ob = Test.DoubleIndexerTest() @@ -365,18 +313,14 @@ def test_double_indexer(self): ob[min] = "min" self.assertTrue(ob[min] == "min") - def test(): + with self.assertRaises(TypeError): ob = Test.DoubleIndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.DoubleIndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_decimal_indexer(self): """Test Decimal indexers.""" ob = Test.DecimalIndexerTest() @@ -393,18 +337,14 @@ def test_decimal_indexer(self): ob[min_d] = "min" self.assertTrue(ob[min_d] == "min") - def test(): + with self.assertRaises(TypeError): ob = Test.DecimalIndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.DecimalIndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_string_indexer(self): """Test String indexers.""" ob = Test.StringIndexerTest() @@ -424,18 +364,14 @@ def test_string_indexer(self): self.assertTrue(ob[u"eggs"] == "eggs") self.assertTrue(ob[u"eggs"] == u"eggs") - def test(): + with self.assertRaises(TypeError): ob = Test.StringIndexerTest() ob[1] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.StringIndexerTest() ob[1] = "wrong" - self.assertRaises(TypeError, test) - def test_enum_indexer(self): """Test enum indexers.""" ob = Test.EnumIndexerTest() @@ -453,18 +389,14 @@ def test_enum_indexer(self): ob[1] = "spam" self.assertTrue(ob[1] == "spam") - def test(): + with self.assertRaises(TypeError): ob = Test.EnumIndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.EnumIndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_object_indexer(self): """Test ob indexers.""" ob = Test.ObjectIndexerTest() @@ -489,7 +421,7 @@ def test_object_indexer(self): ob[long(1)] = "long" self.assertTrue(ob[long(1)] == "long") - def test(): + with self.assertRaises(TypeError): class eggs(object): pass @@ -497,8 +429,6 @@ class eggs(object): ob = Test.ObjectIndexerTest() ob[key] = "wrong" - self.assertRaises(TypeError, test) - def test_interface_indexer(self): """Test interface indexers.""" ob = Test.InterfaceIndexerTest() @@ -514,18 +444,14 @@ def test_interface_indexer(self): ob[spam] = "eggs" self.assertTrue(ob[spam] == "eggs") - def test(): + with self.assertRaises(TypeError): ob = Test.InterfaceIndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.InterfaceIndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_typed_indexer(self): """Test typed indexers.""" ob = Test.TypedIndexerTest() @@ -541,18 +467,14 @@ def test_typed_indexer(self): ob[spam] = "eggs" self.assertTrue(ob[spam] == "eggs") - def test(): + with self.assertRaises(TypeError): ob = Test.TypedIndexerTest() ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.TypedIndexerTest() ob["wrong"] = "wrong" - self.assertRaises(TypeError, test) - def test_multi_arg_indexer(self): """Test indexers that take multiple index arguments.""" ob = Test.MultiArgIndexerTest() @@ -565,18 +487,14 @@ def test_multi_arg_indexer(self): self.assertTrue(ob[10, 50] == None) - def test(): + with self.assertRaises(TypeError): ob = Test.MultiArgIndexerTest() v = ob[0, "one"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.MultiArgIndexerTest() ob[0, "one"] = "wrong" - self.assertRaises(TypeError, test) - def test_multi_type_indexer(self): """Test indexers that take multiple indices of different types.""" ob = Test.MultiTypeIndexerTest() @@ -588,18 +506,14 @@ def test_multi_type_indexer(self): ob[1, "nine", spam] = "one nine spam" self.assertTrue(ob[1, "nine", spam] == "one nine spam") - def test(): + with self.assertRaises(TypeError): ob = Test.MultiTypeIndexerTest() v = ob[0, 1, spam] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.MultiTypeIndexerTest() ob[0, 1, spam] = "wrong" - self.assertRaises(TypeError, test) - def test_multi_default_key_indexer(self): """Test indexers that take multiple indices with a default key arguments.""" # default argument is 2 in the MultiDefaultKeyIndexerTest object @@ -613,27 +527,21 @@ def test_multi_default_key_indexer(self): def test_indexer_wrong_key_type(self): """Test calling an indexer using a key of the wrong type.""" - def test(): + with self.assertRaises(TypeError): ob = Test.PublicIndexerTest() v = ob["wrong"] - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): ob = Test.PublicIndexerTest() ob["wrong"] = "spam" - self.assertRaises(TypeError, test) - def test_indexer_wrong_value_type(self): """Test calling an indexer using a value of the wrong type.""" - def test(): + with self.assertRaises(TypeError): ob = Test.PublicIndexerTest() ob[1] = 9993.9 - self.assertRaises(TypeError, test) - def test_unbound_indexer(self): """Test calling an unbound indexer.""" ob = Test.PublicIndexerTest() @@ -651,26 +559,18 @@ def test_indexer_abuse(self): _class = Test.PublicIndexerTest ob = Test.PublicIndexerTest() - def test(): + with self.assertRaises(AttributeError): del _class.__getitem__ - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): del ob.__getitem__ - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): del _class.__setitem__ - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): del ob.__setitem__ - self.assertRaises(AttributeError, test) - def test_suite(): return unittest.makeSuite(IndexerTests) diff --git a/src/tests/test_interface.py b/src/tests/test_interface.py index d47c6279a..ab109458b 100644 --- a/src/tests/test_interface.py +++ b/src/tests/test_interface.py @@ -24,15 +24,11 @@ def test_global_interface_visibility(self): self.assertTrue(IPublicInterface.__name__ == 'IPublicInterface') - def test(): + with self.assertRaises(ImportError): from Python.Test import IInternalInterface - self.assertRaises(ImportError, test) - - def test(): - i = Test.IInternalInterface - - self.assertRaises(AttributeError, test) + with self.assertRaises(AttributeError): + Test.IInternalInterface def test_nested_interface_visibility(self): """Test visibility of nested interfaces.""" @@ -44,16 +40,12 @@ def test_nested_interface_visibility(self): ob = InterfaceTest.IProtected self.assertTrue(ob.__name__ == 'IProtected') - def test(): + with self.assertRaises(AttributeError): ob = InterfaceTest.IInternal - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): ob = InterfaceTest.IPrivate - self.assertRaises(AttributeError, test) - def test_explicit_cast_to_interface(self): """Test explicit cast to an interface.""" from Python.Test import InterfaceTest diff --git a/src/tests/test_method.py b/src/tests/test_method.py index 677a69b52..29d921dac 100644 --- a/src/tests/test_method.py +++ b/src/tests/test_method.py @@ -14,49 +14,33 @@ class MethodTests(unittest.TestCase): def test_instance_method_descriptor(self): """Test instance method descriptor behavior.""" - def test(): + with self.assertRaises(AttributeError): MethodTest().PublicMethod = 0 - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): MethodTest.PublicMethod = 0 - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): del MethodTest().PublicMethod - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): del MethodTest.PublicMethod - self.assertRaises(AttributeError, test) - def test_static_method_descriptor(self): """Test static method descriptor behavior.""" - def test(): + with self.assertRaises(AttributeError): MethodTest().PublicStaticMethod = 0 - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): MethodTest.PublicStaticMethod = 0 - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): del MethodTest().PublicStaticMethod - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): del MethodTest.PublicStaticMethod - self.assertRaises(AttributeError, test) - def test_public_instance_method(self): """Test public instance method visibility.""" ob = MethodTest() @@ -83,49 +67,33 @@ def test_protected_static_method(self): def test_internal_method(self): """Test internal method visibility.""" - def test(): + with self.assertRaises(AttributeError): f = MethodTest().InternalMethod - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = MethodTest.InternalMethod - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = MethodTest().InternalStaticMethod - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = MethodTest.InternalStaticMethod - self.assertRaises(AttributeError, test) - def test_private_method(self): """Test private method visibility.""" - def test(): + with self.assertRaises(AttributeError): f = MethodTest().PrivateMethod - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = MethodTest.PrivateMethod - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = MethodTest().PrivateStaticMethod - self.assertRaises(AttributeError, test) - - def test(): + with self.assertRaises(AttributeError): f = MethodTest.PrivateStaticMethod - self.assertRaises(AttributeError, test) - def test_unbound_managed_method_call(self): """Test calling unbound managed methods.""" from Python.Test import MethodTestSub @@ -133,20 +101,16 @@ def test_unbound_managed_method_call(self): ob = MethodTest() self.assertTrue(MethodTest.PublicMethod(ob) == "public") - def test(): + with self.assertRaises(TypeError): MethodTest.PublicMethod() - self.assertRaises(TypeError, test) - ob = MethodTestSub() self.assertTrue(MethodTestSub.PublicMethod(ob) == "public") self.assertTrue(MethodTestSub.PublicMethod(ob, "echo") == "echo") - def test(): + with self.assertRaises(TypeError): MethodTestSub.PublicMethod("echo") - self.assertRaises(TypeError, test) - def test_overloaded_method_inheritance(self): """Test that overloads are inherited properly.""" from Python.Test import MethodTestSub @@ -154,12 +118,10 @@ def test_overloaded_method_inheritance(self): ob = MethodTest() self.assertTrue(ob.PublicMethod() == "public") - def test(): + with self.assertRaises(TypeError): ob = MethodTest() ob.PublicMethod("echo") - self.assertRaises(TypeError, test) - ob = MethodTestSub() self.assertTrue(ob.PublicMethod() == "public") @@ -169,16 +131,12 @@ def test_method_descriptor_abuse(self): """Test method descriptor abuse.""" desc = MethodTest.__dict__['PublicMethod'] - def test(): + with self.assertRaises(TypeError): desc.__get__(0, 0) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(AttributeError): desc.__set__(0, 0) - self.assertRaises(AttributeError, test) - def test_method_docstrings(self): """Test standard method docstring generation""" method = MethodTest.GetType @@ -319,12 +277,10 @@ def test_value_out_params(self): self.assertTrue(result[0] == True) self.assertTrue(result[1] == 42) - def test(): + with self.assertRaises(TypeError): MethodTest.TestValueOutParams("hi", None) # None cannot be converted to a value type like int, long, etc. - self.assertRaises(TypeError, test) - def test_value_ref_params(self): """Test use of value type byref parameters.""" result = MethodTest.TestValueRefParams("hi", 1) @@ -333,12 +289,10 @@ def test_value_ref_params(self): self.assertTrue(result[0] == True) self.assertTrue(result[1] == 42) - def test(): + with self.assertRaises(TypeError): MethodTest.TestValueRefParams("hi", None) # None cannot be converted to a value type like int, long, etc. - self.assertRaises(TypeError, test) - def test_object_out_params(self): """Test use of object out-parameters.""" result = MethodTest.TestObjectOutParams("hi", MethodTest()) @@ -375,12 +329,10 @@ def test_struct_out_params(self): self.assertTrue(result[0] == True) self.assertTrue(isinstance(result[1], System.Guid)) - def test(): + with self.assertRaises(TypeError): MethodTest.TestValueRefParams("hi", None) # None cannot be converted to a value type like a struct - self.assertRaises(TypeError, test) - def test_struct_ref_params(self): """Test use of struct byref parameters.""" result = MethodTest.TestStructRefParams("hi", System.Guid.NewGuid()) @@ -389,34 +341,28 @@ def test_struct_ref_params(self): self.assertTrue(result[0] == True) self.assertTrue(isinstance(result[1], System.Guid)) - def test(): + with self.assertRaises(TypeError): MethodTest.TestValueRefParams("hi", None) # None cannot be converted to a value type like a struct - self.assertRaises(TypeError, test) - def test_void_single_out_param(self): """Test void method with single out-parameter.""" result = MethodTest.TestVoidSingleOutParam(9) self.assertTrue(result == 42) - def test(): + with self.assertRaises(TypeError): MethodTest.TestVoidSingleOutParam(None) # None cannot be converted to a value type - self.assertRaises(TypeError, test) - def test_void_single_ref_param(self): """Test void method with single ref-parameter.""" result = MethodTest.TestVoidSingleRefParam(9) self.assertTrue(result == 42) - def test(): + with self.assertRaises(TypeError): MethodTest.TestVoidSingleRefParam(None) # None cannot be converted to a value type - self.assertRaises(TypeError, test) - def test_single_default_param(self): """Test void method with single ref-parameter.""" result = MethodTest.TestSingleDefaultParam() @@ -735,28 +681,20 @@ def test_overload_selection_with_array_types(self): def test_explicit_overload_selection_failure(self): """Check that overload selection fails correctly.""" - def test(): + with self.assertRaises(TypeError): value = MethodTest.Overloaded.__overloads__[System.Type](True) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): value = MethodTest.Overloaded.__overloads__[int, int](1, 1) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): value = MethodTest.Overloaded.__overloads__[str, int, int]( "", 1, 1 ) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): value = MethodTest.Overloaded.__overloads__[int, long](1) - self.assertRaises(TypeError, test) - def test_we_can_bind_to_encoding_get_string(self): """Check that we can bind to the Encoding.GetString method with variables.""" diff --git a/src/tests/test_module.py b/src/tests/test_module.py index 998124d67..ad27cae9b 100644 --- a/src/tests/test_module.py +++ b/src/tests/test_module.py @@ -244,13 +244,10 @@ def test_implicit_load_already_valid_namespace(self): self.assertTrue(isCLRClass(System.UriBuilder)) def test_import_non_existant_module(self): - """Test import failure for a non-existant module.""" - - def test(): + """Test import failure for a non-existent module.""" + with self.assertRaises(ImportError): import System.SpamSpamSpam - self.assertTrue(ImportError, test) - def test_lookup_no_namespace_type(self): """Test lookup of types without a qualified namespace.""" import Python.Test @@ -260,17 +257,13 @@ def test_lookup_no_namespace_type(self): def test_module_lookup_recursion(self): """Test for recursive lookup handling.""" - def test1(): + with self.assertRaises(ImportError): from System import System - self.assertTrue(ImportError, test1) - - def test2(): + with self.assertRaises(AttributeError): import System x = System.System - self.assertTrue(AttributeError, test2) - def test_module_get_attr(self): """Test module getattr behavior.""" import System @@ -281,16 +274,12 @@ def test_module_get_attr(self): module = System.Xml self.assertTrue(isCLRModule(module)) - def test(): + with self.assertRaises(AttributeError): spam = System.Spam - self.assertTrue(AttributeError, test) - - def test(): + with self.assertRaises(TypeError): spam = getattr(System, 1) - self.assertTrue(TypeError, test) - def test_module_attr_abuse(self): """Test handling of attempts to set module attributes.""" @@ -310,21 +299,15 @@ def test_module_type_abuse(self): import System mtype = type(System) - def test(): + with self.assertRaises(TypeError): mtype.__getattribute__(0, 'spam') - self.assertTrue(TypeError, test) - - def test(): + with self.assertRaises(TypeError): mtype.__setattr__(0, 'spam', 1) - self.assertTrue(TypeError, test) - - def test(): + with self.assertRaises(TypeError): mtype.__repr__(0) - self.assertTrue(TypeError, test) - def test_clr_list_assemblies(self): from clr import ListAssemblies verbose = list(ListAssemblies(True)) @@ -342,8 +325,8 @@ def test_clr_add_reference(self): assyName = assy.GetName().Name self.assertEqual(assyName, name) - self.assertRaises(FileNotFoundException, - AddReference, "somethingtotallysilly") + with self.assertRaises(FileNotFoundException): + AddReference("somethingtotallysilly") def test_assembly_load_thread_safety(self): import time diff --git a/src/tests/test_property.py b/src/tests/test_property.py index d8d967658..8f1d5f9e1 100644 --- a/src/tests/test_property.py +++ b/src/tests/test_property.py @@ -16,11 +16,9 @@ def test_public_instance_property(self): ob.PublicProperty = 1 self.assertTrue(ob.PublicProperty == 1) - def test(): + with self.assertRaises(TypeError): del PropertyTest().PublicProperty - self.assertRaises(TypeError, test) - def test_public_static_property(self): """Test public static properties.""" ob = PropertyTest() @@ -33,16 +31,12 @@ def test_public_static_property(self): ob.PublicStaticProperty = 0 self.assertTrue(ob.PublicStaticProperty == 0) - def test(): + with self.assertRaises(TypeError): del PropertyTest.PublicStaticProperty - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): del PropertyTest().PublicStaticProperty - self.assertRaises(TypeError, test) - def test_protected_instance_property(self): """Test protected instance properties.""" ob = PropertyTest() @@ -51,11 +45,9 @@ def test_protected_instance_property(self): ob.ProtectedProperty = 1 self.assertTrue(ob.ProtectedProperty == 1) - def test(): + with self.assertRaises(TypeError): del PropertyTest().ProtectedProperty - self.assertRaises(TypeError, test) - def test_protected_static_property(self): """Test protected static properties.""" ob = PropertyTest() @@ -68,51 +60,35 @@ def test_protected_static_property(self): ob.ProtectedStaticProperty = 0 self.assertTrue(ob.ProtectedStaticProperty == 0) - def test(): + with self.assertRaises(TypeError): del PropertyTest.ProtectedStaticProperty - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): del PropertyTest().ProtectedStaticProperty - self.assertRaises(TypeError, test) - def test_internal_property(self): """Test internal properties.""" - def test(): - return PropertyTest().InternalProperty - - self.assertRaises(AttributeError, test) - - def test(): - return PropertyTest().InternalStaticProperty + with self.assertRaises(AttributeError): + PropertyTest().InternalProperty - self.assertRaises(AttributeError, test) + with self.assertRaises(AttributeError): + PropertyTest().InternalStaticProperty - def test(): - return PropertyTest.InternalStaticProperty - - self.assertRaises(AttributeError, test) + with self.assertRaises(AttributeError): + PropertyTest.InternalStaticProperty def test_private_property(self): """Test private properties.""" - def test(): - return PropertyTest().PrivateProperty - - self.assertRaises(AttributeError, test) - - def test(): - return PropertyTest().PrivateStaticProperty - - self.assertRaises(AttributeError, test) + with self.assertRaises(AttributeError): + PropertyTest().PrivateProperty - def test(): - return PropertyTest.PrivateStaticProperty + with self.assertRaises(AttributeError): + PropertyTest().PrivateStaticProperty - self.assertRaises(AttributeError, test) + with self.assertRaises(AttributeError): + PropertyTest.PrivateStaticProperty def test_property_descriptor_get_set(self): """Test property descriptor get / set.""" @@ -140,26 +116,20 @@ def test_property_descriptor_get_set(self): def test_property_descriptor_wrong_type(self): """Test setting a property using a value of the wrong type.""" - def test(): + with self.assertRaises(TypeError): ob = PropertyTest() ob.PublicProperty = "spam" - self.assertTrue(TypeError, test) - def test_property_descriptor_abuse(self): """Test property descriptor abuse.""" desc = PropertyTest.__dict__['PublicProperty'] - def test(): + with self.assertRaises(TypeError): desc.__get__(0, 0) - self.assertRaises(TypeError, test) - - def test(): + with self.assertRaises(TypeError): desc.__set__(0, 0) - self.assertRaises(TypeError, test) - def test_interface_property(self): """Test properties of interfaces. Added after a bug report that an IsAbstract check was inappropriate and prevented diff --git a/src/tests/test_suite/test_import.py b/src/tests/test_suite/test_import.py index baea6d5cf..9bae9ca5f 100644 --- a/src/tests/test_suite/test_import.py +++ b/src/tests/test_suite/test_import.py @@ -10,10 +10,8 @@ def test_relative_missing_import(self): """Test that a relative missing import doesn't crash. Some modules use this to check if a package is installed. Relative import in the site-packages folder""" - try: + with self.assertRaises(ImportError): from . import _missing_import - except ImportError: - pass def test_suite(): From 8c3fe2b49cccbde90d765dffd3c85fd591e06dca Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sun, 22 Jan 2017 01:59:32 -0700 Subject: [PATCH 09/13] Format for pep8 and linters Fix max min nameclash --- src/tests/leaktest.py | 12 +- src/tests/profile.py | 4 +- src/tests/runtests.py | 2 +- src/tests/stress.py | 35 +-- src/tests/stresstest.py | 2 +- src/tests/test_array.py | 340 ++++++++++---------- src/tests/test_class.py | 40 +-- src/tests/test_compat.py | 46 +-- src/tests/test_constructors.py | 4 +- src/tests/test_conversion.py | 46 +-- src/tests/test_delegate.py | 20 +- src/tests/test_engine.py | 9 +- src/tests/test_enum.py | 3 +- src/tests/test_event.py | 42 ++- src/tests/test_exceptions.py | 25 +- src/tests/test_field.py | 12 +- src/tests/test_generic.py | 426 +++++++++++++------------- src/tests/test_indexer.py | 175 +++++------ src/tests/test_interface.py | 7 +- src/tests/test_method.py | 186 ++++++----- src/tests/test_module.py | 65 ++-- src/tests/test_property.py | 14 +- src/tests/test_subclass.py | 8 +- src/tests/test_suite/test_callback.py | 12 +- src/tests/test_thread.py | 9 +- src/tests/utils.py | 14 +- 26 files changed, 763 insertions(+), 795 deletions(-) diff --git a/src/tests/leaktest.py b/src/tests/leaktest.py index a54774566..2167060ad 100644 --- a/src/tests/leaktest.py +++ b/src/tests/leaktest.py @@ -43,10 +43,10 @@ def end_test(self): end = System.Environment.WorkingSet diff = end - start if diff > 0: - diff = '+%d' % diff + diff = '+{0}'.format(diff) else: - diff = '%d' % diff - print(" start: %d end: %d diff: %s" % (start, end, diff)) + diff = '{0}'.format(diff) + print(" start: {0} end: {1} diff: {2}".format(start, end, diff)) print("") def run(self): @@ -203,10 +203,10 @@ def test_events(self): testob.PublicEvent -= EventTest.StaticHandler # Function event handler - dict = {'value': None} + dict_ = {'value': None} - def handler(sender, args, dict=dict): - dict['value'] = args.value + def handler(sender, args, dict_=dict_): + dict_['value'] = args.value testob.PublicEvent += handler testob.PublicEvent(testob, TestEventArgs(10)) diff --git a/src/tests/profile.py b/src/tests/profile.py index ddc076e7b..f6576ddce 100644 --- a/src/tests/profile.py +++ b/src/tests/profile.py @@ -26,12 +26,12 @@ def main(): start = time.clock() for i in range(50): - print('iteration: %d' % i) + print('iteration: {0:d}'.format(i)) runtests.main() stop = time.clock() took = str(stop - start) - print('Total Time: %s' % took) + print('Total Time: {0}'.format(took)) for item in gc.get_objects(): print(item, sys.getrefcount(item)) diff --git a/src/tests/runtests.py b/src/tests/runtests.py index 3b7ffa08e..919d4b7e5 100644 --- a/src/tests/runtests.py +++ b/src/tests/runtests.py @@ -58,7 +58,7 @@ def remove_pyc(): path = os.path.dirname(os.path.abspath(__file__)) for name in test_modules: - pyc = os.path.join(path, "%s.pyc" % name) + pyc = os.path.join(path, "{0}.pyc".format(name)) if os.path.isfile(pyc): os.unlink(pyc) diff --git a/src/tests/stress.py b/src/tests/stress.py index ebc975d38..2ffe06958 100644 --- a/src/tests/stress.py +++ b/src/tests/stress.py @@ -18,12 +18,7 @@ import time from _compat import range, thread - - -def dprint(msg): - # Debugging helper to trace thread-related tests. - if 1: - print(msg) +from utils import dprint class StressTest(object): @@ -35,47 +30,47 @@ def __init__(self): self.module = runtests self.done = [] - def markStart(self): + def mark_start(self): self._start = time.clock() - def markFinish(self): + def mark_finish(self): self._finish = time.clock() def elapsed(self): return self._finish - self._start - def printGCReport(self): + def print_gc_report(self): for item in gc.get_objects(): print(item, sys.getrefcount(item)) - def runThread(self, iterations): + def run_thread(self, iterations): thread_id = thread.get_ident() - dprint("thread %s starting..." % thread_id) + dprint("thread {0} starting...".format(thread_id)) time.sleep(0.1) for i in range(iterations): - dprint("thread %s iter %d start" % (thread_id, i)) + dprint("thread {0} iter {1} start".format(thread_id, i)) self.module.main() - dprint("thread %s iter %d end" % (thread_id, i)) + dprint("thread {0} iter {1} end".format(thread_id, i)) self.done.append(None) - dprint("thread %s done" % thread_id) + dprint("thread {0} done".format(thread_id)) - def stressTest(self, iterations=1, threads=1): + def stress_test(self, iterations=1, threads=1): args = (iterations,) - self.markStart() + self.mark_start() for _ in range(threads): - thread = threading.Thread(target=self.runThread, args=args) + thread = threading.Thread(target=self.run_thread, args=args) thread.start() while len(self.done) < (iterations * threads): dprint(len(self.done)) time.sleep(0.1) - self.markFinish() + self.mark_finish() took = self.elapsed() - self.printGCReport() + self.print_gc_report() def main(): test = StressTest() - test.stressTest(2, 10) + test.stress_test(2, 10) if __name__ == '__main__': diff --git a/src/tests/stresstest.py b/src/tests/stresstest.py index 6c02bf566..947959239 100644 --- a/src/tests/stresstest.py +++ b/src/tests/stresstest.py @@ -50,7 +50,7 @@ def main(): stop = time.clock() took = str(stop - start) - print('Total Time: %s' % took) + print('Total Time: {0}'.format(took)) for i in gc.get_objects(): print(i) diff --git a/src/tests/test_array.py b/src/tests/test_array.py index a107253c6..bcd50e386 100644 --- a/src/tests/test_array.py +++ b/src/tests/test_array.py @@ -60,14 +60,14 @@ def test_internal_array(self): with self.assertRaises(AttributeError): ob = Test.InternalArrayTest() - items = ob.items + _ = ob.items def test_private_array(self): """Test private arrays.""" with self.assertRaises(AttributeError): ob = Test.PrivateArrayTest() - items = ob.items + _ = ob.items def test_array_bounds_checking(self): """Test array bounds checking.""" @@ -89,7 +89,7 @@ def test_array_bounds_checking(self): with self.assertRaises(IndexError): ob = Test.Int32ArrayTest() - ob.items[5] + _ = ob.items[5] with self.assertRaises(IndexError): ob = Test.Int32ArrayTest() @@ -141,7 +141,7 @@ def test_boolean_array(self): with self.assertRaises(TypeError): ob = Test.ByteArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.ByteArrayTest() @@ -157,32 +157,32 @@ def test_byte_array(self): self.assertTrue(items[0] == 0) self.assertTrue(items[4] == 4) - max = 255 - min = 0 + max_ = 255 + min_ = 0 - items[0] = max - self.assertTrue(items[0] == max) + items[0] = max_ + self.assertTrue(items[0] == max_) - items[0] = min - self.assertTrue(items[0] == min) + items[0] = min_ + self.assertTrue(items[0] == min_) - items[-4] = max - self.assertTrue(items[-4] == max) + items[-4] = max_ + self.assertTrue(items[-4] == max_) - items[-1] = min - self.assertTrue(items[-1] == min) + items[-1] = min_ + self.assertTrue(items[-1] == min_) with self.assertRaises(OverflowError): ob = Test.ByteArrayTest() - ob.items[0] = max + 1 + ob.items[0] = max_ + 1 with self.assertRaises(OverflowError): ob = Test.ByteArrayTest() - ob.items[0] = min - 1 + ob.items[0] = min_ - 1 with self.assertRaises(TypeError): ob = Test.ByteArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.ByteArrayTest() @@ -198,32 +198,32 @@ def test_sbyte_array(self): self.assertTrue(items[0] == 0) self.assertTrue(items[4] == 4) - max = 127 - min = -128 + max_ = 127 + min_ = -128 - items[0] = max - self.assertTrue(items[0] == max) + items[0] = max_ + self.assertTrue(items[0] == max_) - items[0] = min - self.assertTrue(items[0] == min) + items[0] = min_ + self.assertTrue(items[0] == min_) - items[-4] = max - self.assertTrue(items[-4] == max) + items[-4] = max_ + self.assertTrue(items[-4] == max_) - items[-1] = min - self.assertTrue(items[-1] == min) + items[-1] = min_ + self.assertTrue(items[-1] == min_) with self.assertRaises(OverflowError): ob = Test.SByteArrayTest() - ob.items[0] = max + 1 + ob.items[0] = max_ + 1 with self.assertRaises(OverflowError): ob = Test.SByteArrayTest() - ob.items[0] = min - 1 + ob.items[0] = min_ - 1 with self.assertRaises(TypeError): ob = Test.SByteArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.SByteArrayTest() @@ -239,24 +239,24 @@ def test_char_array(self): self.assertTrue(items[0] == 'a') self.assertTrue(items[4] == 'e') - max = unichr(65535) - min = unichr(0) + max_ = unichr(65535) + min_ = unichr(0) - items[0] = max - self.assertTrue(items[0] == max) + items[0] = max_ + self.assertTrue(items[0] == max_) - items[0] = min - self.assertTrue(items[0] == min) + items[0] = min_ + self.assertTrue(items[0] == min_) - items[-4] = max - self.assertTrue(items[-4] == max) + items[-4] = max_ + self.assertTrue(items[-4] == max_) - items[-1] = min - self.assertTrue(items[-1] == min) + items[-1] = min_ + self.assertTrue(items[-1] == min_) with self.assertRaises(TypeError): ob = Test.CharArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.CharArrayTest() @@ -272,32 +272,32 @@ def test_int16_array(self): self.assertTrue(items[0] == 0) self.assertTrue(items[4] == 4) - max = 32767 - min = -32768 + max_ = 32767 + min_ = -32768 - items[0] = max - self.assertTrue(items[0] == max) + items[0] = max_ + self.assertTrue(items[0] == max_) - items[0] = min - self.assertTrue(items[0] == min) + items[0] = min_ + self.assertTrue(items[0] == min_) - items[-4] = max - self.assertTrue(items[-4] == max) + items[-4] = max_ + self.assertTrue(items[-4] == max_) - items[-1] = min - self.assertTrue(items[-1] == min) + items[-1] = min_ + self.assertTrue(items[-1] == min_) with self.assertRaises(OverflowError): ob = Test.Int16ArrayTest() - ob.items[0] = max + 1 + ob.items[0] = max_ + 1 with self.assertRaises(OverflowError): ob = Test.Int16ArrayTest() - ob.items[0] = min - 1 + ob.items[0] = min_ - 1 with self.assertRaises(TypeError): ob = Test.Int16ArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.Int16ArrayTest() @@ -313,32 +313,32 @@ def test_int32_array(self): self.assertTrue(items[0] == 0) self.assertTrue(items[4] == 4) - max = 2147483647 - min = -2147483648 + max_ = 2147483647 + min_ = -2147483648 - items[0] = max - self.assertTrue(items[0] == max) + items[0] = max_ + self.assertTrue(items[0] == max_) - items[0] = min - self.assertTrue(items[0] == min) + items[0] = min_ + self.assertTrue(items[0] == min_) - items[-4] = max - self.assertTrue(items[-4] == max) + items[-4] = max_ + self.assertTrue(items[-4] == max_) - items[-1] = min - self.assertTrue(items[-1] == min) + items[-1] = min_ + self.assertTrue(items[-1] == min_) with self.assertRaises(OverflowError): ob = Test.Int32ArrayTest() - ob.items[0] = max + 1 + ob.items[0] = max_ + 1 with self.assertRaises(OverflowError): ob = Test.Int32ArrayTest() - ob.items[0] = min - 1 + ob.items[0] = min_ - 1 with self.assertRaises(TypeError): ob = Test.Int32ArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.Int32ArrayTest() @@ -354,32 +354,32 @@ def test_int64_array(self): self.assertTrue(items[0] == 0) self.assertTrue(items[4] == 4) - max = long(9223372036854775807) - min = long(-9223372036854775808) + max_ = long(9223372036854775807) + min_ = long(-9223372036854775808) - items[0] = max - self.assertTrue(items[0] == max) + items[0] = max_ + self.assertTrue(items[0] == max_) - items[0] = min - self.assertTrue(items[0] == min) + items[0] = min_ + self.assertTrue(items[0] == min_) - items[-4] = max - self.assertTrue(items[-4] == max) + items[-4] = max_ + self.assertTrue(items[-4] == max_) - items[-1] = min - self.assertTrue(items[-1] == min) + items[-1] = min_ + self.assertTrue(items[-1] == min_) with self.assertRaises(OverflowError): ob = Test.Int64ArrayTest() - ob.items[0] = max + 1 + ob.items[0] = max_ + 1 with self.assertRaises(OverflowError): ob = Test.Int64ArrayTest() - ob.items[0] = min - 1 + ob.items[0] = min_ - 1 with self.assertRaises(TypeError): ob = Test.Int64ArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.Int64ArrayTest() @@ -395,32 +395,32 @@ def test_uint16_array(self): self.assertTrue(items[0] == 0) self.assertTrue(items[4] == 4) - max = 65535 - min = 0 + max_ = 65535 + min_ = 0 - items[0] = max - self.assertTrue(items[0] == max) + items[0] = max_ + self.assertTrue(items[0] == max_) - items[0] = min - self.assertTrue(items[0] == min) + items[0] = min_ + self.assertTrue(items[0] == min_) - items[-4] = max - self.assertTrue(items[-4] == max) + items[-4] = max_ + self.assertTrue(items[-4] == max_) - items[-1] = min - self.assertTrue(items[-1] == min) + items[-1] = min_ + self.assertTrue(items[-1] == min_) with self.assertRaises(OverflowError): ob = Test.UInt16ArrayTest() - ob.items[0] = max + 1 + ob.items[0] = max_ + 1 with self.assertRaises(OverflowError): ob = Test.UInt16ArrayTest() - ob.items[0] = min - 1 + ob.items[0] = min_ - 1 with self.assertRaises(TypeError): ob = Test.UInt16ArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.UInt16ArrayTest() @@ -436,32 +436,32 @@ def test_uint32_array(self): self.assertTrue(items[0] == 0) self.assertTrue(items[4] == 4) - max = long(4294967295) - min = 0 + max_ = long(4294967295) + min_ = 0 - items[0] = max - self.assertTrue(items[0] == max) + items[0] = max_ + self.assertTrue(items[0] == max_) - items[0] = min - self.assertTrue(items[0] == min) + items[0] = min_ + self.assertTrue(items[0] == min_) - items[-4] = max - self.assertTrue(items[-4] == max) + items[-4] = max_ + self.assertTrue(items[-4] == max_) - items[-1] = min - self.assertTrue(items[-1] == min) + items[-1] = min_ + self.assertTrue(items[-1] == min_) with self.assertRaises(OverflowError): ob = Test.UInt32ArrayTest() - ob.items[0] = max + 1 + ob.items[0] = max_ + 1 with self.assertRaises(OverflowError): ob = Test.UInt32ArrayTest() - ob.items[0] = min - 1 + ob.items[0] = min_ - 1 with self.assertRaises(TypeError): ob = Test.UInt32ArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.UInt32ArrayTest() @@ -477,32 +477,32 @@ def test_uint64_array(self): self.assertTrue(items[0] == 0) self.assertTrue(items[4] == 4) - max = long(18446744073709551615) - min = 0 + max_ = long(18446744073709551615) + min_ = 0 - items[0] = max - self.assertTrue(items[0] == max) + items[0] = max_ + self.assertTrue(items[0] == max_) - items[0] = min - self.assertTrue(items[0] == min) + items[0] = min_ + self.assertTrue(items[0] == min_) - items[-4] = max - self.assertTrue(items[-4] == max) + items[-4] = max_ + self.assertTrue(items[-4] == max_) - items[-1] = min - self.assertTrue(items[-1] == min) + items[-1] = min_ + self.assertTrue(items[-1] == min_) with self.assertRaises(OverflowError): ob = Test.UInt64ArrayTest() - ob.items[0] = max + 1 + ob.items[0] = max_ + 1 with self.assertRaises(OverflowError): ob = Test.UInt64ArrayTest() - ob.items[0] = min - 1 + ob.items[0] = min_ - 1 with self.assertRaises(TypeError): ob = Test.UInt64ArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.UInt64ArrayTest() @@ -518,24 +518,24 @@ def test_single_array(self): self.assertTrue(items[0] == 0.0) self.assertTrue(items[4] == 4.0) - max = 3.402823e38 - min = -3.402823e38 + max_ = 3.402823e38 + min_ = -3.402823e38 - items[0] = max - self.assertTrue(items[0] == max) + items[0] = max_ + self.assertTrue(items[0] == max_) - items[0] = min - self.assertTrue(items[0] == min) + items[0] = min_ + self.assertTrue(items[0] == min_) - items[-4] = max - self.assertTrue(items[-4] == max) + items[-4] = max_ + self.assertTrue(items[-4] == max_) - items[-1] = min - self.assertTrue(items[-1] == min) + items[-1] = min_ + self.assertTrue(items[-1] == min_) with self.assertRaises(TypeError): ob = Test.SingleArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.SingleArrayTest() @@ -551,24 +551,24 @@ def test_double_array(self): self.assertTrue(items[0] == 0.0) self.assertTrue(items[4] == 4.0) - max = 1.7976931348623157e308 - min = -1.7976931348623157e308 + max_ = 1.7976931348623157e308 + min_ = -1.7976931348623157e308 - items[0] = max - self.assertTrue(items[0] == max) + items[0] = max_ + self.assertTrue(items[0] == max_) - items[0] = min - self.assertTrue(items[0] == min) + items[0] = min_ + self.assertTrue(items[0] == min_) - items[-4] = max - self.assertTrue(items[-4] == max) + items[-4] = max_ + self.assertTrue(items[-4] == max_) - items[-1] = min - self.assertTrue(items[-1] == min) + items[-1] = min_ + self.assertTrue(items[-1] == min_) with self.assertRaises(TypeError): ob = Test.DoubleArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.DoubleArrayTest() @@ -602,7 +602,7 @@ def test_decimal_array(self): with self.assertRaises(TypeError): ob = Test.DecimalArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.DecimalArrayTest() @@ -632,7 +632,7 @@ def test_string_array(self): with self.assertRaises(TypeError): ob = Test.StringArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.Int64ArrayTest() @@ -667,7 +667,7 @@ def test_enum_array(self): with self.assertRaises(TypeError): ob = Test.EnumArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.EnumArrayTest() @@ -704,7 +704,7 @@ def test_object_array(self): with self.assertRaises(TypeError): ob = Test.ObjectArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.ObjectArrayTest() @@ -737,7 +737,7 @@ def test_null_array(self): with self.assertRaises(TypeError): ob = Test.NullArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] def test_interface_array(self): """Test interface arrays.""" @@ -771,7 +771,7 @@ def test_interface_array(self): with self.assertRaises(TypeError): ob = Test.InterfaceArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.InterfaceArrayTest() @@ -809,7 +809,7 @@ def test_typed_array(self): with self.assertRaises(TypeError): ob = Test.TypedArrayTest() - v = ob.items["wrong"] + _ = ob.items["wrong"] with self.assertRaises(TypeError): ob = Test.TypedArrayTest() @@ -848,32 +848,32 @@ def test_multi_dimensional_array(self): self.assertTrue(items[4, 3] == 23) self.assertTrue(items[4, 4] == 24) - max = 2147483647 - min = -2147483648 + max_ = 2147483647 + min_ = -2147483648 - items[0, 0] = max - self.assertTrue(items[0, 0] == max) + items[0, 0] = max_ + self.assertTrue(items[0, 0] == max_) - items[0, 0] = min - self.assertTrue(items[0, 0] == min) + items[0, 0] = min_ + self.assertTrue(items[0, 0] == min_) - items[-4, 0] = max - self.assertTrue(items[-4, 0] == max) + items[-4, 0] = max_ + self.assertTrue(items[-4, 0] == max_) - items[-1, -1] = min - self.assertTrue(items[-1, -1] == min) + items[-1, -1] = min_ + self.assertTrue(items[-1, -1] == min_) with self.assertRaises(OverflowError): ob = Test.MultiDimensionalArrayTest() - ob.items[0, 0] = max + 1 + ob.items[0, 0] = max_ + 1 with self.assertRaises(OverflowError): ob = Test.MultiDimensionalArrayTest() - ob.items[0, 0] = min - 1 + ob.items[0, 0] = min_ - 1 with self.assertRaises(TypeError): ob = Test.MultiDimensionalArrayTest() - v = ob.items["wrong", 0] + _ = ob.items["wrong", 0] with self.assertRaises(TypeError): ob = Test.MultiDimensionalArrayTest() @@ -918,7 +918,7 @@ def test_tuple_nested_array_conversion(self): items = [] for i in range(10): subs = [] - for n in range(10): + for _ in range(10): subs.append(Spam(str(i))) items.append(tuple(subs)) items = tuple(items) @@ -950,7 +950,7 @@ def test_list_nested_array_conversion(self): items = [] for i in range(10): subs = [] - for n in range(10): + for _ in range(10): subs.append(Spam(str(i))) items.append(subs) @@ -981,7 +981,7 @@ def test_sequence_nested_array_conversion(self): items = UserList() for i in range(10): subs = UserList() - for n in range(10): + for _ in range(10): subs.append(Spam(str(i))) items.append(subs) @@ -1014,12 +1014,12 @@ def test_tuple_array_conversion_type_checking(self): with self.assertRaises(TypeError): temp = list(items) temp[1] = 1 - result = ArrayConversionTest.EchoRange(tuple(temp)) + _ = ArrayConversionTest.EchoRange(tuple(temp)) with self.assertRaises(TypeError): temp = list(items) temp[1] = "spam" - result = ArrayConversionTest.EchoRange(tuple(temp)) + _ = ArrayConversionTest.EchoRange(tuple(temp)) def test_list_array_conversion_type_checking(self): """Test error handling for list conversion to array arguments.""" @@ -1042,11 +1042,11 @@ def test_list_array_conversion_type_checking(self): with self.assertRaises(TypeError): items[1] = 1 - result = ArrayConversionTest.EchoRange(items) + _ = ArrayConversionTest.EchoRange(items) with self.assertRaises(TypeError): items[1] = "spam" - result = ArrayConversionTest.EchoRange(items) + _ = ArrayConversionTest.EchoRange(items) def test_sequence_array_conversion_type_checking(self): """Test error handling for sequence conversion to array arguments.""" @@ -1069,11 +1069,11 @@ def test_sequence_array_conversion_type_checking(self): with self.assertRaises(TypeError): items[1] = 1 - result = ArrayConversionTest.EchoRange(items) + _ = ArrayConversionTest.EchoRange(items) with self.assertRaises(TypeError): items[1] = "spam" - result = ArrayConversionTest.EchoRange(items) + _ = ArrayConversionTest.EchoRange(items) def test_md_array_conversion(self): """Test passing of multi-dimensional array arguments.""" diff --git a/src/tests/test_class.py b/src/tests/test_class.py index 373bb326d..80cee9009 100644 --- a/src/tests/test_class.py +++ b/src/tests/test_class.py @@ -1,4 +1,5 @@ # -*- coding: utf-8 -*- +# TODO: Add tests for ClassicClass, NewStyleClass? import unittest @@ -8,28 +9,16 @@ from _compat import DictProxyType, range -class ClassicClass: - def kind(self): - return 'classic' - - -class NewStyleClass(object): - def kind(self): - return 'new-style' - - class ClassTests(unittest.TestCase): """Test CLR class support.""" def test_basic_reference_type(self): """Test usage of CLR defined reference types.""" - String = System.String - self.assertEquals(String.Empty, "") + self.assertEquals(System.String.Empty, "") def test_basic_value_type(self): """Test usage of CLR defined value types.""" - Int32 = System.Int32 - self.assertEquals(Int32.MaxValue, 2147483647) + self.assertEquals(System.Int32.MaxValue, 2147483647) def test_class_standard_attrs(self): """Test standard class attributes.""" @@ -63,14 +52,14 @@ def test_non_public_class(self): from Python.Test import InternalClass with self.assertRaises(AttributeError): - x = Test.InternalClass + _ = Test.InternalClass def test_basic_subclass(self): """Test basic subclass of a managed class.""" from System.Collections import Hashtable class MyTable(Hashtable): - def howMany(self): + def how_many(self): return self.Count table = MyTable() @@ -80,16 +69,14 @@ def howMany(self): self.assertTrue(len(table.__class__.__bases__) == 1) self.assertTrue(table.__class__.__bases__[0] == Hashtable) - self.assertTrue(table.howMany() == 0) + self.assertTrue(table.how_many() == 0) self.assertTrue(table.Count == 0) table.set_Item('one', 'one') - self.assertTrue(table.howMany() == 1) + self.assertTrue(table.how_many() == 1) self.assertTrue(table.Count == 1) - MyTable = None - def test_subclass_with_no_arg_constructor(self): """Test subclass of a managed class with a no-arg constructor.""" from Python.Test import ClassCtorTest1 @@ -99,7 +86,7 @@ def __init__(self, name): self.name = name # This failed in earlier versions - inst = SubClass('test') + _ = SubClass('test') def test_subclass_with_various_constructors(self): """Test subclass of a managed class with various constructors.""" @@ -145,19 +132,18 @@ def test_struct_construction(self): # test recursion # test - def test_ienumerable_iteration(self): """Test iteration over objects supporting IEnumerable.""" from Python.Test import ClassTest - list = ClassTest.GetArrayList() + list_ = ClassTest.GetArrayList() - for item in list: + for item in list_: self.assertTrue((item > -1) and (item < 10)) - dict = ClassTest.GetHashtable() + dict_ = ClassTest.GetHashtable() - for item in dict: + for item in dict_: cname = item.__class__.__name__ self.assertTrue(cname.endswith('DictionaryEntry')) @@ -214,7 +200,7 @@ def test_add_and_remove_class_attribute(self): from System import TimeSpan for _ in range(100): - TimeSpan.new_method = lambda self: self.TotalMinutes + TimeSpan.new_method = lambda self_: self_.TotalMinutes ts = TimeSpan.FromHours(1) self.assertTrue(ts.new_method() == 60) del TimeSpan.new_method diff --git a/src/tests/test_compat.py b/src/tests/test_compat.py index 6570f2c1c..c26bb9e5d 100644 --- a/src/tests/test_compat.py +++ b/src/tests/test_compat.py @@ -1,10 +1,11 @@ # -*- coding: utf-8 -*- +# TODO: Complete removal of methods below. Similar to test_module import types import unittest from _compat import ClassType, PY2, PY3, range -from utils import isCLRClass, isCLRModule, isCLRRootModule +from utils import is_clr_class, is_clr_module, is_clr_root_module class CompatibilityTests(unittest.TestCase): @@ -15,7 +16,7 @@ class CompatibilityTests(unittest.TestCase): def test_simple_import(self): """Test simple import.""" import CLR - self.assertTrue(isCLRRootModule(CLR)) + self.assertTrue(is_clr_root_module(CLR)) self.assertTrue(CLR.__name__ == 'clr') import sys @@ -35,7 +36,7 @@ def test_simple_import(self): def test_simple_import_with_alias(self): """Test simple import with aliasing.""" import CLR as myCLR - self.assertTrue(isCLRRootModule(myCLR)) + self.assertTrue(is_clr_root_module(myCLR)) self.assertTrue(myCLR.__name__ == 'clr') import sys as mySys @@ -55,11 +56,11 @@ def test_simple_import_with_alias(self): def test_dotted_name_import(self): """Test dotted-name import.""" import CLR.System - self.assertTrue(isCLRModule(CLR.System)) + self.assertTrue(is_clr_module(CLR.System)) self.assertTrue(CLR.System.__name__ == 'System') import System - self.assertTrue(isCLRModule(System)) + self.assertTrue(is_clr_module(System)) self.assertTrue(System.__name__ == 'System') self.assertTrue(System is CLR.System) @@ -71,11 +72,11 @@ def test_dotted_name_import(self): def test_dotted_name_import_with_alias(self): """Test dotted-name import with aliasing.""" import CLR.System as myCLRSystem - self.assertTrue(isCLRModule(myCLRSystem)) + self.assertTrue(is_clr_module(myCLRSystem)) self.assertTrue(myCLRSystem.__name__ == 'System') import System as mySystem - self.assertTrue(isCLRModule(mySystem)) + self.assertTrue(is_clr_module(mySystem)) self.assertTrue(mySystem.__name__ == 'System') self.assertTrue(mySystem is myCLRSystem) @@ -87,7 +88,7 @@ def test_dotted_name_import_with_alias(self): def test_simple_import_from(self): """Test simple 'import from'.""" from CLR import System - self.assertTrue(isCLRModule(System)) + self.assertTrue(is_clr_module(System)) self.assertTrue(System.__name__ == 'System') from xml import dom @@ -97,7 +98,7 @@ def test_simple_import_from(self): def test_simple_import_from_with_alias(self): """Test simple 'import from' with aliasing.""" from CLR import System as mySystem - self.assertTrue(isCLRModule(mySystem)) + self.assertTrue(is_clr_module(mySystem)) self.assertTrue(mySystem.__name__ == 'System') from xml import dom as myDom @@ -107,11 +108,11 @@ def test_simple_import_from_with_alias(self): def test_dotted_name_import_from(self): """Test dotted-name 'import from'.""" from CLR.System import Xml - self.assertTrue(isCLRModule(Xml)) + self.assertTrue(is_clr_module(Xml)) self.assertTrue(Xml.__name__ == 'System.Xml') from CLR.System.Xml import XmlDocument - self.assertTrue(isCLRClass(XmlDocument)) + self.assertTrue(is_clr_class(XmlDocument)) self.assertTrue(XmlDocument.__name__ == 'XmlDocument') from xml.dom import pulldom @@ -125,11 +126,11 @@ def test_dotted_name_import_from(self): def test_dotted_name_import_from_with_alias(self): """Test dotted-name 'import from' with aliasing.""" from CLR.System import Xml as myXml - self.assertTrue(isCLRModule(myXml)) + self.assertTrue(is_clr_module(myXml)) self.assertTrue(myXml.__name__ == 'System.Xml') from CLR.System.Xml import XmlDocument as myXmlDocument - self.assertTrue(isCLRClass(myXmlDocument)) + self.assertTrue(is_clr_class(myXmlDocument)) self.assertTrue(myXmlDocument.__name__ == 'XmlDocument') from xml.dom import pulldom as myPulldom @@ -145,12 +146,12 @@ def test_from_module_import_star(self): count = len(locals().keys()) m = __import__('CLR.System.Management', globals(), locals(), ['*']) self.assertTrue(m.__name__ == 'System.Management') - self.assertTrue(isCLRModule(m)) + self.assertTrue(is_clr_module(m)) self.assertTrue(len(locals().keys()) > count + 1) m2 = __import__('System.Management', globals(), locals(), ['*']) self.assertTrue(m2.__name__ == 'System.Management') - self.assertTrue(isCLRModule(m2)) + self.assertTrue(is_clr_module(m2)) self.assertTrue(len(locals().keys()) > count + 1) self.assertTrue(m is m2) @@ -179,7 +180,7 @@ def test_implicit_load_already_valid_namespace(self): # Python runtime to "do the right thing", allowing types from both # assemblies to be found in the CLR.System module implicitly. import CLR.System - self.assertTrue(isCLRClass(CLR.System.UriBuilder)) + self.assertTrue(is_clr_class(CLR.System.UriBuilder)) def test_import_non_existant_module(self): """Test import failure for a non-existent module.""" @@ -193,7 +194,7 @@ def test_lookup_no_namespace_type(self): """Test lookup of types without a qualified namespace.""" import CLR.Python.Test import CLR - self.assertTrue(isCLRClass(CLR.NoNamespaceType)) + self.assertTrue(is_clr_class(CLR.NoNamespaceType)) def test_module_lookup_recursion(self): """Test for recursive lookup handling.""" @@ -202,29 +203,30 @@ def test_module_lookup_recursion(self): with self.assertRaises(AttributeError): import CLR - x = CLR.CLR + _ = CLR.CLR def test_module_get_attr(self): """Test module getattr behavior.""" import CLR.System as System int_type = System.Int32 - self.assertTrue(isCLRClass(int_type)) + self.assertTrue(is_clr_class(int_type)) module = System.Xml - self.assertTrue(isCLRModule(module)) + self.assertTrue(is_clr_module(module)) with self.assertRaises(AttributeError): - spam = System.Spam + _ = System.Spam with self.assertRaises(TypeError): - spam = getattr(System, 1) + _ = getattr(System, 1) def test_multiple_imports(self): # import CLR did raise a Seg Fault once # test if the Exceptions.warn() method still causes it for _ in range(100): import CLR + _ = CLR def test_suite(): diff --git a/src/tests/test_constructors.py b/src/tests/test_constructors.py index b1f3aacb1..0039f9bf3 100644 --- a/src/tests/test_constructors.py +++ b/src/tests/test_constructors.py @@ -38,10 +38,10 @@ def test_subclass_constructor(self): """Test subclass constructor args""" from Python.Test import SubclassConstructorTest - class sub(System.Exception): + class Sub(System.Exception): pass - instance = sub() + instance = Sub() ob = SubclassConstructorTest(instance) self.assertTrue(isinstance(ob.value, System.Exception)) diff --git a/src/tests/test_conversion.py b/src/tests/test_conversion.py index 7423e2201..8400292d5 100644 --- a/src/tests/test_conversion.py +++ b/src/tests/test_conversion.py @@ -5,7 +5,7 @@ import System from Python.Test import ConversionTest -from _compat import indexbytes, long, range, unichr +from _compat import indexbytes, long, unichr class ConversionTests(unittest.TestCase): @@ -96,10 +96,10 @@ def test_sbyte_conversion(self): ConversionTest().SByteField = -129 with self.assertRaises(OverflowError): - value = System.SByte(128) + _ = System.SByte(128) with self.assertRaises(OverflowError): - value = System.SByte(-129) + _ = System.SByte(-129) def test_byte_conversion(self): """Test byte conversion.""" @@ -134,10 +134,10 @@ def test_byte_conversion(self): ConversionTest().ByteField = -1 with self.assertRaises(OverflowError): - value = System.Byte(256) + _ = System.Byte(256) with self.assertRaises(OverflowError): - value = System.Byte(-1) + _ = System.Byte(-1) def test_char_conversion(self): """Test char conversion.""" @@ -198,10 +198,10 @@ def test_int16_conversion(self): ConversionTest().Int16Field = -32769 with self.assertRaises(OverflowError): - value = System.Int16(32768) + _ = System.Int16(32768) with self.assertRaises(OverflowError): - value = System.Int16(-32769) + _ = System.Int16(-32769) def test_int32_conversion(self): """Test int32 conversion.""" @@ -236,10 +236,10 @@ def test_int32_conversion(self): ConversionTest().Int32Field = -2147483649 with self.assertRaises(OverflowError): - value = System.Int32(2147483648) + _ = System.Int32(2147483648) with self.assertRaises(OverflowError): - value = System.Int32(-2147483649) + _ = System.Int32(-2147483649) def test_int64_conversion(self): """Test int64 conversion.""" @@ -274,10 +274,10 @@ def test_int64_conversion(self): ConversionTest().Int64Field = long(-9223372036854775809) with self.assertRaises(OverflowError): - value = System.Int64(long(9223372036854775808)) + _ = System.Int64(long(9223372036854775808)) with self.assertRaises(OverflowError): - value = System.Int64(long(-9223372036854775809)) + _ = System.Int64(long(-9223372036854775809)) def test_uint16_conversion(self): """Test uint16 conversion.""" @@ -312,10 +312,10 @@ def test_uint16_conversion(self): ConversionTest().UInt16Field = -1 with self.assertRaises(OverflowError): - value = System.UInt16(65536) + _ = System.UInt16(65536) with self.assertRaises(OverflowError): - value = System.UInt16(-1) + _ = System.UInt16(-1) def test_uint32_conversion(self): """Test uint32 conversion.""" @@ -350,10 +350,10 @@ def test_uint32_conversion(self): ConversionTest().UInt32Field = -1 with self.assertRaises(OverflowError): - value = System.UInt32(long(4294967296)) + _ = System.UInt32(long(4294967296)) with self.assertRaises(OverflowError): - value = System.UInt32(-1) + _ = System.UInt32(-1) def test_uint64_conversion(self): """Test uint64 conversion.""" @@ -388,10 +388,10 @@ def test_uint64_conversion(self): ConversionTest().UInt64Field = -1 with self.assertRaises(OverflowError): - value = System.UInt64(long(18446744073709551616)) + _ = System.UInt64(long(18446744073709551616)) with self.assertRaises(OverflowError): - value = System.UInt64(-1) + _ = System.UInt64(-1) def test_single_conversion(self): """Test single conversion.""" @@ -426,10 +426,10 @@ def test_single_conversion(self): ConversionTest().SingleField = -3.402824e38 with self.assertRaises(OverflowError): - value = System.Single(3.402824e38) + _ = System.Single(3.402824e38) with self.assertRaises(OverflowError): - value = System.Single(-3.402824e38) + _ = System.Single(-3.402824e38) def test_double_conversion(self): """Test double conversion.""" @@ -464,10 +464,10 @@ def test_double_conversion(self): ConversionTest().DoubleField = -1.7976931348623159e308 with self.assertRaises(OverflowError): - value = System.Double(1.7976931348623159e308) + _ = System.Double(1.7976931348623159e308) with self.assertRaises(OverflowError): - value = System.Double(-1.7976931348623159e308) + _ = System.Double(-1.7976931348623159e308) def test_decimal_conversion(self): """Test decimal conversion.""" @@ -658,7 +658,7 @@ def test_byte_array_conversion(self): value = b"testing" ob.ByteArrayField = value array = ob.ByteArrayField - for i in range(len(value)): + for i, _ in enumerate(value): self.assertTrue(array[i] == indexbytes(value, i)) def test_sbyte_array_conversion(self): @@ -676,7 +676,7 @@ def test_sbyte_array_conversion(self): value = b"testing" ob.SByteArrayField = value array = ob.SByteArrayField - for i in range(len(value)): + for i, _ in enumerate(value): self.assertTrue(array[i] == indexbytes(value, i)) diff --git a/src/tests/test_delegate.py b/src/tests/test_delegate.py index 0c51c2937..1d0c30533 100644 --- a/src/tests/test_delegate.py +++ b/src/tests/test_delegate.py @@ -32,9 +32,10 @@ def test_global_delegate_visibility(self): with self.assertRaises(ImportError): from Python.Test import InternalDelegate + _ = InternalDelegate with self.assertRaises(AttributeError): - i = Test.InternalDelegate + _ = Test.InternalDelegate def test_nested_delegate_visibility(self): """Test visibility of nested delegates.""" @@ -45,10 +46,10 @@ def test_nested_delegate_visibility(self): self.assertTrue(ob.__name__ == 'ProtectedDelegate') with self.assertRaises(AttributeError): - ob = DelegateTest.InternalDelegate + _ = DelegateTest.InternalDelegate with self.assertRaises(AttributeError): - ob = DelegateTest.PrivateDelegate + _ = DelegateTest.PrivateDelegate def test_delegate_from_function(self): """Test delegate implemented with a Python function.""" @@ -187,13 +188,13 @@ def test_delegate_with_invalid_args(self): """Test delegate instantiation with invalid (non-callable) args.""" with self.assertRaises(TypeError): - d = StringDelegate(None) + _ = StringDelegate(None) with self.assertRaises(TypeError): - d = StringDelegate("spam") + _ = StringDelegate("spam") with self.assertRaises(TypeError): - d = StringDelegate(1) + _ = StringDelegate(1) def test_multicast_delegate(self): """Test multicast delegates.""" @@ -218,14 +219,12 @@ def test_subclass_delegate_fails(self): with self.assertRaises(TypeError): class Boom(PublicDelegate): pass + _ = Boom def test_delegate_equality(self): """Test delegate equality.""" - def sayhello(): - return "hello" - - d = StringDelegate(sayhello) + d = StringDelegate(hello_func) ob = DelegateTest() ob.stringDelegate = d self.assertTrue(ob.stringDelegate == d) @@ -242,7 +241,6 @@ def always_so_negative(): ob.CallBoolDelegate(d) self.assertTrue(not d()) - self.assertTrue(not ob.CallBoolDelegate(d)) # test async delegates diff --git a/src/tests/test_engine.py b/src/tests/test_engine.py index cfc019b5f..a39cb4aa8 100644 --- a/src/tests/test_engine.py +++ b/src/tests/test_engine.py @@ -13,9 +13,12 @@ class EngineTests(unittest.TestCase): def test_multiple_calls_to_initialize(self): """Test that multiple initialize calls are harmless.""" - PythonEngine.Initialize() - PythonEngine.Initialize() - PythonEngine.Initialize() + try: + PythonEngine.Initialize() + PythonEngine.Initialize() + PythonEngine.Initialize() + except BaseException: + self.fail("Initialize() raise an exception.") def test_import_module(self): """Test module import.""" diff --git a/src/tests/test_enum.py b/src/tests/test_enum.py index 170a47fd1..c24f5aabd 100644 --- a/src/tests/test_enum.py +++ b/src/tests/test_enum.py @@ -84,7 +84,7 @@ def test_instantiate_enum_fails(self): from System import DayOfWeek with self.assertRaises(TypeError): - ob = DayOfWeek() + _ = DayOfWeek() def test_subclass_enum_fails(self): """Test that subclassing of an enumeration fails.""" @@ -93,6 +93,7 @@ def test_subclass_enum_fails(self): with self.assertRaises(TypeError): class Boom(DayOfWeek): pass + _ = Boom def test_enum_set_member_fails(self): """Test that setattr operations on enumerations fail.""" diff --git a/src/tests/test_event.py b/src/tests/test_event.py index 64ecc615c..de337c00b 100644 --- a/src/tests/test_event.py +++ b/src/tests/test_event.py @@ -53,8 +53,6 @@ def test_protected_instance_event(self): def test_protected_static_event(self): """Test protected static events.""" - ob = EventTest - handler = GenericHandler() self.assertTrue(handler.value == None) @@ -69,25 +67,25 @@ def test_internal_events(self): """Test internal events.""" with self.assertRaises(AttributeError): - f = EventTest().InternalEvent + _ = EventTest().InternalEvent with self.assertRaises(AttributeError): - f = EventTest().InternalStaticEvent + _ = EventTest().InternalStaticEvent with self.assertRaises(AttributeError): - f = EventTest.InternalStaticEvent + _ = EventTest.InternalStaticEvent def test_private_events(self): """Test private events.""" with self.assertRaises(AttributeError): - f = EventTest().PrivateEvent + _ = EventTest().PrivateEvent with self.assertRaises(AttributeError): - f = EventTest().PrivateStaticEvent + _ = EventTest().PrivateStaticEvent with self.assertRaises(AttributeError): - f = EventTest.PrivateStaticEvent + _ = EventTest.PrivateStaticEvent def test_multicast_event(self): """Test multicast events.""" @@ -258,33 +256,31 @@ def test_unbound_method_handler(self): """Test failure mode for unbound method handlers.""" ob = EventTest() ob.PublicEvent += GenericHandler.handler - try: + + with self.assertRaises(TypeError): ob.OnPublicEvent(TestEventArgs(10)) - except TypeError: - ob.PublicEvent -= GenericHandler.handler - return - raise TypeError("should have raised a TypeError") + ob.PublicEvent -= GenericHandler.handler def test_function_handler(self): """Test function handlers.""" ob = EventTest() - dict = {'value': None} + dict_ = {'value': None} - def handler(sender, args, dict=dict): - dict['value'] = args.value + def handler(sender, args, dict_=dict_): + dict_['value'] = args.value ob.PublicEvent += handler - self.assertTrue(dict['value'] == None) + self.assertTrue(dict_['value'] == None) ob.OnPublicEvent(TestEventArgs(10)) - self.assertTrue(dict['value'] == 10) + self.assertTrue(dict_['value'] == 10) ob.PublicEvent -= handler - self.assertTrue(dict['value'] == 10) + self.assertTrue(dict_['value'] == 10) ob.OnPublicEvent(TestEventArgs(20)) - self.assertTrue(dict['value'] == 10) + self.assertTrue(dict_['value'] == 10) def test_add_non_callable_handler(self): """Test handling of attempts to add non-callable handlers.""" @@ -298,11 +294,11 @@ def test_add_non_callable_handler(self): ob.PublicEvent += "spam" with self.assertRaises(TypeError): - class spam(object): + class Spam(object): pass ob = EventTest() - ob.PublicEvent += spam() + ob.PublicEvent += Spam() def test_remove_multiple_handlers(self): """Test removing multiple instances of the same handler.""" @@ -411,7 +407,7 @@ def test_random_multiple_handlers(self): ob.PublicEvent += handler2.handler handlers = [] - for i in range(30): + for _ in range(30): method = handler.handler ob.PublicEvent += method handlers.append(method) diff --git a/src/tests/test_exceptions.py b/src/tests/test_exceptions.py index aeec1fee3..7d60e0732 100644 --- a/src/tests/test_exceptions.py +++ b/src/tests/test_exceptions.py @@ -220,7 +220,7 @@ def test_catch_exception_unqualified(self): try: raise OverflowException('overflow') except: - return + pass else: self.fail("failed to catch unqualified exception") @@ -240,22 +240,22 @@ def test_apparent_module_of_exception(self): def test_str_of_exception(self): """Test the str() representation of an exception.""" - from System import NullReferenceException - from System import Convert, FormatException + from System import NullReferenceException, Convert, FormatException + e = NullReferenceException('') self.assertEqual(str(e), '') e = NullReferenceException('Something bad happened') self.assertTrue(str(e).startswith('Something bad happened')) - try: + with self.assertRaises(FormatException) as cm: Convert.ToDateTime('this will fail') - except FormatException: - e = sys.exc_info()[1] - # fix for international installation - msg = text_type(e).encode("utf8") - fnd = text_type('System.Convert.ToDateTime').encode("utf8") - self.assertTrue(msg.find(fnd) > -1, msg) + + e = cm.exception + # fix for international installation + msg = text_type(e).encode("utf8") + fnd = text_type('System.Convert.ToDateTime').encode("utf8") + self.assertTrue(msg.find(fnd) > -1, msg) def test_python_compat_of_managed_exceptions(self): """Test managed exceptions compatible with Python's implementation""" @@ -286,12 +286,11 @@ def test_exception_is_instance_of_system_object(self): # here mainly to remind me to update the caveat in the documentation # one day when when exceptions can be new-style classes. - # This behaviour is now over-shadowed by the implementation of + # This behavior is now over-shadowed by the implementation of # __instancecheck__ (i.e., overloading isinstance), so for all Python # version >= 2.6 we expect isinstance(, Object) to # be true, even though it does not really subclass Object. - from System import OverflowException - from System import Object + from System import OverflowException, Object o = OverflowException('error') diff --git a/src/tests/test_field.py b/src/tests/test_field.py index 1f2ca87ea..6300309ce 100644 --- a/src/tests/test_field.py +++ b/src/tests/test_field.py @@ -119,25 +119,25 @@ def test_internal_field(self): """Test internal fields.""" with self.assertRaises(AttributeError): - f = FieldTest().InternalField + _ = FieldTest().InternalField with self.assertRaises(AttributeError): - f = FieldTest().InternalStaticField + _ = FieldTest().InternalStaticField with self.assertRaises(AttributeError): - f = FieldTest.InternalStaticField + _ = FieldTest.InternalStaticField def test_private_field(self): """Test private fields.""" with self.assertRaises(AttributeError): - f = FieldTest().PrivateField + _ = FieldTest().PrivateField with self.assertRaises(AttributeError): - f = FieldTest().PrivateStaticField + _ = FieldTest().PrivateStaticField with self.assertRaises(AttributeError): - f = FieldTest.PrivateStaticField + _ = FieldTest.PrivateStaticField def test_field_descriptor_get_set(self): """Test field descriptor get / set.""" diff --git a/src/tests/test_generic.py b/src/tests/test_generic.py index e85e76667..fb5e0e5ea 100644 --- a/src/tests/test_generic.py +++ b/src/tests/test_generic.py @@ -11,7 +11,7 @@ class GenericTests(unittest.TestCase): """Test CLR generics support.""" - def _testGenericWrapperByType(self, ptype, value): + def _assert_generic_wrapper_by_type(self, ptype, value): """Test Helper""" from Python.Test import GenericWrapper import System @@ -26,7 +26,7 @@ def _testGenericWrapperByType(self, ptype, value): self.assertTrue(inst.value[0] == value) self.assertTrue(inst.value[1] == value) - def _testGenericMethodByType(self, ptype, value, test_type=0): + def _assert_generic_method_by_type(self, ptype, value, test_type=0): """Test Helper""" from Python.Test import GenericMethodTest, GenericStaticMethodTest import System @@ -116,55 +116,55 @@ def test_python_type_aliasing(self): """Test python type alias support with generics.""" from System.Collections.Generic import Dictionary - dict = Dictionary[str, str]() - self.assertEquals(dict.Count, 0) - dict.Add("one", "one") - self.assertTrue(dict["one"] == "one") - - dict = Dictionary[System.String, System.String]() - self.assertEquals(dict.Count, 0) - dict.Add("one", "one") - self.assertTrue(dict["one"] == "one") - - dict = Dictionary[int, int]() - self.assertEquals(dict.Count, 0) - dict.Add(1, 1) - self.assertTrue(dict[1] == 1) - - dict = Dictionary[System.Int32, System.Int32]() - self.assertEquals(dict.Count, 0) - dict.Add(1, 1) - self.assertTrue(dict[1] == 1) - - dict = Dictionary[long, long]() - self.assertEquals(dict.Count, 0) - dict.Add(long(1), long(1)) - self.assertTrue(dict[long(1)] == long(1)) - - dict = Dictionary[System.Int64, System.Int64]() - self.assertEquals(dict.Count, 0) - dict.Add(long(1), long(1)) - self.assertTrue(dict[long(1)] == long(1)) - - dict = Dictionary[float, float]() - self.assertEquals(dict.Count, 0) - dict.Add(1.5, 1.5) - self.assertTrue(dict[1.5] == 1.5) - - dict = Dictionary[System.Double, System.Double]() - self.assertEquals(dict.Count, 0) - dict.Add(1.5, 1.5) - self.assertTrue(dict[1.5] == 1.5) - - dict = Dictionary[bool, bool]() - self.assertEquals(dict.Count, 0) - dict.Add(True, False) - self.assertTrue(dict[True] == False) - - dict = Dictionary[System.Boolean, System.Boolean]() - self.assertEquals(dict.Count, 0) - dict.Add(True, False) - self.assertTrue(dict[True] == False) + dict_ = Dictionary[str, str]() + self.assertEquals(dict_.Count, 0) + dict_.Add("one", "one") + self.assertTrue(dict_["one"] == "one") + + dict_ = Dictionary[System.String, System.String]() + self.assertEquals(dict_.Count, 0) + dict_.Add("one", "one") + self.assertTrue(dict_["one"] == "one") + + dict_ = Dictionary[int, int]() + self.assertEquals(dict_.Count, 0) + dict_.Add(1, 1) + self.assertTrue(dict_[1] == 1) + + dict_ = Dictionary[System.Int32, System.Int32]() + self.assertEquals(dict_.Count, 0) + dict_.Add(1, 1) + self.assertTrue(dict_[1] == 1) + + dict_ = Dictionary[long, long]() + self.assertEquals(dict_.Count, 0) + dict_.Add(long(1), long(1)) + self.assertTrue(dict_[long(1)] == long(1)) + + dict_ = Dictionary[System.Int64, System.Int64]() + self.assertEquals(dict_.Count, 0) + dict_.Add(long(1), long(1)) + self.assertTrue(dict_[long(1)] == long(1)) + + dict_ = Dictionary[float, float]() + self.assertEquals(dict_.Count, 0) + dict_.Add(1.5, 1.5) + self.assertTrue(dict_[1.5] == 1.5) + + dict_ = Dictionary[System.Double, System.Double]() + self.assertEquals(dict_.Count, 0) + dict_.Add(1.5, 1.5) + self.assertTrue(dict_[1.5] == 1.5) + + dict_ = Dictionary[bool, bool]() + self.assertEquals(dict_.Count, 0) + dict_.Add(True, False) + self.assertTrue(dict_[True] == False) + + dict_ = Dictionary[System.Boolean, System.Boolean]() + self.assertEquals(dict_.Count, 0) + dict_.Add(True, False) + self.assertTrue(dict_[True] == False) def test_generic_reference_type(self): """Test usage of generic reference type definitions.""" @@ -192,20 +192,20 @@ def test_open_generic_type(self): """Test behavior of reflected open constructed generic types.""" from Python.Test import DerivedFromOpenGeneric - OpenGenericType = DerivedFromOpenGeneric.__bases__[0] + open_generic_type = DerivedFromOpenGeneric.__bases__[0] with self.assertRaises(TypeError): - inst = OpenGenericType() + _ = open_generic_type() with self.assertRaises(TypeError): - type = OpenGenericType[System.String] + _ = open_generic_type[System.String] def test_derived_from_open_generic_type(self): """Test a generic type derived from an open generic type.""" from Python.Test import DerivedFromOpenGeneric - type = DerivedFromOpenGeneric[System.String, System.String] - inst = type(1, 'two', 'three') + type_ = DerivedFromOpenGeneric[System.String, System.String] + inst = type_(1, 'two', 'three') self.assertTrue(inst.value1 == 1) self.assertTrue(inst.value2 == 'two') @@ -225,7 +225,7 @@ def test_generic_type_name_resolution(self): # cannot be instantiated. It can only be used to bind a generic. with self.assertRaises(TypeError): - inst = GenericNameTest2() + _ = GenericNameTest2() _class = GenericNameTest2[int] self.assertTrue(_class().value == 1) @@ -240,32 +240,32 @@ def test_generic_type_binding(self): from Python.Test import InterfaceTest, ISayHello1, ShortEnum import System - self._testGenericWrapperByType(System.Boolean, True) - self._testGenericWrapperByType(bool, True) - self._testGenericWrapperByType(System.Byte, 255) - self._testGenericWrapperByType(System.SByte, 127) - self._testGenericWrapperByType(System.Char, u'A') - self._testGenericWrapperByType(System.Int16, 32767) - self._testGenericWrapperByType(System.Int32, 2147483647) - self._testGenericWrapperByType(int, 2147483647) - self._testGenericWrapperByType(System.Int64, long(9223372036854775807)) + self._assert_generic_wrapper_by_type(System.Boolean, True) + self._assert_generic_wrapper_by_type(bool, True) + self._assert_generic_wrapper_by_type(System.Byte, 255) + self._assert_generic_wrapper_by_type(System.SByte, 127) + self._assert_generic_wrapper_by_type(System.Char, u'A') + self._assert_generic_wrapper_by_type(System.Int16, 32767) + self._assert_generic_wrapper_by_type(System.Int32, 2147483647) + self._assert_generic_wrapper_by_type(int, 2147483647) + self._assert_generic_wrapper_by_type(System.Int64, long(9223372036854775807)) # Python 3 has no explicit long type, use System.Int64 instead if PY2: - self._testGenericWrapperByType(long, long(9223372036854775807)) - self._testGenericWrapperByType(System.UInt16, 65000) - self._testGenericWrapperByType(System.UInt32, long(4294967295)) - self._testGenericWrapperByType(System.UInt64, long(18446744073709551615)) - self._testGenericWrapperByType(System.Single, 3.402823e38) - self._testGenericWrapperByType(System.Double, 1.7976931348623157e308) - self._testGenericWrapperByType(float, 1.7976931348623157e308) - self._testGenericWrapperByType(System.Decimal, System.Decimal.One) - self._testGenericWrapperByType(System.String, "test") - self._testGenericWrapperByType(unicode, "test") - self._testGenericWrapperByType(str, "test") - self._testGenericWrapperByType(ShortEnum, ShortEnum.Zero) - self._testGenericWrapperByType(System.Object, InterfaceTest()) - self._testGenericWrapperByType(InterfaceTest, InterfaceTest()) - self._testGenericWrapperByType(ISayHello1, InterfaceTest()) + self._assert_generic_wrapper_by_type(long, long(9223372036854775807)) + self._assert_generic_wrapper_by_type(System.UInt16, 65000) + self._assert_generic_wrapper_by_type(System.UInt32, long(4294967295)) + self._assert_generic_wrapper_by_type(System.UInt64, long(18446744073709551615)) + self._assert_generic_wrapper_by_type(System.Single, 3.402823e38) + self._assert_generic_wrapper_by_type(System.Double, 1.7976931348623157e308) + self._assert_generic_wrapper_by_type(float, 1.7976931348623157e308) + self._assert_generic_wrapper_by_type(System.Decimal, System.Decimal.One) + self._assert_generic_wrapper_by_type(System.String, "test") + self._assert_generic_wrapper_by_type(unicode, "test") + self._assert_generic_wrapper_by_type(str, "test") + self._assert_generic_wrapper_by_type(ShortEnum, ShortEnum.Zero) + self._assert_generic_wrapper_by_type(System.Object, InterfaceTest()) + self._assert_generic_wrapper_by_type(InterfaceTest, InterfaceTest()) + self._assert_generic_wrapper_by_type(ISayHello1, InterfaceTest()) def test_generic_method_binding(self): from Python.Test import GenericMethodTest, GenericStaticMethodTest @@ -293,40 +293,38 @@ def test_generic_method_type_handling(self): from Python.Test import InterfaceTest, ISayHello1, ShortEnum import System - # XXX BUG: The value doesn't fit into Int64 and PythonNet doesn't + # FIXME: The value doesn't fit into Int64 and PythonNet doesn't # recognize it as UInt64 for unknown reasons. - # self._testGenericMethodByType(System.UInt64, 18446744073709551615L) - self._testGenericMethodByType(System.Boolean, True) - self._testGenericMethodByType(bool, True) - self._testGenericMethodByType(System.Byte, 255) - self._testGenericMethodByType(System.SByte, 127) - self._testGenericMethodByType(System.Char, u'A') - self._testGenericMethodByType(System.Int16, 32767) - self._testGenericMethodByType(System.Int32, 2147483647) - self._testGenericMethodByType(int, 2147483647) + # self._assert_generic_method_by_type(System.UInt64, 18446744073709551615L) + self._assert_generic_method_by_type(System.Boolean, True) + self._assert_generic_method_by_type(bool, True) + self._assert_generic_method_by_type(System.Byte, 255) + self._assert_generic_method_by_type(System.SByte, 127) + self._assert_generic_method_by_type(System.Char, u'A') + self._assert_generic_method_by_type(System.Int16, 32767) + self._assert_generic_method_by_type(System.Int32, 2147483647) + self._assert_generic_method_by_type(int, 2147483647) # Python 3 has no explicit long type, use System.Int64 instead if PY2: - self._testGenericMethodByType(System.Int64, long(9223372036854775807)) - self._testGenericMethodByType(long, long(9223372036854775807)) - self._testGenericMethodByType(System.UInt32, long(4294967295)) - self._testGenericMethodByType(System.Int64, long(1844674407370955161)) - self._testGenericMethodByType(System.UInt16, 65000) - self._testGenericMethodByType(System.Single, 3.402823e38) - self._testGenericMethodByType(System.Double, 1.7976931348623157e308) - self._testGenericMethodByType(float, 1.7976931348623157e308) - self._testGenericMethodByType(System.Decimal, System.Decimal.One) - self._testGenericMethodByType(System.String, "test") - self._testGenericMethodByType(unicode, "test") - self._testGenericMethodByType(str, "test") - self._testGenericMethodByType(ShortEnum, ShortEnum.Zero) - self._testGenericMethodByType(System.Object, InterfaceTest()) - self._testGenericMethodByType(InterfaceTest, InterfaceTest(), 1) - self._testGenericMethodByType(ISayHello1, InterfaceTest(), 1) + self._assert_generic_method_by_type(System.Int64, long(9223372036854775807)) + self._assert_generic_method_by_type(long, long(9223372036854775807)) + self._assert_generic_method_by_type(System.UInt32, long(4294967295)) + self._assert_generic_method_by_type(System.Int64, long(1844674407370955161)) + self._assert_generic_method_by_type(System.UInt16, 65000) + self._assert_generic_method_by_type(System.Single, 3.402823e38) + self._assert_generic_method_by_type(System.Double, 1.7976931348623157e308) + self._assert_generic_method_by_type(float, 1.7976931348623157e308) + self._assert_generic_method_by_type(System.Decimal, System.Decimal.One) + self._assert_generic_method_by_type(System.String, "test") + self._assert_generic_method_by_type(unicode, "test") + self._assert_generic_method_by_type(str, "test") + self._assert_generic_method_by_type(ShortEnum, ShortEnum.Zero) + self._assert_generic_method_by_type(System.Object, InterfaceTest()) + self._assert_generic_method_by_type(InterfaceTest, InterfaceTest(), 1) + self._assert_generic_method_by_type(ISayHello1, InterfaceTest(), 1) def test_correct_overload_selection(self): """Test correct overloading selection for common types.""" - from System.Drawing import Font - from System import (String, Double, Single, Int16, Int32, Int64) from System import Math @@ -345,21 +343,19 @@ def test_correct_overload_selection(self): self.assertTrue( Math.Max(atype(value1), atype(value2)) == Math.Max.__overloads__[atype, atype]( - atype(value1), - atype(value2))) + atype(value1), atype(value2))) if PY2 and atype is Int64: value2 = long(value2) self.assertTrue( Math.Max(atype(value1), value2) == Math.Max.__overloads__[atype, atype]( - atype(value1), - atype(value2))) + atype(value1), atype(value2))) clr.AddReference("System.Runtime.InteropServices") from System.Runtime.InteropServices import GCHandle, GCHandleType from System import Array, Byte - CSArray = Array.CreateInstance(Byte, 1000) - handler = GCHandle.Alloc(CSArray, GCHandleType.Pinned) + cs_array = Array.CreateInstance(Byte, 1000) + handler = GCHandle.Alloc(cs_array, GCHandleType.Pinned) def test_generic_method_overload_selection(self): """Test explicit overload selection with generic methods.""" @@ -433,10 +429,10 @@ def test_generic_method_overload_selection(self): self.assertTrue(value == "success") with self.assertRaises(TypeError): - value = type.Overloaded[str, bool, int]("true", True, 1) + _ = type.Overloaded[str, bool, int]("true", True, 1) with self.assertRaises(TypeError): - value = inst.Overloaded[str, bool, int]("true", True, 1) + _ = inst.Overloaded[str, bool, int]("true", True, 1) def test_method_overload_selection_with_generic_types(self): """Check method overload selection using generic types.""" @@ -446,130 +442,130 @@ def test_method_overload_selection_with_generic_types(self): inst = InterfaceTest() vtype = GenericWrapper[System.Boolean] - input = vtype(True) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(True) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == True) vtype = GenericWrapper[bool] - input = vtype(True) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(True) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == True) vtype = GenericWrapper[System.Byte] - input = vtype(255) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(255) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == 255) vtype = GenericWrapper[System.SByte] - input = vtype(127) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(127) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == 127) vtype = GenericWrapper[System.Char] - input = vtype(u'A') - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(u'A') + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == u'A') vtype = GenericWrapper[System.Char] - input = vtype(65535) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(65535) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == unichr(65535)) vtype = GenericWrapper[System.Int16] - input = vtype(32767) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(32767) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == 32767) vtype = GenericWrapper[System.Int32] - input = vtype(2147483647) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(2147483647) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == 2147483647) vtype = GenericWrapper[int] - input = vtype(2147483647) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(2147483647) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == 2147483647) vtype = GenericWrapper[System.Int64] - input = vtype(long(9223372036854775807)) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(long(9223372036854775807)) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == long(9223372036854775807)) # Python 3 has no explicit long type, use System.Int64 instead if PY2: vtype = GenericWrapper[long] - input = vtype(long(9223372036854775807)) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(long(9223372036854775807)) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == long(9223372036854775807)) vtype = GenericWrapper[System.UInt16] - input = vtype(65000) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(65000) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == 65000) vtype = GenericWrapper[System.UInt32] - input = vtype(long(4294967295)) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(long(4294967295)) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == long(4294967295)) vtype = GenericWrapper[System.UInt64] - input = vtype(long(18446744073709551615)) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(long(18446744073709551615)) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == long(18446744073709551615)) vtype = GenericWrapper[System.Single] - input = vtype(3.402823e38) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(3.402823e38) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == 3.402823e38) vtype = GenericWrapper[System.Double] - input = vtype(1.7976931348623157e308) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(1.7976931348623157e308) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == 1.7976931348623157e308) vtype = GenericWrapper[float] - input = vtype(1.7976931348623157e308) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(1.7976931348623157e308) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == 1.7976931348623157e308) vtype = GenericWrapper[System.Decimal] - input = vtype(System.Decimal.One) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(System.Decimal.One) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == System.Decimal.One) vtype = GenericWrapper[System.String] - input = vtype("spam") - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype("spam") + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == "spam") vtype = GenericWrapper[str] - input = vtype("spam") - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype("spam") + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == "spam") vtype = GenericWrapper[ShortEnum] - input = vtype(ShortEnum.Zero) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(ShortEnum.Zero) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value == ShortEnum.Zero) vtype = GenericWrapper[System.Object] - input = vtype(inst) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(inst) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value.__class__ == inst.__class__) vtype = GenericWrapper[InterfaceTest] - input = vtype(inst) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(inst) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value.__class__ == inst.__class__) vtype = GenericWrapper[ISayHello1] - input = vtype(inst) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(inst) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value.value.__class__ == inst.__class__) vtype = System.Array[GenericWrapper[int]] - input = vtype([GenericWrapper[int](0), GenericWrapper[int](1)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([GenericWrapper[int](0), GenericWrapper[int](1)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == 0) self.assertTrue(value[1].value == 1) @@ -582,72 +578,72 @@ def test_overload_selection_with_arrays_of_generic_types(self): gtype = GenericWrapper[System.Boolean] vtype = System.Array[gtype] - input = vtype([gtype(True), gtype(True)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(True), gtype(True)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == True) self.assertTrue(value.Length == 2) gtype = GenericWrapper[bool] vtype = System.Array[gtype] - input = vtype([gtype(True), gtype(True)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(True), gtype(True)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == True) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Byte] vtype = System.Array[gtype] - input = vtype([gtype(255), gtype(255)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(255), gtype(255)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == 255) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.SByte] vtype = System.Array[gtype] - input = vtype([gtype(127), gtype(127)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(127), gtype(127)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == 127) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Char] vtype = System.Array[gtype] - input = vtype([gtype(u'A'), gtype(u'A')]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(u'A'), gtype(u'A')]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == u'A') self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Char] vtype = System.Array[gtype] - input = vtype([gtype(65535), gtype(65535)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(65535), gtype(65535)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == unichr(65535)) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Int16] vtype = System.Array[gtype] - input = vtype([gtype(32767), gtype(32767)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(32767), gtype(32767)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == 32767) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Int32] vtype = System.Array[gtype] - input = vtype([gtype(2147483647), gtype(2147483647)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(2147483647), gtype(2147483647)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == 2147483647) self.assertTrue(value.Length == 2) gtype = GenericWrapper[int] vtype = System.Array[gtype] - input = vtype([gtype(2147483647), gtype(2147483647)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(2147483647), gtype(2147483647)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == 2147483647) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Int64] vtype = System.Array[gtype] - input = vtype([gtype(long(9223372036854775807)), + input_ = vtype([gtype(long(9223372036854775807)), gtype(long(9223372036854775807))]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == long(9223372036854775807)) self.assertTrue(value.Length == 2) @@ -655,104 +651,104 @@ def test_overload_selection_with_arrays_of_generic_types(self): if PY2: gtype = GenericWrapper[long] vtype = System.Array[gtype] - input = vtype([gtype(long(9223372036854775807)), + input_ = vtype([gtype(long(9223372036854775807)), gtype(long(9223372036854775807))]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == long(9223372036854775807)) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.UInt16] vtype = System.Array[gtype] - input = vtype([gtype(65000), gtype(65000)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(65000), gtype(65000)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == 65000) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.UInt32] vtype = System.Array[gtype] - input = vtype([gtype(long(4294967295)), gtype(long(4294967295))]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(long(4294967295)), gtype(long(4294967295))]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == long(4294967295)) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.UInt64] vtype = System.Array[gtype] - input = vtype([gtype(long(18446744073709551615)), + input_ = vtype([gtype(long(18446744073709551615)), gtype(long(18446744073709551615))]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == long(18446744073709551615)) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Single] vtype = System.Array[gtype] - input = vtype([gtype(3.402823e38), gtype(3.402823e38)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(3.402823e38), gtype(3.402823e38)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == 3.402823e38) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Double] vtype = System.Array[gtype] - input = vtype([gtype(1.7976931348623157e308), + input_ = vtype([gtype(1.7976931348623157e308), gtype(1.7976931348623157e308)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == 1.7976931348623157e308) self.assertTrue(value.Length == 2) gtype = GenericWrapper[float] vtype = System.Array[gtype] - input = vtype([gtype(1.7976931348623157e308), + input_ = vtype([gtype(1.7976931348623157e308), gtype(1.7976931348623157e308)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == 1.7976931348623157e308) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Decimal] vtype = System.Array[gtype] - input = vtype([gtype(System.Decimal.One), + input_ = vtype([gtype(System.Decimal.One), gtype(System.Decimal.One)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == System.Decimal.One) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.String] vtype = System.Array[gtype] - input = vtype([gtype("spam"), gtype("spam")]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype("spam"), gtype("spam")]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == "spam") self.assertTrue(value.Length == 2) gtype = GenericWrapper[str] vtype = System.Array[gtype] - input = vtype([gtype("spam"), gtype("spam")]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype("spam"), gtype("spam")]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == "spam") self.assertTrue(value.Length == 2) gtype = GenericWrapper[ShortEnum] vtype = System.Array[gtype] - input = vtype([gtype(ShortEnum.Zero), gtype(ShortEnum.Zero)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(ShortEnum.Zero), gtype(ShortEnum.Zero)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value == ShortEnum.Zero) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Object] vtype = System.Array[gtype] - input = vtype([gtype(inst), gtype(inst)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(inst), gtype(inst)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value.__class__ == inst.__class__) self.assertTrue(value.Length == 2) gtype = GenericWrapper[InterfaceTest] vtype = System.Array[gtype] - input = vtype([gtype(inst), gtype(inst)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(inst), gtype(inst)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value.__class__ == inst.__class__) self.assertTrue(value.Length == 2) gtype = GenericWrapper[ISayHello1] vtype = System.Array[gtype] - input = vtype([gtype(inst), gtype(inst)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([gtype(inst), gtype(inst)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].value.__class__ == inst.__class__) self.assertTrue(value.Length == 2) diff --git a/src/tests/test_indexer.py b/src/tests/test_indexer.py index 90a8d71f0..62581aed4 100644 --- a/src/tests/test_indexer.py +++ b/src/tests/test_indexer.py @@ -82,16 +82,16 @@ def test_boolean_indexer(self): def test_byte_indexer(self): """Test byte indexers.""" ob = Test.ByteIndexerTest() - max = 255 - min = 0 + max_ = 255 + min_ = 0 - self.assertTrue(ob[max] == None) + self.assertTrue(ob[max_] == None) - ob[max] = str(max) - self.assertTrue(ob[max] == str(max)) + ob[max_] = str(max_) + self.assertTrue(ob[max_] == str(max_)) - ob[min] = str(min) - self.assertTrue(ob[min] == str(min)) + ob[min_] = str(min_) + self.assertTrue(ob[min_] == str(min_)) with self.assertRaises(TypeError): ob = Test.ByteIndexerTest() @@ -104,16 +104,16 @@ def test_byte_indexer(self): def test_sbyte_indexer(self): """Test sbyte indexers.""" ob = Test.SByteIndexerTest() - max = 127 - min = -128 + max_ = 127 + min_ = -128 - self.assertTrue(ob[max] == None) + self.assertTrue(ob[max_] == None) - ob[max] = str(max) - self.assertTrue(ob[max] == str(max)) + ob[max_] = str(max_) + self.assertTrue(ob[max_] == str(max_)) - ob[min] = str(min) - self.assertTrue(ob[min] == str(min)) + ob[min_] = str(min_) + self.assertTrue(ob[min_] == str(min_)) with self.assertRaises(TypeError): ob = Test.SByteIndexerTest() @@ -126,16 +126,16 @@ def test_sbyte_indexer(self): def test_char_indexer(self): """Test char indexers.""" ob = Test.CharIndexerTest() - max = unichr(65535) - min = unichr(0) + max_ = unichr(65535) + min_ = unichr(0) - self.assertTrue(ob[max] == None) + self.assertTrue(ob[max_] == None) - ob[max] = "max" - self.assertTrue(ob[max] == "max") + ob[max_] = "max_" + self.assertTrue(ob[max_] == "max_") - ob[min] = "min" - self.assertTrue(ob[min] == "min") + ob[min_] = "min_" + self.assertTrue(ob[min_] == "min_") with self.assertRaises(TypeError): ob = Test.CharIndexerTest() @@ -148,16 +148,16 @@ def test_char_indexer(self): def test_int16_indexer(self): """Test Int16 indexers.""" ob = Test.Int16IndexerTest() - max = 32767 - min = -32768 + max_ = 32767 + min_ = -32768 - self.assertTrue(ob[max] == None) + self.assertTrue(ob[max_] == None) - ob[max] = str(max) - self.assertTrue(ob[max] == str(max)) + ob[max_] = str(max_) + self.assertTrue(ob[max_] == str(max_)) - ob[min] = str(min) - self.assertTrue(ob[min] == str(min)) + ob[min_] = str(min_) + self.assertTrue(ob[min_] == str(min_)) with self.assertRaises(TypeError): ob = Test.Int16IndexerTest() @@ -170,16 +170,16 @@ def test_int16_indexer(self): def test_int32_indexer(self): """Test Int32 indexers.""" ob = Test.Int32IndexerTest() - max = 2147483647 - min = -2147483648 + max_ = 2147483647 + min_ = -2147483648 - self.assertTrue(ob[max] == None) + self.assertTrue(ob[max_] == None) - ob[max] = str(max) - self.assertTrue(ob[max] == str(max)) + ob[max_] = str(max_) + self.assertTrue(ob[max_] == str(max_)) - ob[min] = str(min) - self.assertTrue(ob[min] == str(min)) + ob[min_] = str(min_) + self.assertTrue(ob[min_] == str(min_)) with self.assertRaises(TypeError): ob = Test.Int32IndexerTest() @@ -192,16 +192,16 @@ def test_int32_indexer(self): def test_int64_indexer(self): """Test Int64 indexers.""" ob = Test.Int64IndexerTest() - max = long(9223372036854775807) - min = long(-9223372036854775808) + max_ = long(9223372036854775807) + min_ = long(-9223372036854775808) - self.assertTrue(ob[max] == None) + self.assertTrue(ob[max_] == None) - ob[max] = str(max) - self.assertTrue(ob[max] == str(max)) + ob[max_] = str(max_) + self.assertTrue(ob[max_] == str(max_)) - ob[min] = str(min) - self.assertTrue(ob[min] == str(min)) + ob[min_] = str(min_) + self.assertTrue(ob[min_] == str(min_)) with self.assertRaises(TypeError): ob = Test.Int64IndexerTest() @@ -214,16 +214,16 @@ def test_int64_indexer(self): def test_uint16_indexer(self): """Test UInt16 indexers.""" ob = Test.UInt16IndexerTest() - max = 65535 - min = 0 + max_ = 65535 + min_ = 0 - self.assertTrue(ob[max] == None) + self.assertTrue(ob[max_] == None) - ob[max] = str(max) - self.assertTrue(ob[max] == str(max)) + ob[max_] = str(max_) + self.assertTrue(ob[max_] == str(max_)) - ob[min] = str(min) - self.assertTrue(ob[min] == str(min)) + ob[min_] = str(min_) + self.assertTrue(ob[min_] == str(min_)) with self.assertRaises(TypeError): ob = Test.UInt16IndexerTest() @@ -236,16 +236,16 @@ def test_uint16_indexer(self): def test_uint32_indexer(self): """Test UInt32 indexers.""" ob = Test.UInt32IndexerTest() - max = long(4294967295) - min = 0 + max_ = long(4294967295) + min_ = 0 - self.assertTrue(ob[max] == None) + self.assertTrue(ob[max_] == None) - ob[max] = str(max) - self.assertTrue(ob[max] == str(max)) + ob[max_] = str(max_) + self.assertTrue(ob[max_] == str(max_)) - ob[min] = str(min) - self.assertTrue(ob[min] == str(min)) + ob[min_] = str(min_) + self.assertTrue(ob[min_] == str(min_)) with self.assertRaises(TypeError): ob = Test.UInt32IndexerTest() @@ -258,16 +258,16 @@ def test_uint32_indexer(self): def test_uint64_indexer(self): """Test UInt64 indexers.""" ob = Test.UInt64IndexerTest() - max = long(18446744073709551615) - min = 0 + max_ = long(18446744073709551615) + min_ = 0 - self.assertTrue(ob[max] == None) + self.assertTrue(ob[max_] == None) - ob[max] = str(max) - self.assertTrue(ob[max] == str(max)) + ob[max_] = str(max_) + self.assertTrue(ob[max_] == str(max_)) - ob[min] = str(min) - self.assertTrue(ob[min] == str(min)) + ob[min_] = str(min_) + self.assertTrue(ob[min_] == str(min_)) with self.assertRaises(TypeError): ob = Test.UInt64IndexerTest() @@ -280,16 +280,16 @@ def test_uint64_indexer(self): def test_single_indexer(self): """Test Single indexers.""" ob = Test.SingleIndexerTest() - max = 3.402823e38 - min = -3.402823e38 + max_ = 3.402823e38 + min_ = -3.402823e38 - self.assertTrue(ob[max] == None) + self.assertTrue(ob[max_] == None) - ob[max] = "max" - self.assertTrue(ob[max] == "max") + ob[max_] = "max_" + self.assertTrue(ob[max_] == "max_") - ob[min] = "min" - self.assertTrue(ob[min] == "min") + ob[min_] = "min_" + self.assertTrue(ob[min_] == "min_") with self.assertRaises(TypeError): ob = Test.SingleIndexerTest() @@ -302,16 +302,16 @@ def test_single_indexer(self): def test_double_indexer(self): """Test Double indexers.""" ob = Test.DoubleIndexerTest() - max = 1.7976931348623157e308 - min = -1.7976931348623157e308 + max_ = 1.7976931348623157e308 + min_ = -1.7976931348623157e308 - self.assertTrue(ob[max] == None) + self.assertTrue(ob[max_] == None) - ob[max] = "max" - self.assertTrue(ob[max] == "max") + ob[max_] = "max_" + self.assertTrue(ob[max_] == "max_") - ob[min] = "min" - self.assertTrue(ob[min] == "min") + ob[min_] = "min_" + self.assertTrue(ob[min_] == "min_") with self.assertRaises(TypeError): ob = Test.DoubleIndexerTest() @@ -331,11 +331,11 @@ def test_decimal_indexer(self): self.assertTrue(ob[max_d] == None) - ob[max_d] = "max" - self.assertTrue(ob[max_d] == "max") + ob[max_d] = "max_" + self.assertTrue(ob[max_d] == "max_") - ob[min_d] = "min" - self.assertTrue(ob[min_d] == "min") + ob[min_d] = "min_" + self.assertTrue(ob[min_d] == "min_") with self.assertRaises(TypeError): ob = Test.DecimalIndexerTest() @@ -422,10 +422,10 @@ def test_object_indexer(self): self.assertTrue(ob[long(1)] == "long") with self.assertRaises(TypeError): - class eggs(object): + class Eggs(object): pass - key = eggs() + key = Eggs() ob = Test.ObjectIndexerTest() ob[key] = "wrong" @@ -489,7 +489,7 @@ def test_multi_arg_indexer(self): with self.assertRaises(TypeError): ob = Test.MultiArgIndexerTest() - v = ob[0, "one"] + _ = ob[0, "one"] with self.assertRaises(TypeError): ob = Test.MultiArgIndexerTest() @@ -508,14 +508,15 @@ def test_multi_type_indexer(self): with self.assertRaises(TypeError): ob = Test.MultiTypeIndexerTest() - v = ob[0, 1, spam] + _ = ob[0, 1, spam] with self.assertRaises(TypeError): ob = Test.MultiTypeIndexerTest() ob[0, 1, spam] = "wrong" def test_multi_default_key_indexer(self): - """Test indexers that take multiple indices with a default key arguments.""" + """Test indexers that take multiple indices with a default + key arguments.""" # default argument is 2 in the MultiDefaultKeyIndexerTest object ob = Test.MultiDefaultKeyIndexerTest() ob[0, 2] = "zero one spam" @@ -529,7 +530,7 @@ def test_indexer_wrong_key_type(self): with self.assertRaises(TypeError): ob = Test.PublicIndexerTest() - v = ob["wrong"] + _ = ob["wrong"] with self.assertRaises(TypeError): ob = Test.PublicIndexerTest() diff --git a/src/tests/test_interface.py b/src/tests/test_interface.py index ab109458b..d83a7a9f1 100644 --- a/src/tests/test_interface.py +++ b/src/tests/test_interface.py @@ -26,9 +26,10 @@ def test_global_interface_visibility(self): with self.assertRaises(ImportError): from Python.Test import IInternalInterface + _ = IInternalInterface with self.assertRaises(AttributeError): - Test.IInternalInterface + _ = Test.IInternalInterface def test_nested_interface_visibility(self): """Test visibility of nested interfaces.""" @@ -41,10 +42,10 @@ def test_nested_interface_visibility(self): self.assertTrue(ob.__name__ == 'IProtected') with self.assertRaises(AttributeError): - ob = InterfaceTest.IInternal + _ = InterfaceTest.IInternal with self.assertRaises(AttributeError): - ob = InterfaceTest.IPrivate + _ = InterfaceTest.IPrivate def test_explicit_cast_to_interface(self): """Test explicit cast to an interface.""" diff --git a/src/tests/test_method.py b/src/tests/test_method.py index 29d921dac..07b73a1e7 100644 --- a/src/tests/test_method.py +++ b/src/tests/test_method.py @@ -68,31 +68,31 @@ def test_internal_method(self): """Test internal method visibility.""" with self.assertRaises(AttributeError): - f = MethodTest().InternalMethod + _ = MethodTest().InternalMethod with self.assertRaises(AttributeError): - f = MethodTest.InternalMethod + _ = MethodTest.InternalMethod with self.assertRaises(AttributeError): - f = MethodTest().InternalStaticMethod + _ = MethodTest().InternalStaticMethod with self.assertRaises(AttributeError): - f = MethodTest.InternalStaticMethod + _ = MethodTest.InternalStaticMethod def test_private_method(self): """Test private method visibility.""" with self.assertRaises(AttributeError): - f = MethodTest().PrivateMethod + _ = MethodTest().PrivateMethod with self.assertRaises(AttributeError): - f = MethodTest.PrivateMethod + _ = MethodTest.PrivateMethod with self.assertRaises(AttributeError): - f = MethodTest().PrivateStaticMethod + _ = MethodTest().PrivateStaticMethod with self.assertRaises(AttributeError): - f = MethodTest.PrivateStaticMethod + _ = MethodTest.PrivateStaticMethod def test_unbound_managed_method_call(self): """Test calling unbound managed methods.""" @@ -187,8 +187,6 @@ class TestSubException(System.Exception): def test_null_array_conversion(self): """Test null array conversion in method call.""" - from System import Type - ob = MethodTest() r = ob.TestNullArrayConversion(None) self.assertTrue(r == None) @@ -237,7 +235,8 @@ def test_value_params_args(self): self.assertTrue(result[2] == 3) def test_non_params_array_in_last_place(self): - """Test overload resolution with of non-"params" array as last parameter.""" + """Test overload resolution with of non-"params" array as + last parameter.""" result = MethodTest.TestNonParamsArrayInLastPlace(1, 2, 3) self.assertTrue(result) @@ -277,10 +276,10 @@ def test_value_out_params(self): self.assertTrue(result[0] == True) self.assertTrue(result[1] == 42) + # None cannot be converted to a value type like int, long, etc. with self.assertRaises(TypeError): MethodTest.TestValueOutParams("hi", None) - # None cannot be converted to a value type like int, long, etc. def test_value_ref_params(self): """Test use of value type byref parameters.""" result = MethodTest.TestValueRefParams("hi", 1) @@ -289,10 +288,10 @@ def test_value_ref_params(self): self.assertTrue(result[0] == True) self.assertTrue(result[1] == 42) + # None cannot be converted to a value type like int, long, etc. with self.assertRaises(TypeError): MethodTest.TestValueRefParams("hi", None) - # None cannot be converted to a value type like int, long, etc. def test_object_out_params(self): """Test use of object out-parameters.""" result = MethodTest.TestObjectOutParams("hi", MethodTest()) @@ -329,10 +328,10 @@ def test_struct_out_params(self): self.assertTrue(result[0] == True) self.assertTrue(isinstance(result[1], System.Guid)) + # None cannot be converted to a value type like a struct with self.assertRaises(TypeError): MethodTest.TestValueRefParams("hi", None) - # None cannot be converted to a value type like a struct def test_struct_ref_params(self): """Test use of struct byref parameters.""" result = MethodTest.TestStructRefParams("hi", System.Guid.NewGuid()) @@ -341,28 +340,28 @@ def test_struct_ref_params(self): self.assertTrue(result[0] == True) self.assertTrue(isinstance(result[1], System.Guid)) + # None cannot be converted to a value type like a struct with self.assertRaises(TypeError): MethodTest.TestValueRefParams("hi", None) - # None cannot be converted to a value type like a struct def test_void_single_out_param(self): """Test void method with single out-parameter.""" result = MethodTest.TestVoidSingleOutParam(9) self.assertTrue(result == 42) + # None cannot be converted to a value type with self.assertRaises(TypeError): MethodTest.TestVoidSingleOutParam(None) - # None cannot be converted to a value type def test_void_single_ref_param(self): """Test void method with single ref-parameter.""" result = MethodTest.TestVoidSingleRefParam(9) self.assertTrue(result == 42) + # None cannot be converted to a value type with self.assertRaises(TypeError): MethodTest.TestVoidSingleRefParam(None) - # None cannot be converted to a value type def test_single_default_param(self): """Test void method with single ref-parameter.""" result = MethodTest.TestSingleDefaultParam() @@ -388,16 +387,14 @@ def test_explicit_selection_with_out_modifier(self): """Check explicit overload selection with out modifiers.""" refstr = System.String("").GetType().MakeByRefType() result = MethodTest.TestStringOutParams.__overloads__[str, refstr]( - "hi", "there" - ) + "hi", "there") self.assertTrue(type(result) == type(())) self.assertTrue(len(result) == 2) self.assertTrue(result[0] == True) self.assertTrue(result[1] == "output string") result = MethodTest.TestStringOutParams.__overloads__[str, refstr]( - "hi", None - ) + "hi", None) self.assertTrue(type(result) == type(())) self.assertTrue(len(result) == 2) self.assertTrue(result[0] == True) @@ -407,16 +404,14 @@ def test_explicit_selection_with_ref_modifier(self): """Check explicit overload selection with ref modifiers.""" refstr = System.String("").GetType().MakeByRefType() result = MethodTest.TestStringRefParams.__overloads__[str, refstr]( - "hi", "there" - ) + "hi", "there") self.assertTrue(type(result) == type(())) self.assertTrue(len(result) == 2) self.assertTrue(result[0] == True) self.assertTrue(result[1] == "output string") result = MethodTest.TestStringRefParams.__overloads__[str, refstr]( - "hi", None - ) + "hi", None) self.assertTrue(type(result) == type(())) self.assertTrue(len(result) == 2) self.assertTrue(result[0] == True) @@ -426,6 +421,7 @@ def test_explicit_overload_selection(self): """Check explicit overload selection using [] syntax.""" from Python.Test import ISayHello1, InterfaceTest, ShortEnum from System import Array + inst = InterfaceTest() value = MethodTest.Overloaded.__overloads__[System.Boolean](True) @@ -456,44 +452,39 @@ def test_explicit_overload_selection(self): self.assertTrue(value == 2147483647) value = MethodTest.Overloaded.__overloads__[System.Int64]( - long(9223372036854775807) - ) + long(9223372036854775807)) self.assertTrue(value == long(9223372036854775807)) # Python 3 has no explicit long type, use System.Int64 instead if PY2: value = MethodTest.Overloaded.__overloads__[long]( - long(9223372036854775807) - ) + long(9223372036854775807)) self.assertTrue(value == long(9223372036854775807)) value = MethodTest.Overloaded.__overloads__[System.UInt16](65000) self.assertTrue(value == 65000) - value = MethodTest.Overloaded.__overloads__[System.UInt32](long(4294967295)) + value = MethodTest.Overloaded.__overloads__[System.UInt32]( + long(4294967295)) self.assertTrue(value == long(4294967295)) value = MethodTest.Overloaded.__overloads__[System.UInt64]( - long(18446744073709551615) - ) + long(18446744073709551615)) self.assertTrue(value == long(18446744073709551615)) value = MethodTest.Overloaded.__overloads__[System.Single](3.402823e38) self.assertTrue(value == 3.402823e38) value = MethodTest.Overloaded.__overloads__[System.Double]( - 1.7976931348623157e308 - ) + 1.7976931348623157e308) self.assertTrue(value == 1.7976931348623157e308) value = MethodTest.Overloaded.__overloads__[float]( - 1.7976931348623157e308 - ) + 1.7976931348623157e308) self.assertTrue(value == 1.7976931348623157e308) value = MethodTest.Overloaded.__overloads__[System.Decimal]( - System.Decimal.One - ) + System.Decimal.One) self.assertTrue(value == System.Decimal.One) value = MethodTest.Overloaded.__overloads__[System.String]("spam") @@ -516,8 +507,7 @@ def test_explicit_overload_selection(self): atype = Array[System.Object] value = MethodTest.Overloaded.__overloads__[str, int, atype]( - "one", 1, atype([1, 2, 3]) - ) + "one", 1, atype([1, 2, 3])) self.assertTrue(value == 3) value = MethodTest.Overloaded.__overloads__[str, int]("one", 1) @@ -530,151 +520,152 @@ def test_overload_selection_with_array_types(self): """Check overload selection using array types.""" from Python.Test import ISayHello1, InterfaceTest, ShortEnum from System import Array + inst = InterfaceTest() vtype = Array[System.Boolean] - input = vtype([True, True]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([True, True]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == True) self.assertTrue(value[1] == True) vtype = Array[bool] - input = vtype([True, True]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([True, True]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == True) self.assertTrue(value[1] == True) vtype = Array[System.Byte] - input = vtype([0, 255]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0, 255]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0) self.assertTrue(value[1] == 255) vtype = Array[System.SByte] - input = vtype([0, 127]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0, 127]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0) self.assertTrue(value[1] == 127) vtype = Array[System.Char] - input = vtype([u'A', u'Z']) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([u'A', u'Z']) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == u'A') self.assertTrue(value[1] == u'Z') vtype = Array[System.Char] - input = vtype([0, 65535]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0, 65535]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == unichr(0)) self.assertTrue(value[1] == unichr(65535)) vtype = Array[System.Int16] - input = vtype([0, 32767]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0, 32767]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0) self.assertTrue(value[1] == 32767) vtype = Array[System.Int32] - input = vtype([0, 2147483647]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0, 2147483647]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0) self.assertTrue(value[1] == 2147483647) vtype = Array[int] - input = vtype([0, 2147483647]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0, 2147483647]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0) self.assertTrue(value[1] == 2147483647) vtype = Array[System.Int64] - input = vtype([0, long(9223372036854775807)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0, long(9223372036854775807)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0) self.assertTrue(value[1] == long(9223372036854775807)) # Python 3 has no explicit long type, use System.Int64 instead if PY2: vtype = Array[long] - input = vtype([0, long(9223372036854775807)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0, long(9223372036854775807)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0) self.assertTrue(value[1] == long(9223372036854775807)) vtype = Array[System.UInt16] - input = vtype([0, 65000]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0, 65000]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0) self.assertTrue(value[1] == 65000) vtype = Array[System.UInt32] - input = vtype([0, long(4294967295)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0, long(4294967295)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0) self.assertTrue(value[1] == long(4294967295)) vtype = Array[System.UInt64] - input = vtype([0, long(18446744073709551615)]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0, long(18446744073709551615)]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0) self.assertTrue(value[1] == long(18446744073709551615)) vtype = Array[System.Single] - input = vtype([0.0, 3.402823e38]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0.0, 3.402823e38]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0.0) self.assertTrue(value[1] == 3.402823e38) vtype = Array[System.Double] - input = vtype([0.0, 1.7976931348623157e308]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0.0, 1.7976931348623157e308]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0.0) self.assertTrue(value[1] == 1.7976931348623157e308) vtype = Array[float] - input = vtype([0.0, 1.7976931348623157e308]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([0.0, 1.7976931348623157e308]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == 0.0) self.assertTrue(value[1] == 1.7976931348623157e308) vtype = Array[System.Decimal] - input = vtype([System.Decimal.Zero, System.Decimal.One]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([System.Decimal.Zero, System.Decimal.One]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == System.Decimal.Zero) self.assertTrue(value[1] == System.Decimal.One) vtype = Array[System.String] - input = vtype(["one", "two"]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(["one", "two"]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == "one") self.assertTrue(value[1] == "two") vtype = Array[str] - input = vtype(["one", "two"]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype(["one", "two"]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == "one") self.assertTrue(value[1] == "two") vtype = Array[ShortEnum] - input = vtype([ShortEnum.Zero, ShortEnum.One]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([ShortEnum.Zero, ShortEnum.One]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0] == ShortEnum.Zero) self.assertTrue(value[1] == ShortEnum.One) vtype = Array[System.Object] - input = vtype([inst, inst]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([inst, inst]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].__class__ == inst.__class__) self.assertTrue(value[1].__class__ == inst.__class__) vtype = Array[InterfaceTest] - input = vtype([inst, inst]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([inst, inst]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].__class__ == inst.__class__) self.assertTrue(value[1].__class__ == inst.__class__) vtype = Array[ISayHello1] - input = vtype([inst, inst]) - value = MethodTest.Overloaded.__overloads__[vtype](input) + input_ = vtype([inst, inst]) + value = MethodTest.Overloaded.__overloads__[vtype](input_) self.assertTrue(value[0].__class__ == inst.__class__) self.assertTrue(value[1].__class__ == inst.__class__) @@ -682,27 +673,26 @@ def test_explicit_overload_selection_failure(self): """Check that overload selection fails correctly.""" with self.assertRaises(TypeError): - value = MethodTest.Overloaded.__overloads__[System.Type](True) + _ = MethodTest.Overloaded.__overloads__[System.Type](True) with self.assertRaises(TypeError): - value = MethodTest.Overloaded.__overloads__[int, int](1, 1) + _ = MethodTest.Overloaded.__overloads__[int, int](1, 1) with self.assertRaises(TypeError): - value = MethodTest.Overloaded.__overloads__[str, int, int]( - "", 1, 1 - ) + _ = MethodTest.Overloaded.__overloads__[str, int, int]("", 1, 1) with self.assertRaises(TypeError): - value = MethodTest.Overloaded.__overloads__[int, long](1) + _ = MethodTest.Overloaded.__overloads__[int, long](1) def test_we_can_bind_to_encoding_get_string(self): - """Check that we can bind to the Encoding.GetString method with variables.""" - + """Check that we can bind to the Encoding.GetString method + with variables.""" from System.Text import Encoding from System.IO import MemoryStream - myBytes = Encoding.UTF8.GetBytes('Some testing string') + + my_bytes = Encoding.UTF8.GetBytes('Some testing string') stream = MemoryStream() - stream.Write(myBytes, 0, myBytes.Length) + stream.Write(my_bytes, 0, my_bytes.Length) stream.Position = 0 buff = System.Array.CreateInstance(System.Byte, 3) diff --git a/src/tests/test_module.py b/src/tests/test_module.py index ad27cae9b..45f20a911 100644 --- a/src/tests/test_module.py +++ b/src/tests/test_module.py @@ -1,13 +1,14 @@ # -*- coding: utf-8 -*- import clr +import time import types import unittest import warnings from fnmatch import fnmatch from _compat import ClassType, PY2, PY3, range -from utils import isCLRClass, isCLRModule, isCLRRootModule +from utils import is_clr_class, is_clr_module, is_clr_root_module # testImplicitAssemblyLoad() passes on deprecation warning; perfect! # @@ -24,7 +25,7 @@ def test_import_hook_works(self): def test_import_clr(self): import clr - self.assertTrue(isCLRRootModule(clr)) + self.assertTrue(is_clr_root_module(clr)) def test_version_clr(self): import clr @@ -60,13 +61,13 @@ def test_module_interface(self): self.assertTrue(fnmatch(system_file, "*System*.dll") or fnmatch(system_file, "*mscorlib.dll"), "unexpected System.__file__: " + system_file) self.assertTrue(System.__doc__.startswith("Namespace containing types from the following assemblies:")) - self.assertTrue(isCLRClass(System.String)) - self.assertTrue(isCLRClass(System.Int32)) + self.assertTrue(is_clr_class(System.String)) + self.assertTrue(is_clr_class(System.Int32)) def test_simple_import(self): """Test simple import.""" import System - self.assertTrue(isCLRModule(System)) + self.assertTrue(is_clr_module(System)) self.assertTrue(System.__name__ == 'System') import sys @@ -85,7 +86,7 @@ def test_simple_import(self): def test_simple_import_with_alias(self): """Test simple import with aliasing.""" import System as mySystem - self.assertTrue(isCLRModule(mySystem)) + self.assertTrue(is_clr_module(mySystem)) self.assertTrue(mySystem.__name__ == 'System') import sys as mySys @@ -104,7 +105,7 @@ def test_simple_import_with_alias(self): def test_dotted_name_import(self): """Test dotted-name import.""" import System.Reflection - self.assertTrue(isCLRModule(System.Reflection)) + self.assertTrue(is_clr_module(System.Reflection)) self.assertTrue(System.Reflection.__name__ == 'System.Reflection') import xml.dom @@ -114,16 +115,16 @@ def test_dotted_name_import(self): def test_multiple_dotted_name_import(self): """Test an import bug with multiple dotted imports.""" import System.Data - self.assertTrue(isCLRModule(System.Data)) + self.assertTrue(is_clr_module(System.Data)) self.assertTrue(System.Data.__name__ == 'System.Data') import System.Data - self.assertTrue(isCLRModule(System.Data)) + self.assertTrue(is_clr_module(System.Data)) self.assertTrue(System.Data.__name__ == 'System.Data') def test_dotted_name_import_with_alias(self): """Test dotted-name import with aliasing.""" import System.Reflection as SysRef - self.assertTrue(isCLRModule(SysRef)) + self.assertTrue(is_clr_module(SysRef)) self.assertTrue(SysRef.__name__ == 'System.Reflection') import xml.dom as myDom @@ -133,7 +134,7 @@ def test_dotted_name_import_with_alias(self): def test_simple_import_from(self): """Test simple 'import from'.""" from System import Reflection - self.assertTrue(isCLRModule(Reflection)) + self.assertTrue(is_clr_module(Reflection)) self.assertTrue(Reflection.__name__ == 'System.Reflection') from xml import dom @@ -143,7 +144,7 @@ def test_simple_import_from(self): def test_simple_import_from_with_alias(self): """Test simple 'import from' with aliasing.""" from System import Collections as Coll - self.assertTrue(isCLRModule(Coll)) + self.assertTrue(is_clr_module(Coll)) self.assertTrue(Coll.__name__ == 'System.Collections') from xml import dom as myDom @@ -153,13 +154,12 @@ def test_simple_import_from_with_alias(self): def test_dotted_name_import_from(self): """Test dotted-name 'import from'.""" from System.Collections import Specialized - self.assertTrue(isCLRModule(Specialized)) + self.assertTrue(is_clr_module(Specialized)) self.assertTrue( - Specialized.__name__ == 'System.Collections.Specialized' - ) + Specialized.__name__ == 'System.Collections.Specialized') from System.Collections.Specialized import StringCollection - self.assertTrue(isCLRClass(StringCollection)) + self.assertTrue(is_clr_class(StringCollection)) self.assertTrue(StringCollection.__name__ == 'StringCollection') from xml.dom import pulldom @@ -173,11 +173,11 @@ def test_dotted_name_import_from(self): def test_dotted_name_import_from_with_alias(self): """Test dotted-name 'import from' with aliasing.""" from System.Collections import Specialized as Spec - self.assertTrue(isCLRModule(Spec)) + self.assertTrue(is_clr_module(Spec)) self.assertTrue(Spec.__name__ == 'System.Collections.Specialized') from System.Collections.Specialized import StringCollection as SC - self.assertTrue(isCLRClass(SC)) + self.assertTrue(is_clr_class(SC)) self.assertTrue(SC.__name__ == 'StringCollection') from xml.dom import pulldom as myPulldom @@ -193,7 +193,7 @@ def test_from_module_import_star(self): count = len(locals().keys()) m = __import__('System.Xml', globals(), locals(), ['*']) self.assertTrue(m.__name__ == 'System.Xml') - self.assertTrue(isCLRModule(m)) + self.assertTrue(is_clr_module(m)) self.assertTrue(len(locals().keys()) > count + 1) def test_implicit_assembly_load(self): @@ -211,10 +211,10 @@ def test_implicit_assembly_load(self): with warnings.catch_warnings(record=True) as w: clr.AddReference("System.Windows.Forms") import System.Windows.Forms as Forms - self.assertTrue(isCLRModule(Forms)) + self.assertTrue(is_clr_module(Forms)) self.assertTrue(Forms.__name__ == 'System.Windows.Forms') from System.Windows.Forms import Form - self.assertTrue(isCLRClass(Form)) + self.assertTrue(is_clr_class(Form)) self.assertTrue(Form.__name__ == 'Form') self.assertEqual(len(w), 0) @@ -241,7 +241,7 @@ def test_implicit_load_already_valid_namespace(self): # Python runtime to "do the right thing", allowing types from both # assemblies to be found in the System module implicitly. import System - self.assertTrue(isCLRClass(System.UriBuilder)) + self.assertTrue(is_clr_class(System.UriBuilder)) def test_import_non_existant_module(self): """Test import failure for a non-existent module.""" @@ -252,7 +252,7 @@ def test_lookup_no_namespace_type(self): """Test lookup of types without a qualified namespace.""" import Python.Test import clr - self.assertTrue(isCLRClass(clr.NoNamespaceType)) + self.assertTrue(is_clr_class(clr.NoNamespaceType)) def test_module_lookup_recursion(self): """Test for recursive lookup handling.""" @@ -262,23 +262,23 @@ def test_module_lookup_recursion(self): with self.assertRaises(AttributeError): import System - x = System.System + _ = System.System def test_module_get_attr(self): """Test module getattr behavior.""" import System int_type = System.Int32 - self.assertTrue(isCLRClass(int_type)) + self.assertTrue(is_clr_class(int_type)) module = System.Xml - self.assertTrue(isCLRModule(module)) + self.assertTrue(is_clr_module(module)) with self.assertRaises(AttributeError): - spam = System.Spam + _ = System.Spam with self.assertRaises(TypeError): - spam = getattr(System, 1) + _ = getattr(System, 1) def test_module_attr_abuse(self): """Test handling of attempts to set module attributes.""" @@ -322,26 +322,25 @@ def test_clr_add_reference(self): from System.IO import FileNotFoundException for name in ("System", "Python.Runtime"): assy = AddReference(name) - assyName = assy.GetName().Name - self.assertEqual(assyName, name) + assy_name = assy.GetName().Name + self.assertEqual(assy_name, name) with self.assertRaises(FileNotFoundException): AddReference("somethingtotallysilly") def test_assembly_load_thread_safety(self): - import time from Python.Test import ModuleTest # spin up .NET thread which loads assemblies and triggers AppDomain.AssemblyLoad event ModuleTest.RunThreads() time.sleep(1e-5) - for i in range(1, 100): + for _ in range(1, 100): # call import clr, which in AssemblyManager.GetNames iterates through the loaded types import clr # import some .NET types from System import DateTime from System import Guid from System.Collections.Generic import Dictionary - dict = Dictionary[Guid, DateTime]() + _ = Dictionary[Guid, DateTime]() ModuleTest.JoinThreads() diff --git a/src/tests/test_property.py b/src/tests/test_property.py index 8f1d5f9e1..8fb37768a 100644 --- a/src/tests/test_property.py +++ b/src/tests/test_property.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# + import unittest from Python.Test import PropertyTest @@ -70,25 +70,25 @@ def test_internal_property(self): """Test internal properties.""" with self.assertRaises(AttributeError): - PropertyTest().InternalProperty + _ = PropertyTest().InternalProperty with self.assertRaises(AttributeError): - PropertyTest().InternalStaticProperty + _ = PropertyTest().InternalStaticProperty with self.assertRaises(AttributeError): - PropertyTest.InternalStaticProperty + _ = PropertyTest.InternalStaticProperty def test_private_property(self): """Test private properties.""" with self.assertRaises(AttributeError): - PropertyTest().PrivateProperty + _ = PropertyTest().PrivateProperty with self.assertRaises(AttributeError): - PropertyTest().PrivateStaticProperty + _ = PropertyTest().PrivateStaticProperty with self.assertRaises(AttributeError): - PropertyTest.PrivateStaticProperty + _ = PropertyTest.PrivateStaticProperty def test_property_descriptor_get_set(self): """Test property descriptor get / set.""" diff --git a/src/tests/test_subclass.py b/src/tests/test_subclass.py index a1caa27a9..922e2651c 100644 --- a/src/tests/test_subclass.py +++ b/src/tests/test_subclass.py @@ -11,8 +11,8 @@ from _compat import range -# class that implements the test interface class InterfaceTestClass(IInterfaceTest): + """class that implements the test interface""" __namespace__ = "Python.Test" def foo(self): @@ -22,8 +22,8 @@ def bar(self, x, i): return "/".join([x] * i) -# class that derives from a class deriving from IInterfaceTest class DerivedClass(SubClassTest): + """class that derives from a class deriving from IInterfaceTest""" __namespace__ = "Python.Test" def foo(self): @@ -46,8 +46,8 @@ def return_list(self): return l -# class that implements IInterfaceTest.TestEvent class DerivedEventTest(IInterfaceTest): + """class that implements IInterfaceTest.TestEvent""" __namespace__ = "Python.Test" def __init__(self): @@ -67,7 +67,7 @@ def OnTestEvent(self, value): class SubClassTests(unittest.TestCase): - """Test subclassing managed types""" + """Test sub-classing managed types""" def test_base_class(self): """Test base class managed type""" diff --git a/src/tests/test_suite/test_callback.py b/src/tests/test_suite/test_callback.py index 412a27a66..2cb234442 100644 --- a/src/tests/test_suite/test_callback.py +++ b/src/tests/test_suite/test_callback.py @@ -15,18 +15,18 @@ def test_default_for_null(self): from Python.Test import CallbackTest test_instance = CallbackTest() - retVal = test_instance.Call_simpleDefaultArg_WithNull(__name__) - pythonRetVal = simpleDefaultArg(None) - self.assertEquals(retVal, pythonRetVal) + ret_val = test_instance.Call_simpleDefaultArg_WithNull(__name__) + python_ret_val = simpleDefaultArg(None) + self.assertEquals(ret_val, python_ret_val) def test_default_for_none(self): """Test that C# can use no argument for an optional python argument""" from Python.Test import CallbackTest test_instance = CallbackTest() - retVal = test_instance.Call_simpleDefaultArg_WithEmptyArgs(__name__) - pythonRetVal = simpleDefaultArg() - self.assertEquals(retVal, pythonRetVal) + ret_val = test_instance.Call_simpleDefaultArg_WithEmptyArgs(__name__) + python_ret_val = simpleDefaultArg() + self.assertEquals(ret_val, python_ret_val) def test_suite(): diff --git a/src/tests/test_thread.py b/src/tests/test_thread.py index 0f947933a..623be60a0 100644 --- a/src/tests/test_thread.py +++ b/src/tests/test_thread.py @@ -1,18 +1,11 @@ # -*- coding: utf-8 -*- -from __future__ import print_function - import threading import time import unittest from _compat import range, thread - - -def dprint(msg): - # Debugging helper to trace thread-related tests. - if 0: - print(msg) +from utils import dprint class ThreadTests(unittest.TestCase): diff --git a/src/tests/utils.py b/src/tests/utils.py index dd4d8767d..6729d7b30 100644 --- a/src/tests/utils.py +++ b/src/tests/utils.py @@ -5,14 +5,22 @@ Refactor utility functions and classes """ +from __future__ import print_function + from _compat import PY2, PY3 -def isCLRModule(ob): +def dprint(msg): + # Debugging helper to trace thread-related tests. + if 0: + print(msg) + + +def is_clr_module(ob): return type(ob).__name__ == 'ModuleObject' -def isCLRRootModule(ob): +def is_clr_root_module(ob): if PY3: # in Python 3 the clr module is a normal python module return ob.__name__ == "clr" @@ -20,7 +28,7 @@ def isCLRRootModule(ob): return type(ob).__name__ == 'CLRModule' -def isCLRClass(ob): +def is_clr_class(ob): return type(ob).__name__ == 'CLR Metatype' # for now From c583053c5a699e6300813d85a01357248436501d Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sun, 22 Jan 2017 02:38:47 -0700 Subject: [PATCH 10/13] Fix tests comparison to None, True, False, isinstance - Replace type(()) with tuple to clarify intent --- src/tests/test_array.py | 44 ++++++++++---------- src/tests/test_class.py | 2 +- src/tests/test_compat.py | 32 +++++++-------- src/tests/test_conversion.py | 38 +++++++++--------- src/tests/test_delegate.py | 4 +- src/tests/test_enum.py | 4 +- src/tests/test_event.py | 24 +++++------ src/tests/test_field.py | 20 ++++----- src/tests/test_generic.py | 20 ++++----- src/tests/test_indexer.py | 54 ++++++++++++------------- src/tests/test_interface.py | 2 +- src/tests/test_method.py | 78 ++++++++++++++++++------------------ src/tests/test_module.py | 32 +++++++-------- 13 files changed, 177 insertions(+), 177 deletions(-) diff --git a/src/tests/test_array.py b/src/tests/test_array.py index bcd50e386..36f225c82 100644 --- a/src/tests/test_array.py +++ b/src/tests/test_array.py @@ -127,17 +127,17 @@ def test_boolean_array(self): self.assertTrue(len(items) == 5) - self.assertTrue(items[0] == True) - self.assertTrue(items[1] == False) - self.assertTrue(items[2] == True) - self.assertTrue(items[3] == False) - self.assertTrue(items[4] == True) + self.assertTrue(items[0] is True) + self.assertTrue(items[1] is False) + self.assertTrue(items[2] is True) + self.assertTrue(items[3] is False) + self.assertTrue(items[4] is True) items[0] = False - self.assertTrue(items[0] == False) + self.assertTrue(items[0] is False) items[0] = True - self.assertTrue(items[0] == True) + self.assertTrue(items[0] is True) with self.assertRaises(TypeError): ob = Test.ByteArrayTest() @@ -700,7 +700,7 @@ def test_object_array(self): self.assertTrue(items[0] == 99) items[0] = None - self.assertTrue(items[0] == None) + self.assertTrue(items[0] is None) with self.assertRaises(TypeError): ob = Test.ObjectArrayTest() @@ -717,20 +717,20 @@ def test_null_array(self): self.assertTrue(len(items) == 5) - self.assertTrue(items[0] == None) - self.assertTrue(items[4] == None) + self.assertTrue(items[0] is None) + self.assertTrue(items[4] is None) items[0] = "spam" self.assertTrue(items[0] == "spam") items[0] = None - self.assertTrue(items[0] == None) + self.assertTrue(items[0] is None) items[-4] = "spam" self.assertTrue(items[-4] == "spam") items[-1] = None - self.assertTrue(items[-1] == None) + self.assertTrue(items[-1] is None) empty = ob.empty self.assertTrue(len(empty) == 0) @@ -763,7 +763,7 @@ def test_interface_array(self): self.assertTrue(items[-1].GetValue() == "0") items[0] = None - self.assertTrue(items[0] == None) + self.assertTrue(items[0] is None) with self.assertRaises(TypeError): ob = Test.InterfaceArrayTest() @@ -801,7 +801,7 @@ def test_typed_array(self): self.assertTrue(items[-1].GetValue() == "0") items[0] = None - self.assertTrue(items[0] == None) + self.assertTrue(items[0] is None) with self.assertRaises(TypeError): ob = Test.TypedArrayTest() @@ -889,7 +889,7 @@ def test_array_iteration(self): items = Test.NullArrayTest().items for i in items: - self.assertTrue(i == None) + self.assertTrue(i is None) empty = Test.NullArrayTest().empty @@ -1008,7 +1008,7 @@ def test_tuple_array_conversion_type_checking(self): result = ArrayConversionTest.EchoRange(items) self.assertTrue(result[0].__class__ == Spam) - self.assertTrue(result[1] == None) + self.assertTrue(result[1] is None) self.assertTrue(len(result) == 10) with self.assertRaises(TypeError): @@ -1037,7 +1037,7 @@ def test_list_array_conversion_type_checking(self): result = ArrayConversionTest.EchoRange(items) self.assertTrue(result[0].__class__ == Spam) - self.assertTrue(result[1] == None) + self.assertTrue(result[1] is None) self.assertTrue(len(result) == 10) with self.assertRaises(TypeError): @@ -1064,7 +1064,7 @@ def test_sequence_array_conversion_type_checking(self): result = ArrayConversionTest.EchoRange(items) self.assertTrue(result[0].__class__ == Spam) - self.assertTrue(result[1] == None) + self.assertTrue(result[1] is None) self.assertTrue(len(result) == 10) with self.assertRaises(TypeError): @@ -1143,13 +1143,13 @@ def test_special_array_creation(self): inst = InterfaceTest() value = Array[System.Boolean]([True, True]) - self.assertTrue(value[0] == True) - self.assertTrue(value[1] == True) + self.assertTrue(value[0] is True) + self.assertTrue(value[1] is True) self.assertTrue(value.Length == 2) value = Array[bool]([True, True]) - self.assertTrue(value[0] == True) - self.assertTrue(value[1] == True) + self.assertTrue(value[0] is True) + self.assertTrue(value[1] is True) self.assertTrue(value.Length == 2) value = Array[System.Byte]([0, 255]) diff --git a/src/tests/test_class.py b/src/tests/test_class.py index 80cee9009..bf3b6f143 100644 --- a/src/tests/test_class.py +++ b/src/tests/test_class.py @@ -26,7 +26,7 @@ def test_class_standard_attrs(self): self.assertTrue(ClassTest.__name__ == 'ClassTest') self.assertTrue(ClassTest.__module__ == 'Python.Test') - self.assertTrue(type(ClassTest.__dict__) == DictProxyType) + self.assertTrue(isinstance(ClassTest.__dict__, DictProxyType)) self.assertTrue(len(ClassTest.__doc__) > 0) def test_class_docstrings(self): diff --git a/src/tests/test_compat.py b/src/tests/test_compat.py index c26bb9e5d..cea51ca49 100644 --- a/src/tests/test_compat.py +++ b/src/tests/test_compat.py @@ -20,17 +20,17 @@ def test_simple_import(self): self.assertTrue(CLR.__name__ == 'clr') import sys - self.assertTrue(type(sys) == types.ModuleType) + self.assertTrue(isinstance(sys, types.ModuleType)) self.assertTrue(sys.__name__ == 'sys') if PY3: import http.client - self.assertTrue(type(http.client) == types.ModuleType) + self.assertTrue(isinstance(http.client, types.ModuleType)) self.assertTrue(http.client.__name__ == 'http.client') elif PY2: import httplib - self.assertTrue(type(httplib) == types.ModuleType) + self.assertTrue(isinstance(httplib, types.ModuleType)) self.assertTrue(httplib.__name__ == 'httplib') def test_simple_import_with_alias(self): @@ -40,17 +40,17 @@ def test_simple_import_with_alias(self): self.assertTrue(myCLR.__name__ == 'clr') import sys as mySys - self.assertTrue(type(mySys) == types.ModuleType) + self.assertTrue(isinstance(mySys, types.ModuleType)) self.assertTrue(mySys.__name__ == 'sys') if PY3: import http.client as myHttplib - self.assertTrue(type(myHttplib) == types.ModuleType) + self.assertTrue(isinstance(myHttplib, types.ModuleType)) self.assertTrue(myHttplib.__name__ == 'http.client') elif PY2: import httplib as myHttplib - self.assertTrue(type(myHttplib) == types.ModuleType) + self.assertTrue(isinstance(myHttplib, types.ModuleType)) self.assertTrue(myHttplib.__name__ == 'httplib') def test_dotted_name_import(self): @@ -66,7 +66,7 @@ def test_dotted_name_import(self): self.assertTrue(System is CLR.System) import xml.dom - self.assertTrue(type(xml.dom) == types.ModuleType) + self.assertTrue(isinstance(xml.dom, types.ModuleType)) self.assertTrue(xml.dom.__name__ == 'xml.dom') def test_dotted_name_import_with_alias(self): @@ -82,7 +82,7 @@ def test_dotted_name_import_with_alias(self): self.assertTrue(mySystem is myCLRSystem) import xml.dom as myDom - self.assertTrue(type(myDom) == types.ModuleType) + self.assertTrue(isinstance(myDom, types.ModuleType)) self.assertTrue(myDom.__name__ == 'xml.dom') def test_simple_import_from(self): @@ -92,7 +92,7 @@ def test_simple_import_from(self): self.assertTrue(System.__name__ == 'System') from xml import dom - self.assertTrue(type(dom) == types.ModuleType) + self.assertTrue(isinstance(dom, types.ModuleType)) self.assertTrue(dom.__name__ == 'xml.dom') def test_simple_import_from_with_alias(self): @@ -102,7 +102,7 @@ def test_simple_import_from_with_alias(self): self.assertTrue(mySystem.__name__ == 'System') from xml import dom as myDom - self.assertTrue(type(myDom) == types.ModuleType) + self.assertTrue(isinstance(myDom, types.ModuleType)) self.assertTrue(myDom.__name__ == 'xml.dom') def test_dotted_name_import_from(self): @@ -116,11 +116,11 @@ def test_dotted_name_import_from(self): self.assertTrue(XmlDocument.__name__ == 'XmlDocument') from xml.dom import pulldom - self.assertTrue(type(pulldom) == types.ModuleType) + self.assertTrue(isinstance(pulldom, types.ModuleType)) self.assertTrue(pulldom.__name__ == 'xml.dom.pulldom') from xml.dom.pulldom import PullDOM - self.assertTrue(type(PullDOM) == ClassType) + self.assertTrue(isinstance(PullDOM, ClassType)) self.assertTrue(PullDOM.__name__ == 'PullDOM') def test_dotted_name_import_from_with_alias(self): @@ -134,11 +134,11 @@ def test_dotted_name_import_from_with_alias(self): self.assertTrue(myXmlDocument.__name__ == 'XmlDocument') from xml.dom import pulldom as myPulldom - self.assertTrue(type(myPulldom) == types.ModuleType) + self.assertTrue(isinstance(myPulldom, types.ModuleType)) self.assertTrue(myPulldom.__name__ == 'xml.dom.pulldom') from xml.dom.pulldom import PullDOM as myPullDOM - self.assertTrue(type(myPullDOM) == ClassType) + self.assertTrue(isinstance(myPullDOM, ClassType)) self.assertTrue(myPullDOM.__name__ == 'PullDOM') def test_from_module_import_star(self): @@ -163,13 +163,13 @@ def test_explicit_assembly_load(self): import sys assembly = Assembly.LoadWithPartialName('System.Data') - self.assertTrue(assembly != None) + self.assertTrue(assembly is not None) import CLR.System.Data self.assertTrue('System.Data' in sys.modules) assembly = Assembly.LoadWithPartialName('SpamSpamSpamSpamEggsAndSpam') - self.assertTrue(assembly == None) + self.assertTrue(assembly is None) def test_implicit_load_already_valid_namespace(self): """Test implicit assembly load over an already valid namespace.""" diff --git a/src/tests/test_conversion.py b/src/tests/test_conversion.py index 8400292d5..0d0cd4008 100644 --- a/src/tests/test_conversion.py +++ b/src/tests/test_conversion.py @@ -14,52 +14,52 @@ class ConversionTests(unittest.TestCase): def test_bool_conversion(self): """Test bool conversion.""" ob = ConversionTest() - self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField == 0) ob.BooleanField = True - self.assertTrue(ob.BooleanField == True) + self.assertTrue(ob.BooleanField is True) self.assertTrue(ob.BooleanField is True) self.assertTrue(ob.BooleanField == 1) ob.BooleanField = False - self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField == 0) ob.BooleanField = 1 - self.assertTrue(ob.BooleanField == True) + self.assertTrue(ob.BooleanField is True) self.assertTrue(ob.BooleanField is True) self.assertTrue(ob.BooleanField == 1) ob.BooleanField = 0 - self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField == 0) ob.BooleanField = System.Boolean(None) - self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField == 0) ob.BooleanField = System.Boolean('') - self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField == 0) ob.BooleanField = System.Boolean(0) - self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField is False) self.assertTrue(ob.BooleanField == 0) ob.BooleanField = System.Boolean(1) - self.assertTrue(ob.BooleanField == True) + self.assertTrue(ob.BooleanField is True) self.assertTrue(ob.BooleanField is True) self.assertTrue(ob.BooleanField == 1) ob.BooleanField = System.Boolean('a') - self.assertTrue(ob.BooleanField == True) + self.assertTrue(ob.BooleanField is True) self.assertTrue(ob.BooleanField is True) self.assertTrue(ob.BooleanField == 1) @@ -531,7 +531,7 @@ def test_string_conversion(self): self.assertTrue(ob.StringField == u'\uffff\uffff') ob.StringField = None - self.assertTrue(ob.StringField == None) + self.assertTrue(ob.StringField is None) with self.assertRaises(TypeError): ConversionTest().StringField = 1 @@ -552,7 +552,7 @@ def test_interface_conversion(self): # need to test spam subclass here. ob.SpamField = None - self.assertTrue(ob.SpamField == None) + self.assertTrue(ob.SpamField is None) with self.assertRaises(TypeError): ob = ConversionTest() @@ -567,14 +567,14 @@ def test_object_conversion(self): from Python.Test import Spam ob = ConversionTest() - self.assertTrue(ob.ObjectField == None) + self.assertTrue(ob.ObjectField is None) ob.ObjectField = Spam("eggs") self.assertTrue(ob.ObjectField.__class__.__name__ == "Spam") self.assertTrue(ob.ObjectField.GetValue() == "eggs") ob.ObjectField = None - self.assertTrue(ob.ObjectField == None) + self.assertTrue(ob.ObjectField is None) ob.ObjectField = System.String("spam") self.assertTrue(ob.ObjectField == "spam") @@ -627,13 +627,13 @@ def test_null_conversion(self): ob = ConversionTest() ob.StringField = None - self.assertTrue(ob.StringField == None) + self.assertTrue(ob.StringField is None) ob.ObjectField = None - self.assertTrue(ob.ObjectField == None) + self.assertTrue(ob.ObjectField is None) ob.SpamField = None - self.assertTrue(ob.SpamField == None) + self.assertTrue(ob.SpamField is None) # Primitive types and enums should not be set to null. @@ -647,7 +647,7 @@ def test_byte_array_conversion(self): """Test byte array conversion.""" ob = ConversionTest() - self.assertTrue(ob.ByteArrayField == None) + self.assertTrue(ob.ByteArrayField is None) ob.ByteArrayField = [0, 1, 2, 3, 4] array = ob.ByteArrayField @@ -665,7 +665,7 @@ def test_sbyte_array_conversion(self): """Test sbyte array conversion.""" ob = ConversionTest() - self.assertTrue(ob.SByteArrayField == None) + self.assertTrue(ob.SByteArrayField is None) ob.SByteArrayField = [0, 1, 2, 3, 4] array = ob.SByteArrayField diff --git a/src/tests/test_delegate.py b/src/tests/test_delegate.py index 1d0c30533..4963a09b8 100644 --- a/src/tests/test_delegate.py +++ b/src/tests/test_delegate.py @@ -20,8 +20,8 @@ def test_delegate_standard_attrs(self): self.assertTrue(PublicDelegate.__name__ == 'PublicDelegate') self.assertTrue(PublicDelegate.__module__ == 'Python.Test') - self.assertTrue(type(PublicDelegate.__dict__) == DictProxyType) - self.assertTrue(PublicDelegate.__doc__ == None) + self.assertTrue(isinstance(PublicDelegate.__dict__, DictProxyType)) + self.assertTrue(PublicDelegate.__doc__ is None) def test_global_delegate_visibility(self): """Test visibility of module-level delegates.""" diff --git a/src/tests/test_enum.py b/src/tests/test_enum.py index c24f5aabd..e7147e69c 100644 --- a/src/tests/test_enum.py +++ b/src/tests/test_enum.py @@ -16,8 +16,8 @@ def test_enum_standard_attrs(self): self.assertTrue(DayOfWeek.__name__ == 'DayOfWeek') self.assertTrue(DayOfWeek.__module__ == 'System') - self.assertTrue(type(DayOfWeek.__dict__) == DictProxyType) - self.assertTrue(DayOfWeek.__doc__ == None) + self.assertTrue(isinstance(DayOfWeek.__dict__, DictProxyType)) + self.assertTrue(DayOfWeek.__doc__ is None) def test_enum_get_member(self): """Test access to enum members.""" diff --git a/src/tests/test_event.py b/src/tests/test_event.py index de337c00b..237d60777 100644 --- a/src/tests/test_event.py +++ b/src/tests/test_event.py @@ -18,7 +18,7 @@ def test_public_instance_event(self): ob = EventTest() handler = GenericHandler() - self.assertTrue(handler.value == None) + self.assertTrue(handler.value is None) ob.PublicEvent += handler.handler @@ -30,7 +30,7 @@ def test_public_instance_event(self): def test_public_static_event(self): """Test public static events.""" handler = GenericHandler() - self.assertTrue(handler.value == None) + self.assertTrue(handler.value is None) EventTest.PublicStaticEvent += handler.handler @@ -42,7 +42,7 @@ def test_protected_instance_event(self): ob = EventTest() handler = GenericHandler() - self.assertTrue(handler.value == None) + self.assertTrue(handler.value is None) ob.ProtectedEvent += handler.handler @@ -54,7 +54,7 @@ def test_protected_instance_event(self): def test_protected_static_event(self): """Test protected static events.""" handler = GenericHandler() - self.assertTrue(handler.value == None) + self.assertTrue(handler.value is None) EventTest.ProtectedStaticEvent += handler.handler @@ -121,7 +121,7 @@ def test_instance_method_handler(self): handler = GenericHandler() ob.PublicEvent += handler.handler - self.assertTrue(handler.value == None) + self.assertTrue(handler.value is None) ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) @@ -138,7 +138,7 @@ def test_var_args_instance_method_handler(self): handler = VariableArgsHandler() ob.PublicEvent += handler.handler - self.assertTrue(handler.value == None) + self.assertTrue(handler.value is None) ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) @@ -155,7 +155,7 @@ def test_callableob_handler(self): handler = CallableHandler() ob.PublicEvent += handler - self.assertTrue(handler.value == None) + self.assertTrue(handler.value is None) ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) @@ -172,7 +172,7 @@ def test_var_args_callable_handler(self): handler = VarCallableHandler() ob.PublicEvent += handler - self.assertTrue(handler.value == None) + self.assertTrue(handler.value is None) ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) @@ -190,7 +190,7 @@ def test_static_method_handler(self): StaticMethodHandler.value = None ob.PublicEvent += handler.handler - self.assertTrue(handler.value == None) + self.assertTrue(handler.value is None) ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) @@ -208,7 +208,7 @@ def test_class_method_handler(self): ClassMethodHandler.value = None ob.PublicEvent += handler.handler - self.assertTrue(handler.value == None) + self.assertTrue(handler.value is None) ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) @@ -271,7 +271,7 @@ def handler(sender, args, dict_=dict_): dict_['value'] = args.value ob.PublicEvent += handler - self.assertTrue(dict_['value'] == None) + self.assertTrue(dict_['value'] is None) ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(dict_['value'] == 10) @@ -515,7 +515,7 @@ def test_explicit_cls_event_registration(self): delegate = TestEventHandler(handler.handler) ob.add_PublicEvent(delegate) - self.assertTrue(handler.value == None) + self.assertTrue(handler.value is None) ob.OnPublicEvent(TestEventArgs(10)) self.assertTrue(handler.value == 10) diff --git a/src/tests/test_field.py b/src/tests/test_field.py index 6300309ce..b1d596fea 100644 --- a/src/tests/test_field.py +++ b/src/tests/test_field.py @@ -182,19 +182,19 @@ def test_boolean_field(self): """Test boolean fields.""" # change this to true / false later for Python 2.3? ob = FieldTest() - self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) ob.BooleanField = True - self.assertTrue(ob.BooleanField == True) + self.assertTrue(ob.BooleanField is True) ob.BooleanField = False - self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) ob.BooleanField = 1 - self.assertTrue(ob.BooleanField == True) + self.assertTrue(ob.BooleanField is True) ob.BooleanField = 0 - self.assertTrue(ob.BooleanField == False) + self.assertTrue(ob.BooleanField is False) def test_sbyte_field(self): """Test sbyte fields.""" @@ -322,7 +322,7 @@ def test_interface_field(self): def test_object_field(self): """Test ob fields.""" ob = FieldTest() - self.assertTrue(ob.ObjectField == None) + self.assertTrue(ob.ObjectField is None) ob.ObjectField = System.String("spam") self.assertTrue(ob.ObjectField == "spam") @@ -331,7 +331,7 @@ def test_object_field(self): self.assertTrue(ob.ObjectField == 1) ob.ObjectField = None - self.assertTrue(ob.ObjectField == None) + self.assertTrue(ob.ObjectField is None) def test_enum_field(self): """Test enum fields.""" @@ -348,13 +348,13 @@ def test_nullable_field(self): ob = FieldTest() ob.StringField = None - self.assertTrue(ob.StringField == None) + self.assertTrue(ob.StringField is None) ob.ObjectField = None - self.assertTrue(ob.ObjectField == None) + self.assertTrue(ob.ObjectField is None) ob.SpamField = None - self.assertTrue(ob.SpamField == None) + self.assertTrue(ob.SpamField is None) # Primitive types and enums should not be set to null. diff --git a/src/tests/test_generic.py b/src/tests/test_generic.py index fb5e0e5ea..8d5ea4c4c 100644 --- a/src/tests/test_generic.py +++ b/src/tests/test_generic.py @@ -159,12 +159,12 @@ def test_python_type_aliasing(self): dict_ = Dictionary[bool, bool]() self.assertEquals(dict_.Count, 0) dict_.Add(True, False) - self.assertTrue(dict_[True] == False) + self.assertTrue(dict_[True] is False) dict_ = Dictionary[System.Boolean, System.Boolean]() self.assertEquals(dict_.Count, 0) dict_.Add(True, False) - self.assertTrue(dict_[True] == False) + self.assertTrue(dict_[True] is False) def test_generic_reference_type(self): """Test usage of generic reference type definitions.""" @@ -398,11 +398,11 @@ def test_generic_method_overload_selection(self): # public static Q Overloaded(Q arg) value = type.Overloaded[bool](True) - self.assertTrue(value == True) + self.assertTrue(value is True) # public Q Overloaded(Q arg) value = inst.Overloaded[bool](True) - self.assertTrue(value == True) + self.assertTrue(value is True) # public static U Overloaded(Q arg1, U arg2) value = type.Overloaded[bool, str](True, "true") @@ -414,11 +414,11 @@ def test_generic_method_overload_selection(self): # public static U Overloaded(Q arg1, U arg2) value = type.Overloaded[str, bool]("true", True) - self.assertTrue(value == True) + self.assertTrue(value is True) # public U Overloaded(Q arg1, U arg2) value = inst.Overloaded[str, bool]("true", True) - self.assertTrue(value == True) + self.assertTrue(value is True) # public static string Overloaded(int arg1, int arg2, string arg3) value = type.Overloaded[str](123, 456, "success") @@ -444,12 +444,12 @@ def test_method_overload_selection_with_generic_types(self): vtype = GenericWrapper[System.Boolean] input_ = vtype(True) value = MethodTest.Overloaded.__overloads__[vtype](input_) - self.assertTrue(value.value == True) + self.assertTrue(value.value is True) vtype = GenericWrapper[bool] input_ = vtype(True) value = MethodTest.Overloaded.__overloads__[vtype](input_) - self.assertTrue(value.value == True) + self.assertTrue(value.value is True) vtype = GenericWrapper[System.Byte] input_ = vtype(255) @@ -580,14 +580,14 @@ def test_overload_selection_with_arrays_of_generic_types(self): vtype = System.Array[gtype] input_ = vtype([gtype(True), gtype(True)]) value = MethodTest.Overloaded.__overloads__[vtype](input_) - self.assertTrue(value[0].value == True) + self.assertTrue(value[0].value is True) self.assertTrue(value.Length == 2) gtype = GenericWrapper[bool] vtype = System.Array[gtype] input_ = vtype([gtype(True), gtype(True)]) value = MethodTest.Overloaded.__overloads__[vtype](input_) - self.assertTrue(value[0].value == True) + self.assertTrue(value[0].value is True) self.assertTrue(value.Length == 2) gtype = GenericWrapper[System.Byte] diff --git a/src/tests/test_indexer.py b/src/tests/test_indexer.py index 62581aed4..422f7282e 100644 --- a/src/tests/test_indexer.py +++ b/src/tests/test_indexer.py @@ -20,7 +20,7 @@ def test_public_indexer(self): ob[1] = "one" self.assertTrue(ob[1] == "one") - self.assertTrue(ob[10] == None) + self.assertTrue(ob[10] is None) def test_protected_indexer(self): """Test protected indexers.""" @@ -32,7 +32,7 @@ def test_protected_indexer(self): ob[1] = "one" self.assertTrue(ob[1] == "one") - self.assertTrue(ob[10] == None) + self.assertTrue(ob[10] is None) def test_internal_indexer(self): """Test internal indexers.""" @@ -64,8 +64,8 @@ def test_boolean_indexer(self): """Test boolean indexers.""" ob = Test.BooleanIndexerTest() - self.assertTrue(ob[True] == None) - self.assertTrue(ob[1] == None) + self.assertTrue(ob[True] is None) + self.assertTrue(ob[1] is None) ob[0] = "false" self.assertTrue(ob[0] == "false") @@ -85,7 +85,7 @@ def test_byte_indexer(self): max_ = 255 min_ = 0 - self.assertTrue(ob[max_] == None) + self.assertTrue(ob[max_] is None) ob[max_] = str(max_) self.assertTrue(ob[max_] == str(max_)) @@ -107,7 +107,7 @@ def test_sbyte_indexer(self): max_ = 127 min_ = -128 - self.assertTrue(ob[max_] == None) + self.assertTrue(ob[max_] is None) ob[max_] = str(max_) self.assertTrue(ob[max_] == str(max_)) @@ -129,7 +129,7 @@ def test_char_indexer(self): max_ = unichr(65535) min_ = unichr(0) - self.assertTrue(ob[max_] == None) + self.assertTrue(ob[max_] is None) ob[max_] = "max_" self.assertTrue(ob[max_] == "max_") @@ -151,7 +151,7 @@ def test_int16_indexer(self): max_ = 32767 min_ = -32768 - self.assertTrue(ob[max_] == None) + self.assertTrue(ob[max_] is None) ob[max_] = str(max_) self.assertTrue(ob[max_] == str(max_)) @@ -173,7 +173,7 @@ def test_int32_indexer(self): max_ = 2147483647 min_ = -2147483648 - self.assertTrue(ob[max_] == None) + self.assertTrue(ob[max_] is None) ob[max_] = str(max_) self.assertTrue(ob[max_] == str(max_)) @@ -195,7 +195,7 @@ def test_int64_indexer(self): max_ = long(9223372036854775807) min_ = long(-9223372036854775808) - self.assertTrue(ob[max_] == None) + self.assertTrue(ob[max_] is None) ob[max_] = str(max_) self.assertTrue(ob[max_] == str(max_)) @@ -217,7 +217,7 @@ def test_uint16_indexer(self): max_ = 65535 min_ = 0 - self.assertTrue(ob[max_] == None) + self.assertTrue(ob[max_] is None) ob[max_] = str(max_) self.assertTrue(ob[max_] == str(max_)) @@ -239,7 +239,7 @@ def test_uint32_indexer(self): max_ = long(4294967295) min_ = 0 - self.assertTrue(ob[max_] == None) + self.assertTrue(ob[max_] is None) ob[max_] = str(max_) self.assertTrue(ob[max_] == str(max_)) @@ -261,7 +261,7 @@ def test_uint64_indexer(self): max_ = long(18446744073709551615) min_ = 0 - self.assertTrue(ob[max_] == None) + self.assertTrue(ob[max_] is None) ob[max_] = str(max_) self.assertTrue(ob[max_] == str(max_)) @@ -283,7 +283,7 @@ def test_single_indexer(self): max_ = 3.402823e38 min_ = -3.402823e38 - self.assertTrue(ob[max_] == None) + self.assertTrue(ob[max_] is None) ob[max_] = "max_" self.assertTrue(ob[max_] == "max_") @@ -305,7 +305,7 @@ def test_double_indexer(self): max_ = 1.7976931348623157e308 min_ = -1.7976931348623157e308 - self.assertTrue(ob[max_] == None) + self.assertTrue(ob[max_] is None) ob[max_] = "max_" self.assertTrue(ob[max_] == "max_") @@ -329,7 +329,7 @@ def test_decimal_indexer(self): max_d = Decimal.Parse("79228162514264337593543950335") min_d = Decimal.Parse("-79228162514264337593543950335") - self.assertTrue(ob[max_d] == None) + self.assertTrue(ob[max_d] is None) ob[max_d] = "max_" self.assertTrue(ob[max_d] == "max_") @@ -349,8 +349,8 @@ def test_string_indexer(self): """Test String indexers.""" ob = Test.StringIndexerTest() - self.assertTrue(ob["spam"] == None) - self.assertTrue(ob[u"spam"] == None) + self.assertTrue(ob["spam"] is None) + self.assertTrue(ob[u"spam"] is None) ob["spam"] = "spam" self.assertTrue(ob["spam"] == "spam") @@ -378,7 +378,7 @@ def test_enum_indexer(self): key = Test.ShortEnum.One - self.assertTrue(ob[key] == None) + self.assertTrue(ob[key] is None) ob[key] = "spam" self.assertTrue(ob[key] == "spam") @@ -404,10 +404,10 @@ def test_object_indexer(self): from Python.Test import Spam spam = Spam("spam") - self.assertTrue(ob[spam] == None) - self.assertTrue(ob["spam"] == None) - self.assertTrue(ob[1] == None) - self.assertTrue(ob[None] == None) + self.assertTrue(ob[spam] is None) + self.assertTrue(ob["spam"] is None) + self.assertTrue(ob[1] is None) + self.assertTrue(ob[None] is None) ob[spam] = "spam" self.assertTrue(ob[spam] == "spam") @@ -436,7 +436,7 @@ def test_interface_indexer(self): from Python.Test import Spam spam = Spam("spam") - self.assertTrue(ob[spam] == None) + self.assertTrue(ob[spam] is None) ob[spam] = "spam" self.assertTrue(ob[spam] == "spam") @@ -459,7 +459,7 @@ def test_typed_indexer(self): from Python.Test import Spam spam = Spam("spam") - self.assertTrue(ob[spam] == None) + self.assertTrue(ob[spam] is None) ob[spam] = "spam" self.assertTrue(ob[spam] == "spam") @@ -485,7 +485,7 @@ def test_multi_arg_indexer(self): ob[1, 9] = "one nine" self.assertTrue(ob[1, 9] == "one nine") - self.assertTrue(ob[10, 50] == None) + self.assertTrue(ob[10, 50] is None) with self.assertRaises(TypeError): ob = Test.MultiArgIndexerTest() @@ -553,7 +553,7 @@ def test_unbound_indexer(self): Test.PublicIndexerTest.__setitem__(ob, 1, "one") self.assertTrue(ob[1] == "one") - self.assertTrue(ob[10] == None) + self.assertTrue(ob[10] is None) def test_indexer_abuse(self): """Test indexer abuse.""" diff --git a/src/tests/test_interface.py b/src/tests/test_interface.py index d83a7a9f1..1fac36eb8 100644 --- a/src/tests/test_interface.py +++ b/src/tests/test_interface.py @@ -16,7 +16,7 @@ def test_interface_standard_attrs(self): self.assertTrue(IPublicInterface.__name__ == 'IPublicInterface') self.assertTrue(IPublicInterface.__module__ == 'Python.Test') - self.assertTrue(type(IPublicInterface.__dict__) == DictProxyType) + self.assertTrue(isinstance(IPublicInterface.__dict__, DictProxyType)) def test_global_interface_visibility(self): """Test visibility of module-level interfaces.""" diff --git a/src/tests/test_method.py b/src/tests/test_method.py index 07b73a1e7..6c4454004 100644 --- a/src/tests/test_method.py +++ b/src/tests/test_method.py @@ -189,7 +189,7 @@ def test_null_array_conversion(self): """Test null array conversion in method call.""" ob = MethodTest() r = ob.TestNullArrayConversion(None) - self.assertTrue(r == None) + self.assertTrue(r is None) def test_string_params_args(self): """Test use of string params.""" @@ -243,37 +243,37 @@ def test_non_params_array_in_last_place(self): def test_string_out_params(self): """Test use of string out-parameters.""" result = MethodTest.TestStringOutParams("hi", "there") - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertEqual(len(result), 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(result[1] == "output string") result = MethodTest.TestStringOutParams("hi", None) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertEqual(len(result), 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(result[1] == "output string") def test_string_ref_params(self): """Test use of string byref parameters.""" result = MethodTest.TestStringRefParams("hi", "there") - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertEqual(len(result), 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(result[1] == "output string") result = MethodTest.TestStringRefParams("hi", None) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertEqual(len(result), 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(result[1] == "output string") def test_value_out_params(self): """Test use of value type out-parameters.""" result = MethodTest.TestValueOutParams("hi", 1) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertEqual(len(result), 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(result[1] == 42) # None cannot be converted to a value type like int, long, etc. @@ -283,9 +283,9 @@ def test_value_out_params(self): def test_value_ref_params(self): """Test use of value type byref parameters.""" result = MethodTest.TestValueRefParams("hi", 1) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertEqual(len(result), 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(result[1] == 42) # None cannot be converted to a value type like int, long, etc. @@ -295,37 +295,37 @@ def test_value_ref_params(self): def test_object_out_params(self): """Test use of object out-parameters.""" result = MethodTest.TestObjectOutParams("hi", MethodTest()) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertTrue(len(result) == 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(isinstance(result[1], System.Exception)) result = MethodTest.TestObjectOutParams("hi", None) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertEqual(len(result), 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(isinstance(result[1], System.Exception)) def test_object_ref_params(self): """Test use of object byref parameters.""" result = MethodTest.TestObjectRefParams("hi", MethodTest()) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertEqual(len(result), 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(isinstance(result[1], System.Exception)) result = MethodTest.TestObjectRefParams("hi", None) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertEqual(len(result), 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(isinstance(result[1], System.Exception)) def test_struct_out_params(self): """Test use of struct out-parameters.""" result = MethodTest.TestStructOutParams("hi", System.Guid.NewGuid()) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertEqual(len(result), 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(isinstance(result[1], System.Guid)) # None cannot be converted to a value type like a struct @@ -335,9 +335,9 @@ def test_struct_out_params(self): def test_struct_ref_params(self): """Test use of struct byref parameters.""" result = MethodTest.TestStructRefParams("hi", System.Guid.NewGuid()) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertTrue(len(result) == 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(isinstance(result[1], System.Guid)) # None cannot be converted to a value type like a struct @@ -388,16 +388,16 @@ def test_explicit_selection_with_out_modifier(self): refstr = System.String("").GetType().MakeByRefType() result = MethodTest.TestStringOutParams.__overloads__[str, refstr]( "hi", "there") - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertTrue(len(result) == 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(result[1] == "output string") result = MethodTest.TestStringOutParams.__overloads__[str, refstr]( "hi", None) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertTrue(len(result) == 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(result[1] == "output string") def test_explicit_selection_with_ref_modifier(self): @@ -405,16 +405,16 @@ def test_explicit_selection_with_ref_modifier(self): refstr = System.String("").GetType().MakeByRefType() result = MethodTest.TestStringRefParams.__overloads__[str, refstr]( "hi", "there") - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertTrue(len(result) == 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(result[1] == "output string") result = MethodTest.TestStringRefParams.__overloads__[str, refstr]( "hi", None) - self.assertTrue(type(result) == type(())) + self.assertTrue(isinstance(result, tuple)) self.assertTrue(len(result) == 2) - self.assertTrue(result[0] == True) + self.assertTrue(result[0] is True) self.assertTrue(result[1] == "output string") def test_explicit_overload_selection(self): @@ -425,10 +425,10 @@ def test_explicit_overload_selection(self): inst = InterfaceTest() value = MethodTest.Overloaded.__overloads__[System.Boolean](True) - self.assertTrue(value == True) + self.assertTrue(value is True) value = MethodTest.Overloaded.__overloads__[bool](True) - self.assertTrue(value == True) + self.assertTrue(value is True) value = MethodTest.Overloaded.__overloads__[System.Byte](255) self.assertTrue(value == 255) @@ -526,14 +526,14 @@ def test_overload_selection_with_array_types(self): vtype = Array[System.Boolean] input_ = vtype([True, True]) value = MethodTest.Overloaded.__overloads__[vtype](input_) - self.assertTrue(value[0] == True) - self.assertTrue(value[1] == True) + self.assertTrue(value[0] is True) + self.assertTrue(value[1] is True) vtype = Array[bool] input_ = vtype([True, True]) value = MethodTest.Overloaded.__overloads__[vtype](input_) - self.assertTrue(value[0] == True) - self.assertTrue(value[1] == True) + self.assertTrue(value[0] is True) + self.assertTrue(value[1] is True) vtype = Array[System.Byte] input_ = vtype([0, 255]) diff --git a/src/tests/test_module.py b/src/tests/test_module.py index 45f20a911..5ee8e6fc2 100644 --- a/src/tests/test_module.py +++ b/src/tests/test_module.py @@ -71,16 +71,16 @@ def test_simple_import(self): self.assertTrue(System.__name__ == 'System') import sys - self.assertTrue(type(sys) == types.ModuleType) + self.assertTrue(isinstance(sys, types.ModuleType)) self.assertTrue(sys.__name__ == 'sys') if PY3: import http.client as httplib - self.assertTrue(type(httplib) == types.ModuleType) + self.assertTrue(isinstance(httplib, types.ModuleType)) self.assertTrue(httplib.__name__ == 'http.client') elif PY2: import httplib - self.assertTrue(type(httplib) == types.ModuleType) + self.assertTrue(isinstance(httplib, types.ModuleType)) self.assertTrue(httplib.__name__ == 'httplib') def test_simple_import_with_alias(self): @@ -90,16 +90,16 @@ def test_simple_import_with_alias(self): self.assertTrue(mySystem.__name__ == 'System') import sys as mySys - self.assertTrue(type(mySys) == types.ModuleType) + self.assertTrue(isinstance(mySys, types.ModuleType)) self.assertTrue(mySys.__name__ == 'sys') if PY3: import http.client as myHttplib - self.assertTrue(type(myHttplib) == types.ModuleType) + self.assertTrue(isinstance(myHttplib, types.ModuleType)) self.assertTrue(myHttplib.__name__ == 'http.client') elif PY2: import httplib as myHttplib - self.assertTrue(type(myHttplib) == types.ModuleType) + self.assertTrue(isinstance(myHttplib, types.ModuleType)) self.assertTrue(myHttplib.__name__ == 'httplib') def test_dotted_name_import(self): @@ -109,7 +109,7 @@ def test_dotted_name_import(self): self.assertTrue(System.Reflection.__name__ == 'System.Reflection') import xml.dom - self.assertTrue(type(xml.dom) == types.ModuleType) + self.assertTrue(isinstance(xml.dom, types.ModuleType)) self.assertTrue(xml.dom.__name__ == 'xml.dom') def test_multiple_dotted_name_import(self): @@ -128,7 +128,7 @@ def test_dotted_name_import_with_alias(self): self.assertTrue(SysRef.__name__ == 'System.Reflection') import xml.dom as myDom - self.assertTrue(type(myDom) == types.ModuleType) + self.assertTrue(isinstance(myDom, types.ModuleType)) self.assertTrue(myDom.__name__ == 'xml.dom') def test_simple_import_from(self): @@ -138,7 +138,7 @@ def test_simple_import_from(self): self.assertTrue(Reflection.__name__ == 'System.Reflection') from xml import dom - self.assertTrue(type(dom) == types.ModuleType) + self.assertTrue(isinstance(dom, types.ModuleType)) self.assertTrue(dom.__name__ == 'xml.dom') def test_simple_import_from_with_alias(self): @@ -148,7 +148,7 @@ def test_simple_import_from_with_alias(self): self.assertTrue(Coll.__name__ == 'System.Collections') from xml import dom as myDom - self.assertTrue(type(myDom) == types.ModuleType) + self.assertTrue(isinstance(myDom, types.ModuleType)) self.assertTrue(myDom.__name__ == 'xml.dom') def test_dotted_name_import_from(self): @@ -163,11 +163,11 @@ def test_dotted_name_import_from(self): self.assertTrue(StringCollection.__name__ == 'StringCollection') from xml.dom import pulldom - self.assertTrue(type(pulldom) == types.ModuleType) + self.assertTrue(isinstance(pulldom, types.ModuleType)) self.assertTrue(pulldom.__name__ == 'xml.dom.pulldom') from xml.dom.pulldom import PullDOM - self.assertTrue(type(PullDOM) == ClassType) + self.assertTrue(isinstance(PullDOM, ClassType)) self.assertTrue(PullDOM.__name__ == 'PullDOM') def test_dotted_name_import_from_with_alias(self): @@ -181,11 +181,11 @@ def test_dotted_name_import_from_with_alias(self): self.assertTrue(SC.__name__ == 'StringCollection') from xml.dom import pulldom as myPulldom - self.assertTrue(type(myPulldom) == types.ModuleType) + self.assertTrue(isinstance(myPulldom, types.ModuleType)) self.assertTrue(myPulldom.__name__ == 'xml.dom.pulldom') from xml.dom.pulldom import PullDOM as myPullDOM - self.assertTrue(type(myPullDOM) == ClassType) + self.assertTrue(isinstance(myPullDOM, ClassType)) self.assertTrue(myPullDOM.__name__ == 'PullDOM') def test_from_module_import_star(self): @@ -224,13 +224,13 @@ def test_explicit_assembly_load(self): import System, sys assembly = Assembly.LoadWithPartialName('System.Data') - self.assertTrue(assembly != None) + self.assertTrue(assembly is not None) import System.Data self.assertTrue('System.Data' in sys.modules) assembly = Assembly.LoadWithPartialName('SpamSpamSpamSpamEggsAndSpam') - self.assertTrue(assembly == None) + self.assertTrue(assembly is None) def test_implicit_load_already_valid_namespace(self): """Test implicit assembly load over an already valid namespace.""" From 4350ac32aad9f552b9f60351e2e649f0e992604d Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sun, 22 Jan 2017 03:30:27 -0700 Subject: [PATCH 11/13] Rename test fixtures Can mess with test discovery --- src/testing/eventtest.cs | 38 +++++++------- src/testing/subclasstest.cs | 8 +-- src/tests/leaktest.py | 20 ++++---- src/tests/test_event.py | 98 ++++++++++++++++++------------------- src/tests/test_subclass.py | 44 ++++++++--------- 5 files changed, 104 insertions(+), 104 deletions(-) diff --git a/src/testing/eventtest.cs b/src/testing/eventtest.cs index 544e0f259..d39557c4d 100644 --- a/src/testing/eventtest.cs +++ b/src/testing/eventtest.cs @@ -6,26 +6,26 @@ namespace Python.Test // Supports CLR event unit tests. //======================================================================== - public delegate void TestEventHandler(object sender, TestEventArgs e); + public delegate void EventHandlerTest(object sender, EventArgsTest e); public class EventTest { - public static event TestEventHandler PublicStaticEvent; + public static event EventHandlerTest PublicStaticEvent; - protected static event TestEventHandler ProtectedStaticEvent; + protected static event EventHandlerTest ProtectedStaticEvent; - internal static event TestEventHandler InternalStaticEvent; + internal static event EventHandlerTest InternalStaticEvent; - private static event TestEventHandler PrivateStaticEvent; + private static event EventHandlerTest PrivateStaticEvent; - public event TestEventHandler PublicEvent; + public event EventHandlerTest PublicEvent; - protected event TestEventHandler ProtectedEvent; + protected event EventHandlerTest ProtectedEvent; - internal event TestEventHandler InternalEvent; + internal event EventHandlerTest InternalEvent; - private event TestEventHandler PrivateEvent; + private event EventHandlerTest PrivateEvent; public static int s_value; @@ -42,7 +42,7 @@ static EventTest() } - public void OnPublicEvent(TestEventArgs e) + public void OnPublicEvent(EventArgsTest e) { if (PublicEvent != null) { @@ -51,7 +51,7 @@ public void OnPublicEvent(TestEventArgs e) } - public void OnProtectedEvent(TestEventArgs e) + public void OnProtectedEvent(EventArgsTest e) { if (ProtectedEvent != null) { @@ -60,7 +60,7 @@ public void OnProtectedEvent(TestEventArgs e) } - public static void OnPublicStaticEvent(TestEventArgs e) + public static void OnPublicStaticEvent(EventArgsTest e) { if (PublicStaticEvent != null) { @@ -69,7 +69,7 @@ public static void OnPublicStaticEvent(TestEventArgs e) } - protected static void OnProtectedStaticEvent(TestEventArgs e) + protected static void OnProtectedStaticEvent(EventArgsTest e) { if (ProtectedStaticEvent != null) { @@ -78,12 +78,12 @@ protected static void OnProtectedStaticEvent(TestEventArgs e) } - public void GenericHandler(object sender, TestEventArgs e) + public void GenericHandler(object sender, EventArgsTest e) { this.value = e.value; } - public static void StaticHandler(object sender, TestEventArgs e) + public static void StaticHandler(object sender, EventArgsTest e) { s_value = e.value; } @@ -92,7 +92,7 @@ public static void ShutUpCompiler() { // Quiet compiler warnings. EventTest e = new EventTest(); - TestEventHandler f = new TestEventHandler(e.GenericHandler); + EventHandlerTest f = new EventHandlerTest(e.GenericHandler); ProtectedStaticEvent += f; InternalStaticEvent += f; PrivateStaticEvent += f; @@ -103,13 +103,13 @@ public static void ShutUpCompiler() } - public class TestEventArgs : EventArgs + public class EventArgsTest : EventArgs { public int value; - public TestEventArgs(int v) + public EventArgsTest(int v) { this.value = v; } } -} \ No newline at end of file +} diff --git a/src/testing/subclasstest.cs b/src/testing/subclasstest.cs index 2b61be254..3229bdb94 100644 --- a/src/testing/subclasstest.cs +++ b/src/testing/subclasstest.cs @@ -14,14 +14,14 @@ public interface IInterfaceTest string bar(string s, int i); // test events on interfaces - event TestEventHandler TestEvent; + event EventHandlerTest TestEvent; void OnTestEvent(int value); } public class SubClassTest : IInterfaceTest { - public event TestEventHandler TestEvent; + public event EventHandlerTest TestEvent; public SubClassTest() { @@ -60,7 +60,7 @@ public static IList test_list(SubClassTest x) public virtual void OnTestEvent(int value) { if (null != TestEvent) - TestEvent(this, new TestEventArgs(value)); + TestEvent(this, new EventArgsTest(value)); } } @@ -75,7 +75,7 @@ public void SomeMethod() } } - public class TestFunctions + public class FunctionsTest { public static string test_foo(IInterfaceTest x) { diff --git a/src/tests/leaktest.py b/src/tests/leaktest.py index 2167060ad..646cb512e 100644 --- a/src/tests/leaktest.py +++ b/src/tests/leaktest.py @@ -138,7 +138,7 @@ def test_enumerations(self): self.end_test() def test_events(self): - from Python.Test import EventTest, TestEventArgs + from Python.Test import EventTest, EventArgsTest self.notify("Running event leak check...") @@ -151,28 +151,28 @@ def test_events(self): # Instance method event handler handler = GenericHandler() testob.PublicEvent += handler.handler - testob.PublicEvent(testob, TestEventArgs(10)) + testob.PublicEvent(testob, EventArgsTest(10)) testob.PublicEvent -= handler.handler del handler # Vararg method event handler handler = VariableArgsHandler() testob.PublicEvent += handler.handler - testob.PublicEvent(testob, TestEventArgs(10)) + testob.PublicEvent(testob, EventArgsTest(10)) testob.PublicEvent -= handler.handler del handler # Callable object event handler handler = CallableHandler() testob.PublicEvent += handler - testob.PublicEvent(testob, TestEventArgs(10)) + testob.PublicEvent(testob, EventArgsTest(10)) testob.PublicEvent -= handler del handler # Callable vararg event handler handler = VarCallableHandler() testob.PublicEvent += handler - testob.PublicEvent(testob, TestEventArgs(10)) + testob.PublicEvent(testob, EventArgsTest(10)) testob.PublicEvent -= handler del handler @@ -180,7 +180,7 @@ def test_events(self): handler = StaticMethodHandler() StaticMethodHandler.value = None testob.PublicEvent += handler.handler - testob.PublicEvent(testob, TestEventArgs(10)) + testob.PublicEvent(testob, EventArgsTest(10)) testob.PublicEvent -= handler.handler del handler @@ -188,18 +188,18 @@ def test_events(self): handler = ClassMethodHandler() ClassMethodHandler.value = None testob.PublicEvent += handler.handler - testob.PublicEvent(testob, TestEventArgs(10)) + testob.PublicEvent(testob, EventArgsTest(10)) testob.PublicEvent -= handler.handler del handler # Managed instance event handler testob.PublicEvent += testob.GenericHandler - testob.PublicEvent(testob, TestEventArgs(10)) + testob.PublicEvent(testob, EventArgsTest(10)) testob.PublicEvent -= testob.GenericHandler # Static managed event handler testob.PublicEvent += EventTest.StaticHandler - testob.PublicEvent(testob, TestEventArgs(10)) + testob.PublicEvent(testob, EventArgsTest(10)) testob.PublicEvent -= EventTest.StaticHandler # Function event handler @@ -209,7 +209,7 @@ def handler(sender, args, dict_=dict_): dict_['value'] = args.value testob.PublicEvent += handler - testob.PublicEvent(testob, TestEventArgs(10)) + testob.PublicEvent(testob, EventArgsTest(10)) testob.PublicEvent -= handler del handler diff --git a/src/tests/test_event.py b/src/tests/test_event.py index 237d60777..047af47f3 100644 --- a/src/tests/test_event.py +++ b/src/tests/test_event.py @@ -2,7 +2,7 @@ import unittest -from Python.Test import EventTest, TestEventArgs +from Python.Test import EventTest, EventArgsTest from _compat import range from utils import (CallableHandler, ClassMethodHandler, GenericHandler, @@ -22,7 +22,7 @@ def test_public_instance_event(self): ob.PublicEvent += handler.handler - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 10) ob.PublicEvent -= handler.handler @@ -34,7 +34,7 @@ def test_public_static_event(self): EventTest.PublicStaticEvent += handler.handler - EventTest.OnPublicStaticEvent(TestEventArgs(10)) + EventTest.OnPublicStaticEvent(EventArgsTest(10)) self.assertTrue(handler.value == 10) def test_protected_instance_event(self): @@ -46,7 +46,7 @@ def test_protected_instance_event(self): ob.ProtectedEvent += handler.handler - ob.OnProtectedEvent(TestEventArgs(10)) + ob.OnProtectedEvent(EventArgsTest(10)) self.assertTrue(handler.value == 10) ob.ProtectedEvent -= handler.handler @@ -58,7 +58,7 @@ def test_protected_static_event(self): EventTest.ProtectedStaticEvent += handler.handler - EventTest.OnProtectedStaticEvent(TestEventArgs(10)) + EventTest.OnProtectedStaticEvent(EventArgsTest(10)) self.assertTrue(handler.value == 10) EventTest.ProtectedStaticEvent -= handler.handler @@ -99,13 +99,13 @@ def test_multicast_event(self): ob.PublicEvent += handler2.handler ob.PublicEvent += handler3.handler - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler1.value == 10) self.assertTrue(handler2.value == 10) self.assertTrue(handler3.value == 10) - ob.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(EventArgsTest(20)) self.assertTrue(handler1.value == 20) self.assertTrue(handler2.value == 20) @@ -123,13 +123,13 @@ def test_instance_method_handler(self): ob.PublicEvent += handler.handler self.assertTrue(handler.value is None) - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 10) ob.PublicEvent -= handler.handler self.assertTrue(handler.value == 10) - ob.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(EventArgsTest(20)) self.assertTrue(handler.value == 10) def test_var_args_instance_method_handler(self): @@ -140,13 +140,13 @@ def test_var_args_instance_method_handler(self): ob.PublicEvent += handler.handler self.assertTrue(handler.value is None) - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 10) ob.PublicEvent -= handler.handler self.assertTrue(handler.value == 10) - ob.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(EventArgsTest(20)) self.assertTrue(handler.value == 10) def test_callableob_handler(self): @@ -157,13 +157,13 @@ def test_callableob_handler(self): ob.PublicEvent += handler self.assertTrue(handler.value is None) - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 10) ob.PublicEvent -= handler self.assertTrue(handler.value == 10) - ob.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(EventArgsTest(20)) self.assertTrue(handler.value == 10) def test_var_args_callable_handler(self): @@ -174,13 +174,13 @@ def test_var_args_callable_handler(self): ob.PublicEvent += handler self.assertTrue(handler.value is None) - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 10) ob.PublicEvent -= handler self.assertTrue(handler.value == 10) - ob.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(EventArgsTest(20)) self.assertTrue(handler.value == 10) def test_static_method_handler(self): @@ -192,13 +192,13 @@ def test_static_method_handler(self): ob.PublicEvent += handler.handler self.assertTrue(handler.value is None) - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 10) ob.PublicEvent -= handler.handler self.assertTrue(handler.value == 10) - ob.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(EventArgsTest(20)) self.assertTrue(handler.value == 10) def test_class_method_handler(self): @@ -210,13 +210,13 @@ def test_class_method_handler(self): ob.PublicEvent += handler.handler self.assertTrue(handler.value is None) - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 10) ob.PublicEvent -= handler.handler self.assertTrue(handler.value == 10) - ob.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(EventArgsTest(20)) self.assertTrue(handler.value == 10) def test_managed_instance_method_handler(self): @@ -226,13 +226,13 @@ def test_managed_instance_method_handler(self): ob.PublicEvent += ob.GenericHandler self.assertTrue(ob.value == 0) - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(ob.value == 10) ob.PublicEvent -= ob.GenericHandler self.assertTrue(ob.value == 10) - ob.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(EventArgsTest(20)) self.assertTrue(ob.value == 10) def test_managed_static_method_handler(self): @@ -243,13 +243,13 @@ def test_managed_static_method_handler(self): ob.PublicEvent += ob.StaticHandler self.assertTrue(EventTest.s_value == 0) - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(EventTest.s_value == 10) ob.PublicEvent -= ob.StaticHandler self.assertTrue(EventTest.s_value == 10) - ob.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(EventArgsTest(20)) self.assertTrue(EventTest.s_value == 10) def test_unbound_method_handler(self): @@ -258,7 +258,7 @@ def test_unbound_method_handler(self): ob.PublicEvent += GenericHandler.handler with self.assertRaises(TypeError): - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) ob.PublicEvent -= GenericHandler.handler @@ -273,13 +273,13 @@ def handler(sender, args, dict_=dict_): ob.PublicEvent += handler self.assertTrue(dict_['value'] is None) - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(dict_['value'] == 10) ob.PublicEvent -= handler self.assertTrue(dict_['value'] == 10) - ob.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(EventArgsTest(20)) self.assertTrue(dict_['value'] == 10) def test_add_non_callable_handler(self): @@ -311,17 +311,17 @@ def test_remove_multiple_handlers(self): h2 = handler.handler ob.PublicEvent += h2 - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 20) ob.PublicEvent -= h1 - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 30) ob.PublicEvent -= h2 - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 30) # try again, removing in a different order. @@ -335,17 +335,17 @@ def test_remove_multiple_handlers(self): h2 = handler.handler ob.PublicEvent += h2 - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 20) ob.PublicEvent -= h2 - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 30) ob.PublicEvent -= h1 - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 30) def test_remove_multiple_static_handlers(self): @@ -359,17 +359,17 @@ def test_remove_multiple_static_handlers(self): h2 = handler.handler ob.PublicStaticEvent += h2 - ob.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(EventArgsTest(10)) self.assertTrue(handler.value == 20) ob.PublicStaticEvent -= h1 - ob.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(EventArgsTest(10)) self.assertTrue(handler.value == 30) ob.PublicStaticEvent -= h2 - ob.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(EventArgsTest(10)) self.assertTrue(handler.value == 30) # try again, removing in a different order. @@ -383,17 +383,17 @@ def test_remove_multiple_static_handlers(self): h2 = handler.handler ob.PublicStaticEvent += h2 - ob.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(EventArgsTest(10)) self.assertTrue(handler.value == 20) ob.PublicStaticEvent -= h2 - ob.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(EventArgsTest(10)) self.assertTrue(handler.value == 30) ob.PublicStaticEvent -= h1 - ob.OnPublicStaticEvent(TestEventArgs(10)) + ob.OnPublicStaticEvent(EventArgsTest(10)) self.assertTrue(handler.value == 30) def test_random_multiple_handlers(self): @@ -412,7 +412,7 @@ def test_random_multiple_handlers(self): ob.PublicEvent += method handlers.append(method) - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 300) self.assertTrue(handler2.value == 20) handler.value = 0 @@ -423,24 +423,24 @@ def test_random_multiple_handlers(self): handlers.remove(item) ob.PublicEvent -= item handler.value = 0 - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == (len(handlers) * 10)) self.assertTrue(handler2.value == ((i + 1) * 20)) handler2.value = 0 - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler2.value == 20) ob.PublicEvent -= handler2.handler handler2.value = 0 - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler2.value == 10) ob.PublicEvent -= handler2.handler handler2.value = 0 - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler2.value == 0) def test_remove_internal_call_handler(self): @@ -474,7 +474,7 @@ def handler(self, one): with self.assertRaises(TypeError): ob.PublicEvent += handler.handler - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) ob.PublicEvent -= handler.handler @@ -487,7 +487,7 @@ def handler(self, one, two, three, four, five): with self.assertRaises(TypeError): ob.PublicEvent += handler.handler - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) ob.PublicEvent -= handler.handler @@ -508,22 +508,22 @@ def test_incorrect_invokation(self): def test_explicit_cls_event_registration(self): """Test explicit CLS event registration.""" - from Python.Test import TestEventHandler + from Python.Test import EventHandlerTest ob = EventTest() handler = GenericHandler() - delegate = TestEventHandler(handler.handler) + delegate = EventHandlerTest(handler.handler) ob.add_PublicEvent(delegate) self.assertTrue(handler.value is None) - ob.OnPublicEvent(TestEventArgs(10)) + ob.OnPublicEvent(EventArgsTest(10)) self.assertTrue(handler.value == 10) ob.remove_PublicEvent(delegate) self.assertTrue(handler.value == 10) - ob.OnPublicEvent(TestEventArgs(20)) + ob.OnPublicEvent(EventArgsTest(20)) self.assertTrue(handler.value == 10) def test_implicit_cls_event_registration(self): diff --git a/src/tests/test_subclass.py b/src/tests/test_subclass.py index 922e2651c..28a634a18 100644 --- a/src/tests/test_subclass.py +++ b/src/tests/test_subclass.py @@ -4,8 +4,8 @@ import unittest import System -from Python.Test import (IInterfaceTest, SubClassTest, TestEventArgs, - TestFunctions) +from Python.Test import (IInterfaceTest, SubClassTest, EventArgsTest, + FunctionsTest) from System.Collections.Generic import List from _compat import range @@ -61,7 +61,7 @@ def remove_TestEvent(self, handler): self.event_handlers.remove(handler) def OnTestEvent(self, value): - args = TestEventArgs(value) + args = EventArgsTest(value) for handler in self.event_handlers: handler(self, args) @@ -73,9 +73,9 @@ def test_base_class(self): """Test base class managed type""" ob = SubClassTest() self.assertEqual(ob.foo(), "foo") - self.assertEqual(TestFunctions.test_foo(ob), "foo") + self.assertEqual(FunctionsTest.test_foo(ob), "foo") self.assertEqual(ob.bar("bar", 2), "bar") - self.assertEqual(TestFunctions.test_bar(ob, "bar", 2), "bar") + self.assertEqual(FunctionsTest.test_bar(ob, "bar", 2), "bar") self.assertEqual(ob.not_overriden(), "not_overriden") self.assertEqual(list(ob.return_list()), ["a", "b", "c"]) self.assertEqual(list(SubClassTest.test_list(ob)), ["a", "b", "c"]) @@ -84,11 +84,11 @@ def test_interface(self): """Test python classes can derive from C# interfaces""" ob = InterfaceTestClass() self.assertEqual(ob.foo(), "InterfaceTestClass") - self.assertEqual(TestFunctions.test_foo(ob), "InterfaceTestClass") + self.assertEqual(FunctionsTest.test_foo(ob), "InterfaceTestClass") self.assertEqual(ob.bar("bar", 2), "bar/bar") - self.assertEqual(TestFunctions.test_bar(ob, "bar", 2), "bar/bar") + self.assertEqual(FunctionsTest.test_bar(ob, "bar", 2), "bar/bar") - x = TestFunctions.pass_through(ob) + x = FunctionsTest.pass_through(ob) self.assertEqual(id(x), id(ob)) def test_derived_class(self): @@ -97,35 +97,35 @@ def test_derived_class(self): self.assertEqual(ob.foo(), "DerivedClass") self.assertEqual(ob.base_foo(), "foo") self.assertEqual(ob.super_foo(), "foo") - self.assertEqual(TestFunctions.test_foo(ob), "DerivedClass") + self.assertEqual(FunctionsTest.test_foo(ob), "DerivedClass") self.assertEqual(ob.bar("bar", 2), "bar_bar") - self.assertEqual(TestFunctions.test_bar(ob, "bar", 2), "bar_bar") + self.assertEqual(FunctionsTest.test_bar(ob, "bar", 2), "bar_bar") self.assertEqual(ob.not_overriden(), "not_overriden") self.assertEqual(list(ob.return_list()), ["A", "B", "C"]) self.assertEqual(list(SubClassTest.test_list(ob)), ["A", "B", "C"]) - x = TestFunctions.pass_through(ob) + x = FunctionsTest.pass_through(ob) self.assertEqual(id(x), id(ob)) def test_create_instance(self): """Test derived instances can be created from managed code""" - ob = TestFunctions.create_instance(DerivedClass) + ob = FunctionsTest.create_instance(DerivedClass) self.assertEqual(ob.foo(), "DerivedClass") - self.assertEqual(TestFunctions.test_foo(ob), "DerivedClass") + self.assertEqual(FunctionsTest.test_foo(ob), "DerivedClass") self.assertEqual(ob.bar("bar", 2), "bar_bar") - self.assertEqual(TestFunctions.test_bar(ob, "bar", 2), "bar_bar") + self.assertEqual(FunctionsTest.test_bar(ob, "bar", 2), "bar_bar") self.assertEqual(ob.not_overriden(), "not_overriden") - x = TestFunctions.pass_through(ob) + x = FunctionsTest.pass_through(ob) self.assertEqual(id(x), id(ob)) - ob2 = TestFunctions.create_instance(InterfaceTestClass) + ob2 = FunctionsTest.create_instance(InterfaceTestClass) self.assertEqual(ob2.foo(), "InterfaceTestClass") - self.assertEqual(TestFunctions.test_foo(ob2), "InterfaceTestClass") + self.assertEqual(FunctionsTest.test_foo(ob2), "InterfaceTestClass") self.assertEqual(ob2.bar("bar", 2), "bar/bar") - self.assertEqual(TestFunctions.test_bar(ob2, "bar", 2), "bar/bar") + self.assertEqual(FunctionsTest.test_bar(ob2, "bar", 2), "bar/bar") - y = TestFunctions.pass_through(ob2) + y = FunctionsTest.pass_through(ob2) self.assertEqual(id(y), id(ob2)) def test_events(self): @@ -137,16 +137,16 @@ def handler(self, x, args): x = SubClassTest() x.TestEvent += event_handler.handler - self.assertEqual(TestFunctions.test_event(x, 1), 1) + self.assertEqual(FunctionsTest.test_event(x, 1), 1) self.assertEqual(event_handler.value, 1) i = InterfaceTestClass() with self.assertRaises(System.NotImplementedException): - TestFunctions.test_event(i, 2) + FunctionsTest.test_event(i, 2) d = DerivedEventTest() d.add_TestEvent(event_handler.handler) - self.assertEqual(TestFunctions.test_event(d, 3), 3) + self.assertEqual(FunctionsTest.test_event(d, 3), 3) self.assertEqual(event_handler.value, 3) self.assertEqual(len(d.event_handlers), 1) From 2ae78cca2a75bbb180441fffde8fde05a9251560 Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sun, 22 Jan 2017 03:38:27 -0700 Subject: [PATCH 12/13] Remove unused `using` from testing and format --- src/testing/arraytest.cs | 5 +---- src/testing/callbacktest.cs | 20 +++++++++----------- src/testing/classtest.cs | 3 +-- src/testing/constructortests.cs | 3 +-- src/testing/conversiontest.cs | 5 +---- src/testing/delegatetest.cs | 4 +--- src/testing/doctest.cs | 14 +++++++------- src/testing/enumtest.cs | 4 ++-- src/testing/exceptiontest.cs | 2 +- src/testing/fieldtest.cs | 5 +---- src/testing/generictest.cs | 5 +---- src/testing/globaltest.cs | 4 +--- src/testing/indexertest.cs | 3 +-- src/testing/interfacetest.cs | 4 +--- src/testing/methodtest.cs | 7 +++---- src/testing/moduletest.cs | 12 ++++++++---- src/testing/propertytest.cs | 4 +--- src/testing/subclasstest.cs | 3 --- src/testing/threadtest.cs | 3 +-- 19 files changed, 42 insertions(+), 68 deletions(-) diff --git a/src/testing/arraytest.cs b/src/testing/arraytest.cs index b9891cac8..591b5b1c4 100644 --- a/src/testing/arraytest.cs +++ b/src/testing/arraytest.cs @@ -1,6 +1,3 @@ -using System; -using System.Collections; - namespace Python.Test { //======================================================================== @@ -318,4 +315,4 @@ public static Spam[][] EchoRangeAA(Spam[][] items) return items; } } -} \ No newline at end of file +} diff --git a/src/testing/callbacktest.cs b/src/testing/callbacktest.cs index f95cbc602..33e240531 100644 --- a/src/testing/callbacktest.cs +++ b/src/testing/callbacktest.cs @@ -1,7 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; +using Python.Runtime; namespace Python.Test { @@ -13,17 +10,18 @@ public class CallbackTest { public string Call_simpleDefaultArg_WithNull(string moduleName) { - using (Runtime.Py.GIL()) + using (Py.GIL()) { - dynamic module = Runtime.Py.Import(moduleName); + dynamic module = Py.Import(moduleName); return module.simpleDefaultArg(null); } } + public string Call_simpleDefaultArg_WithEmptyArgs(string moduleName) { - using (Runtime.Py.GIL()) + using (Py.GIL()) { - dynamic module = Runtime.Py.Import(moduleName); + dynamic module = Py.Import(moduleName); return module.simpleDefaultArg(); } } @@ -31,14 +29,14 @@ public string Call_simpleDefaultArg_WithEmptyArgs(string moduleName) //========================================================================== // Tests calling from Python into C# and back into Python using a PyObject. - // SelfCallbackTest should be inherited by a Python class. + // SelfCallbackTest should be inherited by a Python class. // Used in test_class.py / testCallback //========================================================================== public class SelfCallbackTest { - public void Callback(Runtime.PyObject self) + public void Callback(PyObject self) { - using (Runtime.Py.GIL()) + using (Py.GIL()) ((dynamic)self).PyCallback(self); } } diff --git a/src/testing/classtest.cs b/src/testing/classtest.cs index 5f3b0d7ed..ab0cad7ad 100644 --- a/src/testing/classtest.cs +++ b/src/testing/classtest.cs @@ -1,4 +1,3 @@ -using System; using System.Collections; namespace Python.Test @@ -61,4 +60,4 @@ public ClassCtorTest2(string v) internal class InternalClass { } -} \ No newline at end of file +} diff --git a/src/testing/constructortests.cs b/src/testing/constructortests.cs index cffcee888..4d3cc5710 100644 --- a/src/testing/constructortests.cs +++ b/src/testing/constructortests.cs @@ -1,5 +1,4 @@ using System; -using System.Collections; using System.IO; namespace Python.Test @@ -50,4 +49,4 @@ public SubclassConstructorTest(Exception v) this.value = v; } } -} \ No newline at end of file +} diff --git a/src/testing/conversiontest.cs b/src/testing/conversiontest.cs index e4d4762e6..5686a1943 100644 --- a/src/testing/conversiontest.cs +++ b/src/testing/conversiontest.cs @@ -1,6 +1,3 @@ -using System; - - namespace Python.Test { //======================================================================== @@ -58,4 +55,4 @@ public string GetValue() return value; } } -} \ No newline at end of file +} diff --git a/src/testing/delegatetest.cs b/src/testing/delegatetest.cs index d13750c49..94169f650 100644 --- a/src/testing/delegatetest.cs +++ b/src/testing/delegatetest.cs @@ -1,5 +1,3 @@ -using System; - namespace Python.Test { //======================================================================== @@ -60,4 +58,4 @@ public bool CallBoolDelegate(BoolDelegate d) return d(); } } -} \ No newline at end of file +} diff --git a/src/testing/doctest.cs b/src/testing/doctest.cs index 156248029..a0f60b2e1 100644 --- a/src/testing/doctest.cs +++ b/src/testing/doctest.cs @@ -8,19 +8,19 @@ namespace Python.Test // Classes with a constructor have their docstring set to the ctor signature. // Test if a class has an explicit doc string it gets set correctly. - [DocStringAttribute("DocWithCtorTest Class")] + [DocString("DocWithCtorTest Class")] public class DocWithCtorTest { public DocWithCtorTest() { } - [DocStringAttribute("DocWithCtorTest TestMethod")] + [DocString("DocWithCtorTest TestMethod")] public void TestMethod() { } - [DocStringAttribute("DocWithCtorTest StaticTestMethod")] + [DocString("DocWithCtorTest StaticTestMethod")] public static void StaticTestMethod() { } @@ -41,17 +41,17 @@ public static void StaticTestMethod(double a, int b) } } - [DocStringAttribute("DocWithoutCtorTest Class")] + [DocString("DocWithoutCtorTest Class")] public class DocWithoutCtorTest { - [DocStringAttribute("DocWithoutCtorTest TestMethod")] + [DocString("DocWithoutCtorTest TestMethod")] public void TestMethod() { } - [DocStringAttribute("DocWithoutCtorTest StaticTestMethod")] + [DocString("DocWithoutCtorTest StaticTestMethod")] public static void StaticTestMethod() { } } -} \ No newline at end of file +} diff --git a/src/testing/enumtest.cs b/src/testing/enumtest.cs index 162771980..0d0d56190 100644 --- a/src/testing/enumtest.cs +++ b/src/testing/enumtest.cs @@ -86,7 +86,7 @@ public enum ULongEnum : ulong Five } - [FlagsAttribute] + [Flags] public enum FlagsEnum { Zero, @@ -96,4 +96,4 @@ public enum FlagsEnum Four, Five } -} \ No newline at end of file +} diff --git a/src/testing/exceptiontest.cs b/src/testing/exceptiontest.cs index 414c25d82..ae5fc86c0 100644 --- a/src/testing/exceptiontest.cs +++ b/src/testing/exceptiontest.cs @@ -99,4 +99,4 @@ public string GetExtraInfo() return extra; } } -} \ No newline at end of file +} diff --git a/src/testing/fieldtest.cs b/src/testing/fieldtest.cs index 5860bdafb..4d41cf084 100644 --- a/src/testing/fieldtest.cs +++ b/src/testing/fieldtest.cs @@ -1,6 +1,3 @@ -using System; - - namespace Python.Test { //======================================================================== @@ -54,4 +51,4 @@ public void Shutup() public object ObjectField; public ISpam SpamField; } -} \ No newline at end of file +} diff --git a/src/testing/generictest.cs b/src/testing/generictest.cs index 3019c1eb6..b38f5e8e5 100644 --- a/src/testing/generictest.cs +++ b/src/testing/generictest.cs @@ -1,6 +1,3 @@ -using System; -using System.Collections; - namespace Python.Test { //======================================================================== @@ -131,4 +128,4 @@ public static string Overloaded(int arg1, int arg2, string arg3) return arg3; } } -} \ No newline at end of file +} diff --git a/src/testing/globaltest.cs b/src/testing/globaltest.cs index 887668d96..2d6d56cda 100644 --- a/src/testing/globaltest.cs +++ b/src/testing/globaltest.cs @@ -1,9 +1,7 @@ -using System; - //======================================================================== // Supports units tests for access to types without a namespace. //======================================================================== public class NoNamespaceType { -} \ No newline at end of file +} diff --git a/src/testing/indexertest.cs b/src/testing/indexertest.cs index eb0381777..f1dcbda0b 100644 --- a/src/testing/indexertest.cs +++ b/src/testing/indexertest.cs @@ -1,4 +1,3 @@ -using System; using System.Collections; namespace Python.Test @@ -415,4 +414,4 @@ public MultiDefaultKeyIndexerTest() : base() } } } -} \ No newline at end of file +} diff --git a/src/testing/interfacetest.cs b/src/testing/interfacetest.cs index b35ca81a8..4c4056d68 100644 --- a/src/testing/interfacetest.cs +++ b/src/testing/interfacetest.cs @@ -1,5 +1,3 @@ -using System; - namespace Python.Test { //======================================================================== @@ -62,4 +60,4 @@ private interface IPrivate { } } -} \ No newline at end of file +} diff --git a/src/testing/methodtest.cs b/src/testing/methodtest.cs index 675b1577c..65e39cf69 100644 --- a/src/testing/methodtest.cs +++ b/src/testing/methodtest.cs @@ -1,6 +1,5 @@ using System; using System.IO; -using System.Collections.Generic; namespace Python.Test { @@ -156,13 +155,13 @@ public static bool TestValueRefParams(string s, ref int i1) public static bool TestObjectOutParams(object o, out object o1) { - o1 = new System.Exception("test"); + o1 = new Exception("test"); return true; } public static bool TestObjectRefParams(object o, ref object o1) { - o1 = new System.Exception("test"); + o1 = new Exception("test"); return true; } @@ -630,4 +629,4 @@ public string PublicMethod(string echo) return echo; } } -} \ No newline at end of file +} diff --git a/src/testing/moduletest.cs b/src/testing/moduletest.cs index ca75a1313..2d5734a11 100644 --- a/src/testing/moduletest.cs +++ b/src/testing/moduletest.cs @@ -1,16 +1,20 @@ using System; using System.Threading; -namespace Python.Test { - public class ModuleTest { +namespace Python.Test +{ + public class ModuleTest + { private static Thread _thread; public static void RunThreads() { - _thread = new Thread(() => { + _thread = new Thread(() => + { var appdomain = AppDomain.CurrentDomain; var assemblies = appdomain.GetAssemblies(); - foreach (var assembly in assemblies) { + foreach (var assembly in assemblies) + { assembly.GetTypes(); } }); diff --git a/src/testing/propertytest.cs b/src/testing/propertytest.cs index f01c02e0b..b70e9487a 100644 --- a/src/testing/propertytest.cs +++ b/src/testing/propertytest.cs @@ -1,5 +1,3 @@ -using System; - namespace Python.Test { //======================================================================== @@ -84,4 +82,4 @@ public ShortEnum EnumProperty set { _enum_property = value; } } } -} \ No newline at end of file +} diff --git a/src/testing/subclasstest.cs b/src/testing/subclasstest.cs index 3229bdb94..9ee105aef 100644 --- a/src/testing/subclasstest.cs +++ b/src/testing/subclasstest.cs @@ -1,7 +1,5 @@ using System; using System.Collections.Generic; -using System.Linq; -using System.Text; namespace Python.Test { @@ -70,7 +68,6 @@ public class SubClass : RecursiveInheritance { public void SomeMethod() { - } } } diff --git a/src/testing/threadtest.cs b/src/testing/threadtest.cs index 0a4f46ccc..0cb2abe57 100644 --- a/src/testing/threadtest.cs +++ b/src/testing/threadtest.cs @@ -1,5 +1,4 @@ using System; -using System.Collections; using Python.Runtime; namespace Python.Test @@ -77,4 +76,4 @@ public static string CallEchoString2(string arg) } } } -} \ No newline at end of file +} From b4e8d97875a7837bc19da22386ba199a2ca970a9 Mon Sep 17 00:00:00 2001 From: Victor Uriarte Date: Sun, 22 Jan 2017 13:14:32 -0700 Subject: [PATCH 13/13] Use unittest.skip(...) --- src/tests/runtests.py | 11 ++-- src/tests/test_engine.py | 3 +- src/tests/test_exceptions.py | 31 +++++----- src/tests/test_subclass.py | 107 ++++++++++++++++++++++------------- 4 files changed, 91 insertions(+), 61 deletions(-) diff --git a/src/tests/runtests.py b/src/tests/runtests.py index 919d4b7e5..9b77f99dd 100644 --- a/src/tests/runtests.py +++ b/src/tests/runtests.py @@ -16,13 +16,14 @@ except ImportError: print("Load clr import hook") import clr + clr.AddReference("Python.Test") clr.AddReference("System.Collections") clr.AddReference("System.Data") clr.AddReference("System.Management") test_modules = ( - # Passes on its own, but not here if + # test_module passes on its own, but not here if # other test modules that import System.Windows.Forms # run first. They must not do module level import/AddReference() # of the System.Windows.Forms namespace. @@ -47,11 +48,11 @@ 'test_thread', 'test_docstring', - # FIXME: Fails due to unhandled exception - # 'test_engine', + # FIXME: Has tests that are being skipped. + 'test_engine', - # FIXME: Fails in Linux - # 'test_subclass', + # FIXME: Has tests that are being skipped. + 'test_subclass', ) diff --git a/src/tests/test_engine.py b/src/tests/test_engine.py index a39cb4aa8..b605a3796 100644 --- a/src/tests/test_engine.py +++ b/src/tests/test_engine.py @@ -1,5 +1,4 @@ # -*- coding: utf-8 -*- -# FIXME: This test module fails due to unhandled exceptions import sys import unittest @@ -20,12 +19,14 @@ def test_multiple_calls_to_initialize(self): except BaseException: self.fail("Initialize() raise an exception.") + @unittest.skip(reason="FIXME: test crashes") def test_import_module(self): """Test module import.""" m = PythonEngine.ImportModule("sys") n = m.GetAttr("__name__") self.assertTrue(n.AsManagedObject(System.String) == "sys") + @unittest.skip(reason="FIXME: test freezes") def test_run_string(self): """Test the RunString method.""" PythonEngine.AcquireLock() diff --git a/src/tests/test_exceptions.py b/src/tests/test_exceptions.py index 7d60e0732..2fb55589c 100644 --- a/src/tests/test_exceptions.py +++ b/src/tests/test_exceptions.py @@ -306,23 +306,22 @@ def test_pickling_exceptions(self): self.assertEqual(exc.args, loaded.args) + @unittest.skipIf(PY2, "__cause__ isn't implemented in PY2") def test_chained_exceptions(self): - # __cause__ is py3 only - if PY3: - from Python.Test import ExceptionTest - - try: - ExceptionTest.ThrowChainedExceptions() - except Exception as exc: - msgs = ("Outer exception", - "Inner exception", - "Innermost exception",) - for msg in msgs: - self.assertEqual(exc.Message, msg) - self.assertEqual(exc.__cause__, exc.InnerException) - exc = exc.__cause__ - else: - self.fail("Test should raise an exception") + from Python.Test import ExceptionTest + + with self.assertRaises(Exception) as cm: + ExceptionTest.ThrowChainedExceptions() + + exc = cm.exception + + msgs = ("Outer exception", + "Inner exception", + "Innermost exception",) + for msg in msgs: + self.assertEqual(exc.Message, msg) + self.assertEqual(exc.__cause__, exc.InnerException) + exc = exc.__cause__ def test_suite(): diff --git a/src/tests/test_subclass.py b/src/tests/test_subclass.py index 28a634a18..34ec86d9a 100644 --- a/src/tests/test_subclass.py +++ b/src/tests/test_subclass.py @@ -1,5 +1,8 @@ # -*- coding: utf-8 -*- -# FIXME: This test module fails on Linux +# FIXME: This test module randomly passes/fails even if all tests are skipped. +# Something fishy is going on with the Test fixtures. Behavior seen on CI on +# both Linux and Windows +# TODO: Remove delay of class creations. Adding SetUp/TearDown may help import unittest @@ -11,64 +14,80 @@ from _compat import range -class InterfaceTestClass(IInterfaceTest): - """class that implements the test interface""" - __namespace__ = "Python.Test" +def interface_test_class_fixture(): + """Delay creation of class until test starts.""" - def foo(self): - return "InterfaceTestClass" + class InterfaceTestClass(IInterfaceTest): + """class that implements the test interface""" + __namespace__ = "Python.Test" - def bar(self, x, i): - return "/".join([x] * i) + def foo(self): + return "InterfaceTestClass" + def bar(self, x, i): + return "/".join([x] * i) -class DerivedClass(SubClassTest): - """class that derives from a class deriving from IInterfaceTest""" - __namespace__ = "Python.Test" + return InterfaceTestClass - def foo(self): - return "DerivedClass" - def base_foo(self): - return SubClassTest.foo(self) +def derived_class_fixture(): + """Delay creation of class until test starts.""" - def super_foo(self): - return super(DerivedClass, self).foo() + class DerivedClass(SubClassTest): + """class that derives from a class deriving from IInterfaceTest""" + __namespace__ = "Python.Test" - def bar(self, x, i): - return "_".join([x] * i) + def foo(self): + return "DerivedClass" - def return_list(self): - l = List[str]() - l.Add("A") - l.Add("B") - l.Add("C") - return l + def base_foo(self): + return SubClassTest.foo(self) + def super_foo(self): + return super(DerivedClass, self).foo() -class DerivedEventTest(IInterfaceTest): - """class that implements IInterfaceTest.TestEvent""" - __namespace__ = "Python.Test" + def bar(self, x, i): + return "_".join([x] * i) - def __init__(self): - self.event_handlers = [] + def return_list(self): + l = List[str]() + l.Add("A") + l.Add("B") + l.Add("C") + return l - # event handling - def add_TestEvent(self, handler): - self.event_handlers.append(handler) + return DerivedClass - def remove_TestEvent(self, handler): - self.event_handlers.remove(handler) - def OnTestEvent(self, value): - args = EventArgsTest(value) - for handler in self.event_handlers: - handler(self, args) +def derived_event_test_class_fixture(): + """Delay creation of class until test starts.""" + + class DerivedEventTest(IInterfaceTest): + """class that implements IInterfaceTest.TestEvent""" + __namespace__ = "Python.Test" + + def __init__(self): + self.event_handlers = [] + + # event handling + def add_TestEvent(self, handler): + self.event_handlers.append(handler) + + def remove_TestEvent(self, handler): + self.event_handlers.remove(handler) + + def OnTestEvent(self, value): + args = EventArgsTest(value) + for handler in self.event_handlers: + handler(self, args) + + return DerivedEventTest class SubClassTests(unittest.TestCase): """Test sub-classing managed types""" + @unittest.skip(reason="FIXME: test randomly pass/fails") def test_base_class(self): """Test base class managed type""" ob = SubClassTest() @@ -80,8 +99,10 @@ def test_base_class(self): self.assertEqual(list(ob.return_list()), ["a", "b", "c"]) self.assertEqual(list(SubClassTest.test_list(ob)), ["a", "b", "c"]) + @unittest.skip(reason="FIXME: test randomly pass/fails") def test_interface(self): """Test python classes can derive from C# interfaces""" + InterfaceTestClass = interface_test_class_fixture() ob = InterfaceTestClass() self.assertEqual(ob.foo(), "InterfaceTestClass") self.assertEqual(FunctionsTest.test_foo(ob), "InterfaceTestClass") @@ -91,8 +112,10 @@ def test_interface(self): x = FunctionsTest.pass_through(ob) self.assertEqual(id(x), id(ob)) + @unittest.skip(reason="FIXME: test randomly pass/fails") def test_derived_class(self): """Test python class derived from managed type""" + DerivedClass = derived_class_fixture() ob = DerivedClass() self.assertEqual(ob.foo(), "DerivedClass") self.assertEqual(ob.base_foo(), "foo") @@ -107,8 +130,10 @@ def test_derived_class(self): x = FunctionsTest.pass_through(ob) self.assertEqual(id(x), id(ob)) + @unittest.skip(reason="FIXME: test randomly pass/fails") def test_create_instance(self): """Test derived instances can be created from managed code""" + DerivedClass = derived_class_fixture() ob = FunctionsTest.create_instance(DerivedClass) self.assertEqual(ob.foo(), "DerivedClass") self.assertEqual(FunctionsTest.test_foo(ob), "DerivedClass") @@ -119,6 +144,7 @@ def test_create_instance(self): x = FunctionsTest.pass_through(ob) self.assertEqual(id(x), id(ob)) + InterfaceTestClass = interface_test_class_fixture() ob2 = FunctionsTest.create_instance(InterfaceTestClass) self.assertEqual(ob2.foo(), "InterfaceTestClass") self.assertEqual(FunctionsTest.test_foo(ob2), "InterfaceTestClass") @@ -128,6 +154,7 @@ def test_create_instance(self): y = FunctionsTest.pass_through(ob2) self.assertEqual(id(y), id(ob2)) + @unittest.skip(reason="FIXME: test randomly pass/fails") def test_events(self): class EventHandler(object): def handler(self, x, args): @@ -140,10 +167,12 @@ def handler(self, x, args): self.assertEqual(FunctionsTest.test_event(x, 1), 1) self.assertEqual(event_handler.value, 1) + InterfaceTestClass = interface_test_class_fixture() i = InterfaceTestClass() with self.assertRaises(System.NotImplementedException): FunctionsTest.test_event(i, 2) + DerivedEventTest = derived_event_test_class_fixture() d = DerivedEventTest() d.add_TestEvent(event_handler.handler) self.assertEqual(FunctionsTest.test_event(d, 3), 3)