]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
* Add some more tests for numbers
authorGuido van Rossum <guido@python.org>
Thu, 21 Jan 1993 15:36:40 +0000 (15:36 +0000)
committerGuido van Rossum <guido@python.org>
Thu, 21 Jan 1993 15:36:40 +0000 (15:36 +0000)
* mainloop.py: don't use select unless absolutely necessary (for Mac)

Lib/lib-stdwin/mainloop.py
Lib/stdwin/mainloop.py
Lib/test/test_types.py
Lib/test/testall.out

index 6b574cf2a4c9a76d42cae2edef356d7b2773907d..ca3e9ac4c54360ae9071b0c0481cde4cc4623c68 100644 (file)
@@ -4,9 +4,6 @@
 # - have a 'dispatch' function as a window member
 
 
-# XXX This is UNIX specific!  For the Mac we need to use a simpler version!
-
-
 import stdwin, stdwinq
 from stdwinevents import *
 
@@ -132,9 +129,17 @@ def mainloop():
        recursion_level = recursion_level + 1
        try:
                stdwin_select_handler() # Process events already in queue
-               fd = stdwin.fileno()
                while 1:
-                       if windows:
+                       if windows and not fdlist:
+                               while windows and not fdlist:
+                                       try:
+                                               event = stdwinq.getevent()
+                                       except KeyboardInterrupt:
+                                               event = (WE_COMMAND, \
+                                                        None, WC_CANCEL)
+                                       dispatch(event)
+                       elif windows and fdlist:
+                               fd = stdwin.fileno()
                                if recursion_level == 1:
                                    registerfd(fd, 'r', stdwin_select_handler)
                                try:
index 6b574cf2a4c9a76d42cae2edef356d7b2773907d..ca3e9ac4c54360ae9071b0c0481cde4cc4623c68 100755 (executable)
@@ -4,9 +4,6 @@
 # - have a 'dispatch' function as a window member
 
 
-# XXX This is UNIX specific!  For the Mac we need to use a simpler version!
-
-
 import stdwin, stdwinq
 from stdwinevents import *
 
@@ -132,9 +129,17 @@ def mainloop():
        recursion_level = recursion_level + 1
        try:
                stdwin_select_handler() # Process events already in queue
-               fd = stdwin.fileno()
                while 1:
-                       if windows:
+                       if windows and not fdlist:
+                               while windows and not fdlist:
+                                       try:
+                                               event = stdwinq.getevent()
+                                       except KeyboardInterrupt:
+                                               event = (WE_COMMAND, \
+                                                        None, WC_CANCEL)
+                                       dispatch(event)
+                       elif windows and fdlist:
+                               fd = stdwin.fileno()
                                if recursion_level == 1:
                                    registerfd(fd, 'r', stdwin_select_handler)
                                try:
index fb6e9345c5875cf8e1d89be3981d9583a1b8a760..e14fa3abfaedeb6fc39c1ddec1ade96e864fe3c2 100644 (file)
@@ -60,6 +60,27 @@ if long(1.9) == 1L == long(1.1) and long(-1.1) == -1L == long(-1.9): pass
 else: raise TestFailed, 'long() does not round properly'
 if float(1) == 1.0 and float(-1) == -1.0 and float(0) == 0.0: pass
 else: raise TestFailed, 'float() does not work properly'
+print '6.4.1 32-bit integers'
+if 12 + 24 <> 36: raise TestFailed, 'int op'
+if 12 + (-24) <> -12: raise TestFailed, 'int op'
+if (-12) + 24 <> 12: raise TestFailed, 'int op'
+if (-12) + (-24) <> -36: raise TestFailed, 'int op'
+if not 12 < 24: raise TestFailed, 'int op'
+if not -24 < -12: raise TestFailed, 'int op'
+print '6.4.2 Long integers'
+if 12L + 24L <> 36L: raise TestFailed, 'long op'
+if 12L + (-24L) <> -12L: raise TestFailed, 'long op'
+if (-12L) + 24L <> 12L: raise TestFailed, 'long op'
+if (-12L) + (-24L) <> -36L: raise TestFailed, 'long op'
+if not 12L < 24L: raise TestFailed, 'long op'
+if not -24L < -12L: raise TestFailed, 'long op'
+print '6.4.3 Floating point numbers'
+if 12.0 + 24.0 <> 36.0: raise TestFailed, 'float op'
+if 12.0 + (-24.0) <> -12.0: raise TestFailed, 'float op'
+if (-12.0) + 24.0 <> 12.0: raise TestFailed, 'float op'
+if (-12.0) + (-24.0) <> -36.0: raise TestFailed, 'float op'
+if not 12.0 < 24.0: raise TestFailed, 'float op'
+if not -24.0 < -12.0: raise TestFailed, 'float op'
 
 print '6.5 Sequence types'
 
index 6e6fe9187326d5b8d42cbd5a1894aae8c0a7fd1a..f81849b12d67dd49b5c546de4e4e1b13ffaed333 100644 (file)
@@ -124,6 +124,9 @@ test_types
 6.2 Boolean operations
 6.3 Comparisons
 6.4 Numeric types (mostly conversions)
+6.4.1 32-bit integers
+6.4.2 Long integers
+6.4.3 Floating point numbers
 6.5 Sequence types
 6.5.1 Strings
 6.5.2 Tuples