@@ -912,14 +912,18 @@ def test_sysconf(self):
912912 else :
913913 assert False
914914
915+ def sysconf_max (name ):
916+ value = os .sysconf (name )
917+ return sys .maxsize - value if value < 0 else value
918+
915919 # constants taken from POSIX where defined
916- self .assertGreaterEqual (os . sysconf ('SC_ARG_MAX' ), 4096 )
917- self .assertGreaterEqual (os . sysconf ('SC_CHILD_MAX' ), 25 )
918- self .assertGreaterEqual (os . sysconf ('SC_LOGIN_NAME_MAX' ), 9 )
920+ self .assertGreaterEqual (sysconf_max ('SC_ARG_MAX' ), 4096 )
921+ self .assertGreaterEqual (sysconf_max ('SC_CHILD_MAX' ), 25 )
922+ self .assertGreaterEqual (sysconf_max ('SC_LOGIN_NAME_MAX' ), 9 )
919923 self .assertGreaterEqual (os .sysconf ('SC_CLK_TCK' ), 0 )
920- self .assertGreaterEqual (os . sysconf ('SC_OPEN_MAX' ), 20 )
924+ self .assertGreaterEqual (sysconf_max ('SC_OPEN_MAX' ), 20 )
921925 self .assertGreaterEqual (os .sysconf ('SC_PAGESIZE' ), 1 )
922- os . sysconf ( 'SC_SEM_NSEMS_MAX' ) # returns -1 on my linux box, just check it's there
926+ self . assertGreaterEqual ( sysconf_max ( 'SC_SEM_NSEMS_MAX' ), 32 )
923927 self .assertGreaterEqual (os .sysconf ('SC_PHYS_PAGES' ), 1 )
924928 self .assertGreaterEqual (os .sysconf ('SC_NPROCESSORS_CONF' ), 1 )
925929
0 commit comments