From e028f340601b3a7eced674c49418630472e2d2aa Mon Sep 17 00:00:00 2001 From: William S Fulton Date: Sat, 23 Sep 2006 00:00:58 +0000 Subject: [PATCH] #1506840 testcase - directors with virtual extended methods git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9327 626c5289-ae23-0410-ae9c-e8d60b6d4f22 --- SWIG/Examples/test-suite/common.mk | 1 + .../python/director_extend_runme.py | 20 +++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 SWIG/Examples/test-suite/python/director_extend_runme.py diff --git a/SWIG/Examples/test-suite/common.mk b/SWIG/Examples/test-suite/common.mk index 4e8473e12..f3550f10a 100644 --- a/SWIG/Examples/test-suite/common.mk +++ b/SWIG/Examples/test-suite/common.mk @@ -126,6 +126,7 @@ CPP_TEST_CASES += \ director_default \ director_enum \ director_exception \ + director_extend \ director_frob \ director_finalizer \ director_ignore \ diff --git a/SWIG/Examples/test-suite/python/director_extend_runme.py b/SWIG/Examples/test-suite/python/director_extend_runme.py new file mode 100644 index 000000000..1ab58676a --- /dev/null +++ b/SWIG/Examples/test-suite/python/director_extend_runme.py @@ -0,0 +1,20 @@ +# Test case from bug #1506850 +#"When threading is enabled, the interpreter will infinitely wait on a mutex the second +#time this type of extended method is called. Attached is an example +#program that waits on the mutex to be unlocked." + +from director_extend import * + +class MyObject(SpObject): + def __init__(self): + SpObject.__init__(self) + return + + def getFoo(self): + return 123 + +m = MyObject() +if m.dummy() != 666: + raise RuntimeError, "1st call" +if m.dummy() != 666: # Locked system + raise RuntimeError, "2nd call"