From: Stefan Behnel Date: Fri, 11 Jul 2008 17:28:50 +0000 (+0200) Subject: new test case for flattened 'in' tests X-Git-Tag: 0.9.8.1~123^2~8 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=91ffc47419a84dac265df8b4d31cdf5e8386a035;p=cython.git new test case for flattened 'in' tests --- diff --git a/tests/run/flatin.pyx b/tests/run/flatin.pyx new file mode 100644 index 00000000..58ca047e --- /dev/null +++ b/tests/run/flatin.pyx @@ -0,0 +1,47 @@ +__doc__ = u""" +>>> test_in('ABC') +1 +>>> test_in('abc') +2 +>>> test_in('X') +3 +>>> test_in('XYZ') +4 +>>> test_in('ABCXYZ') +5 +>>> test_in('') +5 + +>>> test_not_in('abc') +1 +>>> test_not_in('CDE') +2 +>>> test_not_in('CDEF') +3 +>>> test_not_in('BCD') +4 +""" + +def test_in(s): + if s in ('ABC', 'BCD'): + return 1 + elif s.upper() in ('ABC', 'BCD'): + return 2 + elif len(s) in (1,2): + return 3 + elif len(s) in (3,4): + return 4 + else: + return 5 + +def test_not_in(s): + if s not in ('ABC', 'BCD', 'CDE', 'CDEF'): + return 1 + elif s.upper() not in ('ABC', 'BCD', 'CDEF'): + return 2 + elif len(s) not in [3]: + return 3 + elif len(s) not in [1,2]: + return 4 + else: + return 5