diff options
author | Lauro Neto <lauro.neto@openbossa.org> | 2010-02-05 18:02:51 -0300 |
---|---|---|
committer | Hugo Lima <hugo.lima@openbossa.org> | 2010-02-08 16:16:07 -0200 |
commit | cfd1c97717e8bdf05a0fa9aada851c7bcd4385b2 (patch) | |
tree | be46afc878c4df2bee457c7f1de8cc9dbf5d6a13 /tests | |
parent | 7d4f470fd6babc417222133bec8e8b9b13737ce2 (diff) |
Fixing sort overload
Now sorting OverloadData recursively
Reviewer: Renato Filho <renato.filho@openbossa.org>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/libsample/overloadsort.h | 4 | ||||
-rwxr-xr-x | tests/samplebinding/overload_sorting_test.py | 15 | ||||
-rw-r--r-- | tests/samplebinding/typesystem_sample.xml | 6 |
3 files changed, 25 insertions, 0 deletions
diff --git a/tests/libsample/overloadsort.h b/tests/libsample/overloadsort.h index a921009bd..3deeaf454 100644 --- a/tests/libsample/overloadsort.h +++ b/tests/libsample/overloadsort.h @@ -79,6 +79,10 @@ public: int implicit_overload(const ImplicitBase &x) { return 1; } + + const char *overloadDeep(int x, ImplicitBase &y) { + return "ImplicitBase"; + } }; #endif // OVERLOADSORT_H diff --git a/tests/samplebinding/overload_sorting_test.py b/tests/samplebinding/overload_sorting_test.py index 8d1e2e9b6..03e018aa2 100755 --- a/tests/samplebinding/overload_sorting_test.py +++ b/tests/samplebinding/overload_sorting_test.py @@ -61,5 +61,20 @@ class SimpleOverloadSorting(unittest.TestCase): '''Passing an implicit convertible object to an overload''' self.assert_(self.obj.implicit_overload(ImplicitTarget())) + +class DeepOverloadSorting(unittest.TestCase): + + def setUp(self): + self.obj = SortedOverload() + + def testPyObject(self): + '''Deep Overload - (int, PyObject *)''' + self.assertEqual(self.obj.overloadDeep(1, Dummy()), "PyObject") + + def testImplicit(self): + '''Deep Overload - (int, ImplicitBase *)''' + self.assertEqual(self.obj.overloadDeep(1, ImplicitBase()), "ImplicitBase") + + if __name__ == '__main__': unittest.main() diff --git a/tests/samplebinding/typesystem_sample.xml b/tests/samplebinding/typesystem_sample.xml index 75a8e47fe..1531d6b08 100644 --- a/tests/samplebinding/typesystem_sample.xml +++ b/tests/samplebinding/typesystem_sample.xml @@ -684,6 +684,12 @@ return PyString_FromString("PyObject"); </inject-code> </add-function> + + <add-function signature="overloadDeep(int, PyObject *)" return-type="const char *"> + <inject-code class="target" position="beginning"> + return PyString_FromString("PyObject"); + </inject-code> + </add-function> </value-type> <value-type name="ImplicitTarget"/> |