/usr/lib/python3/dist-packages/zope/interface/tests
NameSizeModeActions
__pycache__/-0755rm
advisory_testing.py12560644editdlrm
dummy.py9110644editdlrm
idummy.py8890644editdlrm
ifoo.py8510644editdlrm
ifoo_other.py8510644editdlrm
m1.py8120644editdlrm
m2.py6890644editdlrm
odd.py32100644editdlrm
test_adapter.py557660644editdlrm
test_advice.py107080644editdlrm
test_declarations.py604780644editdlrm
test_document.py166370644editdlrm
test_element.py11180644editdlrm
test_exceptions.py26370644editdlrm
test_interface.py740910644editdlrm
test_interfaces.py32990644editdlrm
test_odd_declarations.py80090644editdlrm
test_registry.py1047410644editdlrm
test_ro.py33050644editdlrm
test_sorting.py14360644editdlrm
test_verify.py164350644editdlrm
__init__.py330644editdlrm
Edit: /usr/lib/python3/dist-packages/zope/interface/tests/test_ro.py (3305B)
############################################################################## # # Copyright (c) 2014 Zope Foundation and Contributors. # All Rights Reserved. # # This software is subject to the provisions of the Zope Public License, # Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution. # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS # FOR A PARTICULAR PURPOSE. # ############################################################################## """Resolution ordering utility tests""" import unittest class Test__mergeOrderings(unittest.TestCase): def _callFUT(self, orderings): from zope.interface.ro import _mergeOrderings return _mergeOrderings(orderings) def test_empty(self): self.assertEqual(self._callFUT([]), []) def test_single(self): self.assertEqual(self._callFUT(['a', 'b', 'c']), ['a', 'b', 'c']) def test_w_duplicates(self): self.assertEqual(self._callFUT([['a'], ['b', 'a']]), ['b', 'a']) def test_suffix_across_multiple_duplicats(self): O1 = ['x', 'y', 'z'] O2 = ['q', 'z'] O3 = [1, 3, 5] O4 = ['z'] self.assertEqual(self._callFUT([O1, O2, O3, O4]), ['x', 'y', 'q', 1, 3, 5, 'z']) class Test__flatten(unittest.TestCase): def _callFUT(self, ob): from zope.interface.ro import _flatten return _flatten(ob) def test_w_empty_bases(self): class Foo(object): pass foo = Foo() foo.__bases__ = () self.assertEqual(self._callFUT(foo), [foo]) def test_w_single_base(self): class Foo(object): pass self.assertEqual(self._callFUT(Foo), [Foo, object]) def test_w_bases(self): class Foo(object): pass class Bar(Foo): pass self.assertEqual(self._callFUT(Bar), [Bar, Foo, object]) def test_w_diamond(self): class Foo(object): pass class Bar(Foo): pass class Baz(Foo): pass class Qux(Bar, Baz): pass self.assertEqual(self._callFUT(Qux), [Qux, Bar, Foo, object, Baz, Foo, object]) class Test_ro(unittest.TestCase): def _callFUT(self, ob): from zope.interface.ro import ro return ro(ob) def test_w_empty_bases(self): class Foo(object): pass foo = Foo() foo.__bases__ = () self.assertEqual(self._callFUT(foo), [foo]) def test_w_single_base(self): class Foo(object): pass self.assertEqual(self._callFUT(Foo), [Foo, object]) def test_w_bases(self): class Foo(object): pass class Bar(Foo): pass self.assertEqual(self._callFUT(Bar), [Bar, Foo, object]) def test_w_diamond(self): class Foo(object): pass class Bar(Foo): pass class Baz(Foo): pass class Qux(Bar, Baz): pass self.assertEqual(self._callFUT(Qux), [Qux, Bar, Baz, Foo, object])