rubyfox-server 2.3.0.pre2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +17 -0
- data/.rvmrc +1 -0
- data/Gemfile +3 -0
- data/LICENSE.txt +22 -0
- data/README.md +23 -0
- data/Rakefile +1 -0
- data/bin/smartfox +7 -0
- data/lib/rubyfox/server/cli.rb +59 -0
- data/lib/rubyfox/server/data/config/.keep +0 -0
- data/lib/rubyfox/server/data/config/_backups/.keep +0 -0
- data/lib/rubyfox/server/data/config/ascii/boot.txt +5 -0
- data/lib/rubyfox/server/data/config/ascii/ready.txt +9 -0
- data/lib/rubyfox/server/data/config/core.xml +44 -0
- data/lib/rubyfox/server/data/config/crossdomain.xml +10 -0
- data/lib/rubyfox/server/data/config/descriptors/.keep +0 -0
- data/lib/rubyfox/server/data/config/descriptors/config_room.txt +323 -0
- data/lib/rubyfox/server/data/config/descriptors/config_server.txt +621 -0
- data/lib/rubyfox/server/data/config/descriptors/config_zone.txt +1021 -0
- data/lib/rubyfox/server/data/config/descriptors/runtime_game.txt +63 -0
- data/lib/rubyfox/server/data/config/descriptors/runtime_room.txt +377 -0
- data/lib/rubyfox/server/data/config/descriptors/runtime_user.txt +589 -0
- data/lib/rubyfox/server/data/config/descriptors/runtime_zone.txt +354 -0
- data/lib/rubyfox/server/data/config/jetty/.keep +0 -0
- data/lib/rubyfox/server/data/config/jetty/jetty.xml +214 -0
- data/lib/rubyfox/server/data/config/jetty/realm.properties +21 -0
- data/lib/rubyfox/server/data/config/jetty/webdefault.xml +410 -0
- data/lib/rubyfox/server/data/config/log4j.properties +75 -0
- data/lib/rubyfox/server/data/config/myprop.properties +5 -0
- data/lib/rubyfox/server/data/config/server.xml +65 -0
- data/lib/rubyfox/server/data/config/templates/sfs2x.unix.txt +12 -0
- data/lib/rubyfox/server/data/config/templates/sfs2x.windows.txt +1 -0
- data/lib/rubyfox/server/data/config/templates/vmoptions.txt +3 -0
- data/lib/rubyfox/server/data/config/wordsFile.txt +13 -0
- data/lib/rubyfox/server/data/data/bannedusers/.keep +0 -0
- data/lib/rubyfox/server/data/data/bannedusers/users.bin +0 -0
- data/lib/rubyfox/server/data/data/buddylists/.keep +0 -0
- data/lib/rubyfox/server/data/data/buddylists/BasicExamples/7364666773646667 +0 -0
- data/lib/rubyfox/server/data/extensions/.keep +0 -0
- data/lib/rubyfox/server/data/extensions/__lib__/.keep +0 -0
- data/lib/rubyfox/server/data/lib/Jetty/.keep +0 -0
- data/lib/rubyfox/server/data/lib/Jetty/ant-1.6.5.jar +0 -0
- data/lib/rubyfox/server/data/lib/Jetty/core-3.1.1.jar +0 -0
- data/lib/rubyfox/server/data/lib/Jetty/jetty-6.1.26.jar +0 -0
- data/lib/rubyfox/server/data/lib/Jetty/jetty-util-6.1.26.jar +0 -0
- data/lib/rubyfox/server/data/lib/Jetty/jsp-2.1-glassfish-2.1.v20091210.jar +0 -0
- data/lib/rubyfox/server/data/lib/Jetty/jsp-2.1-jetty-6.1.26.jar +0 -0
- data/lib/rubyfox/server/data/lib/Jetty/jsp-api-2.1-glassfish-2.1.v20091210.jar +0 -0
- data/lib/rubyfox/server/data/lib/Jetty/servlet-api-2.5-20081211.jar +0 -0
- data/lib/rubyfox/server/data/lib/Lib/BaseHTTPServer.py +484 -0
- data/lib/rubyfox/server/data/lib/Lib/CGIHTTPServer.py +325 -0
- data/lib/rubyfox/server/data/lib/Lib/ConfigParser.py +472 -0
- data/lib/rubyfox/server/data/lib/Lib/Cookie.py +742 -0
- data/lib/rubyfox/server/data/lib/Lib/HTMLParser.py +383 -0
- data/lib/rubyfox/server/data/lib/Lib/MimeWriter.py +181 -0
- data/lib/rubyfox/server/data/lib/Lib/Queue.py +151 -0
- data/lib/rubyfox/server/data/lib/Lib/SimpleHTTPServer.py +198 -0
- data/lib/rubyfox/server/data/lib/Lib/SimpleXMLRPCServer.py +274 -0
- data/lib/rubyfox/server/data/lib/Lib/SocketServer.py +576 -0
- data/lib/rubyfox/server/data/lib/Lib/StringIO.py +239 -0
- data/lib/rubyfox/server/data/lib/Lib/UserDict$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/UserDict.py +60 -0
- data/lib/rubyfox/server/data/lib/Lib/UserList.py +94 -0
- data/lib/rubyfox/server/data/lib/Lib/UserString.py +182 -0
- data/lib/rubyfox/server/data/lib/Lib/__future__$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/__future__.py +104 -0
- data/lib/rubyfox/server/data/lib/Lib/aifc.py +961 -0
- data/lib/rubyfox/server/data/lib/Lib/anydbm.py +86 -0
- data/lib/rubyfox/server/data/lib/Lib/atexit.py +50 -0
- data/lib/rubyfox/server/data/lib/Lib/base64.py +77 -0
- data/lib/rubyfox/server/data/lib/Lib/bdb.py +563 -0
- data/lib/rubyfox/server/data/lib/Lib/binhex.py +531 -0
- data/lib/rubyfox/server/data/lib/Lib/bisect.py +78 -0
- data/lib/rubyfox/server/data/lib/Lib/calendar.py +246 -0
- data/lib/rubyfox/server/data/lib/Lib/cgi.py +1040 -0
- data/lib/rubyfox/server/data/lib/Lib/chunk.py +167 -0
- data/lib/rubyfox/server/data/lib/Lib/cmd.py +336 -0
- data/lib/rubyfox/server/data/lib/Lib/code$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/code.py +311 -0
- data/lib/rubyfox/server/data/lib/Lib/codecs$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/codecs.py +636 -0
- data/lib/rubyfox/server/data/lib/Lib/codeop$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/codeop.py +131 -0
- data/lib/rubyfox/server/data/lib/Lib/colorsys.py +123 -0
- data/lib/rubyfox/server/data/lib/Lib/commands.py +84 -0
- data/lib/rubyfox/server/data/lib/Lib/compileall.py +148 -0
- data/lib/rubyfox/server/data/lib/Lib/copy.py +330 -0
- data/lib/rubyfox/server/data/lib/Lib/copy_reg$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/copy_reg.py +78 -0
- data/lib/rubyfox/server/data/lib/Lib/datetime$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/datetime.py +2007 -0
- data/lib/rubyfox/server/data/lib/Lib/dbexts.py +726 -0
- data/lib/rubyfox/server/data/lib/Lib/difflib.py +1088 -0
- data/lib/rubyfox/server/data/lib/Lib/dircache.py +44 -0
- data/lib/rubyfox/server/data/lib/Lib/doctest.py +1173 -0
- data/lib/rubyfox/server/data/lib/Lib/dospath.py +341 -0
- data/lib/rubyfox/server/data/lib/Lib/dumbdbm.py +170 -0
- data/lib/rubyfox/server/data/lib/Lib/email/Charset.py +393 -0
- data/lib/rubyfox/server/data/lib/Lib/email/Encoders.py +94 -0
- data/lib/rubyfox/server/data/lib/Lib/email/Errors.py +26 -0
- data/lib/rubyfox/server/data/lib/Lib/email/Generator.py +378 -0
- data/lib/rubyfox/server/data/lib/Lib/email/Header.py +515 -0
- data/lib/rubyfox/server/data/lib/Lib/email/Iterators.py +25 -0
- data/lib/rubyfox/server/data/lib/Lib/email/MIMEAudio.py +71 -0
- data/lib/rubyfox/server/data/lib/Lib/email/MIMEBase.py +24 -0
- data/lib/rubyfox/server/data/lib/Lib/email/MIMEImage.py +45 -0
- data/lib/rubyfox/server/data/lib/Lib/email/MIMEMessage.py +32 -0
- data/lib/rubyfox/server/data/lib/Lib/email/MIMEMultipart.py +37 -0
- data/lib/rubyfox/server/data/lib/Lib/email/MIMENonMultipart.py +24 -0
- data/lib/rubyfox/server/data/lib/Lib/email/MIMEText.py +45 -0
- data/lib/rubyfox/server/data/lib/Lib/email/Message.py +837 -0
- data/lib/rubyfox/server/data/lib/Lib/email/Parser.py +292 -0
- data/lib/rubyfox/server/data/lib/Lib/email/Utils.py +340 -0
- data/lib/rubyfox/server/data/lib/Lib/email/__init__.py +72 -0
- data/lib/rubyfox/server/data/lib/Lib/email/_compat21.py +69 -0
- data/lib/rubyfox/server/data/lib/Lib/email/_compat22.py +70 -0
- data/lib/rubyfox/server/data/lib/Lib/email/_parseaddr.py +480 -0
- data/lib/rubyfox/server/data/lib/Lib/email/base64MIME.py +184 -0
- data/lib/rubyfox/server/data/lib/Lib/email/quopriMIME.py +323 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/__init__.py +2 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/PyBanner048.gif +0 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/audiotest.au +0 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_01.txt +19 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_02.txt +135 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_03.txt +16 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_04.txt +37 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_05.txt +28 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_06.txt +33 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_07.txt +83 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_08.txt +24 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_09.txt +24 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_10.txt +32 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_11.txt +7 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_12.txt +36 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_13.txt +94 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_14.txt +23 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_15.txt +52 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_16.txt +123 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_17.txt +12 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_18.txt +6 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_19.txt +43 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_20.txt +22 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_21.txt +20 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_22.txt +46 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_23.txt +8 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_24.txt +10 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_25.txt +117 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_26.txt +45 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_27.txt +15 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_28.txt +25 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_29.txt +22 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_30.txt +23 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_31.txt +15 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_32.txt +14 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_33.txt +29 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_34.txt +19 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/data/msg_35.txt +4 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/test_email.py +2718 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/test_email_codecs.py +68 -0
- data/lib/rubyfox/server/data/lib/Lib/email/test/test_email_torture.py +136 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/__init__$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/__init__.py +97 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/aliases$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/aliases.py +115 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/ascii.py +35 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/base64_codec.py +62 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/charmap.py +51 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp037.py +280 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1006.py +138 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1026.py +280 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1140.py +45 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1250.py +123 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1251.py +157 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1252.py +76 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1253.py +151 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1254.py +82 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1255.py +143 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1256.py +129 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1257.py +131 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp1258.py +90 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp424.py +280 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp437.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp500.py +280 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp737.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp775.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp850.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp852.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp855.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp856.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp857.py +171 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp860.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp861.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp862.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp863.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp864.py +170 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp865.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp866.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp869.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp874.py +171 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/cp875.py +281 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/hex_codec.py +62 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_1.py +44 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_10.py +90 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_13.py +100 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_14.py +75 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_15.py +52 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_2.py +101 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_3.py +79 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_4.py +94 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_5.py +138 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_6.py +137 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_7.py +124 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_8.py +112 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/iso8859_9.py +50 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/koi8_r.py +172 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/koi8_u.py +54 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/latin_1.py +35 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/mac_cyrillic.py +167 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/mac_greek.py +170 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/mac_iceland.py +166 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/mac_latin2.py +170 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/mac_roman.py +167 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/mac_turkish.py +167 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/mbcs.py +36 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py +58 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/raw_unicode_escape.py +30 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/rot_13.py +105 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/undefined.py +34 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/unicode_escape.py +30 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/unicode_internal.py +30 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/utf_16.py +61 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/utf_16_be.py +31 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/utf_16_le.py +31 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/utf_7.py +27 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/utf_8$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/utf_8.py +31 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/uu_codec.py +112 -0
- data/lib/rubyfox/server/data/lib/Lib/encodings/zlib_codec.py +63 -0
- data/lib/rubyfox/server/data/lib/Lib/fileinput.py +349 -0
- data/lib/rubyfox/server/data/lib/Lib/fnmatch.py +107 -0
- data/lib/rubyfox/server/data/lib/Lib/formatter.py +454 -0
- data/lib/rubyfox/server/data/lib/Lib/fpformat.py +142 -0
- data/lib/rubyfox/server/data/lib/Lib/ftplib.py +804 -0
- data/lib/rubyfox/server/data/lib/Lib/getopt.py +143 -0
- data/lib/rubyfox/server/data/lib/Lib/glob.py +56 -0
- data/lib/rubyfox/server/data/lib/Lib/gopherlib.py +205 -0
- data/lib/rubyfox/server/data/lib/Lib/gzip.py +390 -0
- data/lib/rubyfox/server/data/lib/Lib/hmac.py +99 -0
- data/lib/rubyfox/server/data/lib/Lib/htmlentitydefs.py +257 -0
- data/lib/rubyfox/server/data/lib/Lib/htmllib.py +475 -0
- data/lib/rubyfox/server/data/lib/Lib/httplib.py +1238 -0
- data/lib/rubyfox/server/data/lib/Lib/imaplib.py +1208 -0
- data/lib/rubyfox/server/data/lib/Lib/imghdr.py +154 -0
- data/lib/rubyfox/server/data/lib/Lib/inspect$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/inspect.py +787 -0
- data/lib/rubyfox/server/data/lib/Lib/isql.py +238 -0
- data/lib/rubyfox/server/data/lib/Lib/javaos$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/javaos.py +395 -0
- data/lib/rubyfox/server/data/lib/Lib/javapath$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/javapath.py +349 -0
- data/lib/rubyfox/server/data/lib/Lib/javashell.py +194 -0
- data/lib/rubyfox/server/data/lib/Lib/jreload.py +119 -0
- data/lib/rubyfox/server/data/lib/Lib/jxxload_help/DiscardHelp.java +59 -0
- data/lib/rubyfox/server/data/lib/Lib/jxxload_help/JavaLoaderFactory.java +9 -0
- data/lib/rubyfox/server/data/lib/Lib/jxxload_help/PackageManager.java +58 -0
- data/lib/rubyfox/server/data/lib/Lib/jxxload_help/PathVFS.java +98 -0
- data/lib/rubyfox/server/data/lib/Lib/jxxload_help/PathVFSJavaLoader.java +49 -0
- data/lib/rubyfox/server/data/lib/Lib/keyword.py +97 -0
- data/lib/rubyfox/server/data/lib/Lib/linecache$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/linecache.py +101 -0
- data/lib/rubyfox/server/data/lib/Lib/macpath.py +242 -0
- data/lib/rubyfox/server/data/lib/Lib/macurl2path.py +95 -0
- data/lib/rubyfox/server/data/lib/Lib/mailbox.py +313 -0
- data/lib/rubyfox/server/data/lib/Lib/mailcap.py +255 -0
- data/lib/rubyfox/server/data/lib/Lib/markupbase.py +317 -0
- data/lib/rubyfox/server/data/lib/Lib/marshal.py +315 -0
- data/lib/rubyfox/server/data/lib/Lib/mhlib.py +1003 -0
- data/lib/rubyfox/server/data/lib/Lib/mimetools.py +226 -0
- data/lib/rubyfox/server/data/lib/Lib/mimetypes.py +435 -0
- data/lib/rubyfox/server/data/lib/Lib/mimify.py +464 -0
- data/lib/rubyfox/server/data/lib/Lib/multifile.py +160 -0
- data/lib/rubyfox/server/data/lib/Lib/mutex.py +51 -0
- data/lib/rubyfox/server/data/lib/Lib/netrc.py +108 -0
- data/lib/rubyfox/server/data/lib/Lib/nntplib.py +575 -0
- data/lib/rubyfox/server/data/lib/Lib/ntpath.py +482 -0
- data/lib/rubyfox/server/data/lib/Lib/nturl2path.py +66 -0
- data/lib/rubyfox/server/data/lib/Lib/pawt/__init__.py +35 -0
- data/lib/rubyfox/server/data/lib/Lib/pawt/colors.py +144 -0
- data/lib/rubyfox/server/data/lib/Lib/pawt/swing.py +42 -0
- data/lib/rubyfox/server/data/lib/Lib/pdb.py +979 -0
- data/lib/rubyfox/server/data/lib/Lib/pickle.py +990 -0
- data/lib/rubyfox/server/data/lib/Lib/pipes.py +297 -0
- data/lib/rubyfox/server/data/lib/Lib/popen2.py +304 -0
- data/lib/rubyfox/server/data/lib/Lib/poplib.py +335 -0
- data/lib/rubyfox/server/data/lib/Lib/posixfile.py +240 -0
- data/lib/rubyfox/server/data/lib/Lib/posixpath.py +414 -0
- data/lib/rubyfox/server/data/lib/Lib/pprint.py +310 -0
- data/lib/rubyfox/server/data/lib/Lib/profile.py +556 -0
- data/lib/rubyfox/server/data/lib/Lib/pstats.py +641 -0
- data/lib/rubyfox/server/data/lib/Lib/pyclbr.py +337 -0
- data/lib/rubyfox/server/data/lib/Lib/quopri.py +237 -0
- data/lib/rubyfox/server/data/lib/Lib/random$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/random.py +779 -0
- data/lib/rubyfox/server/data/lib/Lib/re$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/re.py +11 -0
- data/lib/rubyfox/server/data/lib/Lib/reconvert.py +192 -0
- data/lib/rubyfox/server/data/lib/Lib/reindex$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/repr.py +95 -0
- data/lib/rubyfox/server/data/lib/Lib/rfc822.py +1010 -0
- data/lib/rubyfox/server/data/lib/Lib/sched.py +106 -0
- data/lib/rubyfox/server/data/lib/Lib/select.py +211 -0
- data/lib/rubyfox/server/data/lib/Lib/servlet-api-2.5-20081211.jar +0 -0
- data/lib/rubyfox/server/data/lib/Lib/setsfactory.py +10 -0
- data/lib/rubyfox/server/data/lib/Lib/sfs2x-lms.jar +0 -0
- data/lib/rubyfox/server/data/lib/Lib/sgmllib.py +516 -0
- data/lib/rubyfox/server/data/lib/Lib/shelve.py +158 -0
- data/lib/rubyfox/server/data/lib/Lib/shlex.py +209 -0
- data/lib/rubyfox/server/data/lib/Lib/shutil$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/shutil.py +138 -0
- data/lib/rubyfox/server/data/lib/Lib/site.py +263 -0
- data/lib/rubyfox/server/data/lib/Lib/smtplib.py +729 -0
- data/lib/rubyfox/server/data/lib/Lib/sndhdr.py +228 -0
- data/lib/rubyfox/server/data/lib/Lib/socket.py +902 -0
- data/lib/rubyfox/server/data/lib/Lib/sre$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/sre.py +311 -0
- data/lib/rubyfox/server/data/lib/Lib/sre_compile$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/sre_compile.py +455 -0
- data/lib/rubyfox/server/data/lib/Lib/sre_constants$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/sre_constants.py +259 -0
- data/lib/rubyfox/server/data/lib/Lib/sre_parse$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/sre_parse.py +738 -0
- data/lib/rubyfox/server/data/lib/Lib/stat$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/stat.py +86 -0
- data/lib/rubyfox/server/data/lib/Lib/string$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/string.py +437 -0
- data/lib/rubyfox/server/data/lib/Lib/symbol.py +95 -0
- data/lib/rubyfox/server/data/lib/Lib/telnetlib.py +662 -0
- data/lib/rubyfox/server/data/lib/Lib/tempfile.py +255 -0
- data/lib/rubyfox/server/data/lib/Lib/test/Graph.py +62 -0
- data/lib/rubyfox/server/data/lib/Lib/test/README +372 -0
- data/lib/rubyfox/server/data/lib/Lib/test/__init__.py +1 -0
- data/lib/rubyfox/server/data/lib/Lib/test/audiotest.au +0 -0
- data/lib/rubyfox/server/data/lib/Lib/test/autotest.py +6 -0
- data/lib/rubyfox/server/data/lib/Lib/test/badsyntax_future3.py +10 -0
- data/lib/rubyfox/server/data/lib/Lib/test/badsyntax_future4.py +10 -0
- data/lib/rubyfox/server/data/lib/Lib/test/badsyntax_future5.py +12 -0
- data/lib/rubyfox/server/data/lib/Lib/test/badsyntax_future6.py +10 -0
- data/lib/rubyfox/server/data/lib/Lib/test/badsyntax_future7.py +11 -0
- data/lib/rubyfox/server/data/lib/Lib/test/badsyntax_nocaret.py +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/blob.jar +0 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/bugs100.py +139 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/bugs101.py +57 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/jdkbugs.py +10 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr101.py +59 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr104.py +9 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr112.py +14 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr119.py +16 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr127.py +10 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr133/__init__.py +1 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr133/test.py +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr133.py +12 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr134.py +9 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr139.py +7 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr142.py +1 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr144.py +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr148.py +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr149.py +7 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr155.py +13 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr170.py +7 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr171.py +9 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr174.py +9 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr178.py +10 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr183.py +5 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr186.py +10 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr191.py +5 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr192.py +81 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr195.py +11 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr208.py +26 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr233.py +8 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr234.py +16 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr235.py +14 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr239.py +6 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr241.py +16 -0
- data/lib/rubyfox/server/data/lib/Lib/test/bugs/pr242.py +12 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/PyBanner048.gif +0 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_01.txt +19 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_02.txt +135 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_03.txt +16 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_04.txt +37 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_05.txt +28 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_06.txt +33 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_07.txt +83 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_08.txt +24 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_09.txt +24 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_10.txt +32 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_11.txt +7 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_12.txt +36 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_13.txt +94 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_14.txt +23 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_15.txt +52 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_16.txt +123 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_17.txt +12 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_18.txt +6 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_19.txt +43 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_20.txt +22 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_21.txt +22 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_22.txt +46 -0
- data/lib/rubyfox/server/data/lib/Lib/test/data/msg_23.txt +8 -0
- data/lib/rubyfox/server/data/lib/Lib/test/double_const.py +30 -0
- data/lib/rubyfox/server/data/lib/Lib/test/greyrgb.uue +1547 -0
- data/lib/rubyfox/server/data/lib/Lib/test/javatests/AnonInner.java +20 -0
- data/lib/rubyfox/server/data/lib/Lib/test/javatests/Foo.java +3 -0
- data/lib/rubyfox/server/data/lib/Lib/test/javatests/JOverload.java +132 -0
- data/lib/rubyfox/server/data/lib/Lib/test/javatests/ListTest.java +638 -0
- data/lib/rubyfox/server/data/lib/Lib/test/javatests/SubFoo.java +3 -0
- data/lib/rubyfox/server/data/lib/Lib/test/javatests/TestSupport.java +49 -0
- data/lib/rubyfox/server/data/lib/Lib/test/javatests/__init__.py +0 -0
- data/lib/rubyfox/server/data/lib/Lib/test/jser2_classes.py +47 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_MimeWriter +110 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_array +4 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_asynchat +3 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_augassign +51 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_binascii +29 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_builtin +53 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_cfgparser +9 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_cgi +29 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_charmapcodec +16 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_class +101 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_coercion +1054 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_compare +101 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_compile +7 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_cookie +32 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_exceptions +52 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_extcall +112 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_frozen +4 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_future +9 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_gettext +46 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_global +5 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_grammar +66 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_httplib +10 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_janoninner +5 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_javalist +6 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_jbasic +13 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_jser +12 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_jsubclass +5 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_linuxaudiodev +7 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_longexp +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_math +26 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_md5 +9 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_methods +6 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_mimetools +5 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_mmap +34 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_new +7 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_nis +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_opcodes +4 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_openpty +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_operations +28 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_pkg +45 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_poll +17 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_popen2 +9 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_posixpath +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_pow +17 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_profile +17 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_pty +3 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_pwd +7 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_pyexpat +110 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_re +15 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_regex +29 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_rgbimg +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_richcmp +187 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_rotor +5 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_scope +24 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_signal +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_string +18 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_thread +4 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_threadedtempfile +5 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_time +9 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_tokenize +648 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_types +15 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_ucn +7 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_unicode +21 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_unicode_file +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_unicodedata +5 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_unpack +15 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_urlparse +47 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_winreg +3 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_winsound +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/output/test_xreadline +4 -0
- data/lib/rubyfox/server/data/lib/Lib/test/pickletester.py +285 -0
- data/lib/rubyfox/server/data/lib/Lib/test/pydocfodder.py +210 -0
- data/lib/rubyfox/server/data/lib/Lib/test/pystone.py +252 -0
- data/lib/rubyfox/server/data/lib/Lib/test/re_tests.py +590 -0
- data/lib/rubyfox/server/data/lib/Lib/test/regex_tests.py +287 -0
- data/lib/rubyfox/server/data/lib/Lib/test/regrtest.py +1096 -0
- data/lib/rubyfox/server/data/lib/Lib/test/reperf.py +23 -0
- data/lib/rubyfox/server/data/lib/Lib/test/sortperf.py +141 -0
- data/lib/rubyfox/server/data/lib/Lib/test/string_tests.py +265 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test.xml +115 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test.xml.out +115 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_MimeWriter.py +170 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_SimpleXMLRPCServer.py +88 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_StringIO.py +113 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test___all__.py +158 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test___future__.py +59 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_al.py +23 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_array.py +438 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_asynchat.py +58 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_atexit.py +66 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_audioop.py +264 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_augassign.py +261 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_b1.py +632 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_b2.py +365 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_base64.py +53 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_bastion.py +3 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_binascii.py +119 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_binhex.py +50 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_binop.py +328 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_bisect.py +127 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_bsddb.py +76 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_bufio.py +60 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_bugfixes.py +31 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_builtin.py +13 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_calendar.py +61 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_call.py +131 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_capi.py +16 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_cd.py +26 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_cfgparser.py +284 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_cgi.py +188 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_charmapcodec.py +43 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_cl.py +78 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_class.py +317 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_cmath.py +35 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_codecs.py +31 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_codeop.py +190 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_coercion.py +118 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_commands.py +52 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_compare.py +56 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_compile.py +129 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_complex.py +68 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_contains.py +133 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_cookie.py +47 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_copy_reg.py +30 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_cpickle.py +81 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_crypt.py +11 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_curses.py +210 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_datetime.py +2958 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_dbm.py +43 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_descr.py +4094 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_descrtut.py +501 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_difflib.py +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_dircache.py +74 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_dl.py +33 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_doctest.py +2 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_doctest2.py +108 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_dospath.py +61 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_dumbdbm.py +79 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_email.py +13 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_email_codecs.py +11 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_enumerate.py +150 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_errno.py +49 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_exceptions.py +206 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_extcall.py +268 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_fcntl.py +53 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_file.py +63 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_fileinput.py +159 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_fnmatch.py +46 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_fork1.py +75 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_format.py +218 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_fpformat.py +75 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_frozen.py +26 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_funcattrs.py +384 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_future.py +47 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_future1.py +11 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_future2.py +10 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_future3.py +11 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_gc.py +346 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_gdbm.py +46 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_generators.py +1385 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_getargs.py +26 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_getopt.py +110 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_gettext.py +200 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_gl.py +150 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_glob.py +115 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_global.py +51 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_grammar.py +732 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_grp.py +27 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_gzip.py +82 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_hash.py +36 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_hmac.py +108 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_hotshot.py +117 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_htmllib.py +42 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_htmlparser.py +294 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_httplib.py +58 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_imageop.py +171 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_imgfile.py +116 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_import.py +71 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_importhooks.py +215 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_inspect.py +365 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_iter.py +784 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_janoninner.py +15 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_javalist.py +53 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_javashell.py +182 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_jbasic.py +119 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_joverload.py +138 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_jreload.py +33 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_jser.py +57 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_jser2.py +93 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_jsubclass.py +49 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_jy_compile.py +168 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_jy_generators.py +165 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_jy_internals.py +130 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_largefile.py +169 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_linuxaudiodev.py +89 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_locale.py +44 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_long.py +445 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_long_future.py +55 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_long_int_args.py +61 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_longexp.py +16 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_mailbox.py +113 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_marshal.py +44 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_math.py +153 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_md5.py +30 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_methods.py +62 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_mhlib.py +353 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_mimetools.py +18 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_mimetypes.py +59 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_minidom.py +648 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_mmap.py +317 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_module.py +77 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_multifile.py +66 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_mutants.py +285 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_netrc.py +42 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_new.py +108 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_nis.py +32 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_ntpath.py +114 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_opcodes.py +65 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_openpty.py +21 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_operations.py +475 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_operator.py +218 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_os.py +187 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_parser.py +383 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_pep247.py +50 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_pickle.py +40 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_pkg.py +259 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_pkgimport.py +84 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_poll.py +3 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_popen2.py +72 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_posixpath.py +40 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_pow.py +107 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_pprint.py +104 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_profile.py +86 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_profilehooks.py +360 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_pty.py +98 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_pwd.py +71 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_pyclbr.py +154 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_pyexpat.py +202 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_queue.py +158 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_quopri.py +157 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_random.py +19 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_re.py +304 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_regex.py +113 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_repr.py +278 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_rfc822.py +211 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_rgbimg.py +63 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_richcmp.py +261 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_rotor.py +28 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_sax.py +727 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_scope.py +530 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_select.py +228 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_select_new.py +229 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_sets.py +793 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_sgmllib.py +314 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_sha.py +52 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_signal.py +66 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_socket.py +1116 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_socket_ssl.py +27 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_socketserver.py +165 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_sre.py +434 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_str2unicode.py +90 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_strftime.py +146 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_string.py +223 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_strop.py +133 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_struct.py +441 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_structseq.py +28 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_subclasses.py +204 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_sunaudiodev.py +28 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_sundry.py +102 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_support.py +265 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_symtable.py +8 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_tempfile.py +10 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_thread.py +116 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_threaded_import.py +56 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_threadedtempfile.py +86 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_threading.py +55 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_time.py +47 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_timing.py +21 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_tokenize.py +9 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_trace.py +219 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_traceback.py +49 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_types.py +762 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_ucn.py +113 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_unary.py +58 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_unicode.py +815 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_unicode_file.py +95 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_unicodedata.py +125 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_unpack.py +105 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_urllib.py +109 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_urllib2.py +31 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_urlparse.py +94 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_userdict.py +120 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_userlist.py +269 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_userstring.py +43 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_uu.py +158 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_wave.py +34 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_weakref.py +573 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_winreg.py +151 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_winsound.py +6 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_xmllib.py +35 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_xmlrpc.py +37 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_xreadline.py +43 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_zipfile.py +78 -0
- data/lib/rubyfox/server/data/lib/Lib/test/test_zlib.py +482 -0
- data/lib/rubyfox/server/data/lib/Lib/test/testall.py +43 -0
- data/lib/rubyfox/server/data/lib/Lib/test/testcodec.py +48 -0
- data/lib/rubyfox/server/data/lib/Lib/test/testimg.uue +1170 -0
- data/lib/rubyfox/server/data/lib/Lib/test/testimgr.uue +1170 -0
- data/lib/rubyfox/server/data/lib/Lib/test/testrgb.uue +971 -0
- data/lib/rubyfox/server/data/lib/Lib/test/tokenize_tests.py +175 -0
- data/lib/rubyfox/server/data/lib/Lib/test/whrandom.py +96 -0
- data/lib/rubyfox/server/data/lib/Lib/test/zxjdbc/dbextstest.py +266 -0
- data/lib/rubyfox/server/data/lib/Lib/test/zxjdbc/jndi.py +33 -0
- data/lib/rubyfox/server/data/lib/Lib/test/zxjdbc/runner.py +204 -0
- data/lib/rubyfox/server/data/lib/Lib/test/zxjdbc/sptest.py +227 -0
- data/lib/rubyfox/server/data/lib/Lib/test/zxjdbc/test.xml +363 -0
- data/lib/rubyfox/server/data/lib/Lib/test/zxjdbc/test_zxjdbc_dbapi20.py +26 -0
- data/lib/rubyfox/server/data/lib/Lib/test/zxjdbc/zxtest.py +1242 -0
- data/lib/rubyfox/server/data/lib/Lib/this.py +28 -0
- data/lib/rubyfox/server/data/lib/Lib/threading.py +698 -0
- data/lib/rubyfox/server/data/lib/Lib/token$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/token.py +140 -0
- data/lib/rubyfox/server/data/lib/Lib/tokenize$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/tokenize.py +287 -0
- data/lib/rubyfox/server/data/lib/Lib/traceback$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/traceback.py +301 -0
- data/lib/rubyfox/server/data/lib/Lib/tzparse.py +98 -0
- data/lib/rubyfox/server/data/lib/Lib/unittest.py +723 -0
- data/lib/rubyfox/server/data/lib/Lib/urllib.py +1465 -0
- data/lib/rubyfox/server/data/lib/Lib/urllib2.py +1144 -0
- data/lib/rubyfox/server/data/lib/Lib/urlparse.py +276 -0
- data/lib/rubyfox/server/data/lib/Lib/user.py +45 -0
- data/lib/rubyfox/server/data/lib/Lib/uu.py +195 -0
- data/lib/rubyfox/server/data/lib/Lib/warnings$py.class +0 -0
- data/lib/rubyfox/server/data/lib/Lib/warnings.py +258 -0
- data/lib/rubyfox/server/data/lib/Lib/weakref.py +280 -0
- data/lib/rubyfox/server/data/lib/Lib/whichdb.py +87 -0
- data/lib/rubyfox/server/data/lib/Lib/whrandom.py +140 -0
- data/lib/rubyfox/server/data/lib/Lib/xdrlib.py +285 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/FtCore.py +58 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/Uri.py +380 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/__init__.py +41 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/dom/MessageSource.py +54 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/dom/NodeFilter.py +27 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/dom/__init__.py +232 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/dom/domreg.py +99 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/dom/minicompat.py +184 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/dom/minidom.py +1943 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/dom/pulldom.py +350 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/dom/xmlbuilder.py +388 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/sax/__init__.py +102 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/sax/_exceptions.py +127 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/sax/drivers2/__init__.py +1 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/sax/drivers2/drv_javasax.py +333 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/sax/handler.py +345 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/sax/saxlib.py +430 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/sax/saxutils.py +813 -0
- data/lib/rubyfox/server/data/lib/Lib/xml/sax/xmlreader.py +378 -0
- data/lib/rubyfox/server/data/lib/Lib/xmllib.py +926 -0
- data/lib/rubyfox/server/data/lib/Lib/xmlrpclib.py +1019 -0
- data/lib/rubyfox/server/data/lib/Lib/zipfile.py +586 -0
- data/lib/rubyfox/server/data/lib/Lib/zlib.py +156 -0
- data/lib/rubyfox/server/data/lib/boot.jar +0 -0
- data/lib/rubyfox/server/data/lib/cachedir/.keep +0 -0
- data/lib/rubyfox/server/data/lib/commons-beanutils-1.7.0.jar +0 -0
- data/lib/rubyfox/server/data/lib/commons-collections-3.2.1.jar +0 -0
- data/lib/rubyfox/server/data/lib/commons-dbcp-1.4.jar +0 -0
- data/lib/rubyfox/server/data/lib/commons-io-1.4.jar +0 -0
- data/lib/rubyfox/server/data/lib/commons-lang-2.4.jar +0 -0
- data/lib/rubyfox/server/data/lib/commons-logging-1.1.1.jar +0 -0
- data/lib/rubyfox/server/data/lib/commons-pool-1.5.4.jar +0 -0
- data/lib/rubyfox/server/data/lib/commons-vfs-1.0.jar +0 -0
- data/lib/rubyfox/server/data/lib/ezmorph-1.0.6.jar +0 -0
- data/lib/rubyfox/server/data/lib/httpclient-4.0.3.jar +0 -0
- data/lib/rubyfox/server/data/lib/httpcore-4.0.1.jar +0 -0
- data/lib/rubyfox/server/data/lib/imap.jar +0 -0
- data/lib/rubyfox/server/data/lib/jconsole/COPYING.txt +504 -0
- data/lib/rubyfox/server/data/lib/jconsole/bug_test_case.py +49 -0
- data/lib/rubyfox/server/data/lib/jconsole/console$py.class +0 -0
- data/lib/rubyfox/server/data/lib/jconsole/console.py +439 -0
- data/lib/rubyfox/server/data/lib/jconsole/history$py.class +0 -0
- data/lib/rubyfox/server/data/lib/jconsole/history.py +82 -0
- data/lib/rubyfox/server/data/lib/jconsole/history_test_case.py +133 -0
- data/lib/rubyfox/server/data/lib/jconsole/introspect$py.class +0 -0
- data/lib/rubyfox/server/data/lib/jconsole/introspect.py +373 -0
- data/lib/rubyfox/server/data/lib/jconsole/introspect_test_case.py +19 -0
- data/lib/rubyfox/server/data/lib/jconsole/issue_17_test_case.py +36 -0
- data/lib/rubyfox/server/data/lib/jconsole/jintrospect$py.class +0 -0
- data/lib/rubyfox/server/data/lib/jconsole/jintrospect.py +316 -0
- data/lib/rubyfox/server/data/lib/jconsole/jintrospect_test_case.py +107 -0
- data/lib/rubyfox/server/data/lib/jconsole/popup$py.class +0 -0
- data/lib/rubyfox/server/data/lib/jconsole/popup.py +178 -0
- data/lib/rubyfox/server/data/lib/jconsole/run_tests.py +8 -0
- data/lib/rubyfox/server/data/lib/jconsole/static_test_case.py +36 -0
- data/lib/rubyfox/server/data/lib/jconsole/testcase.py +38 -0
- data/lib/rubyfox/server/data/lib/jconsole/tip$py.class +0 -0
- data/lib/rubyfox/server/data/lib/jconsole/tip.py +47 -0
- data/lib/rubyfox/server/data/lib/jmx-util-1.2.3.jar +0 -0
- data/lib/rubyfox/server/data/lib/joda-time-1.6.jar +0 -0
- data/lib/rubyfox/server/data/lib/js.jar +0 -0
- data/lib/rubyfox/server/data/lib/json-lib-2.2.3-jdk15.jar +0 -0
- data/lib/rubyfox/server/data/lib/jython.jar +0 -0
- data/lib/rubyfox/server/data/lib/log4j-1.2.15.jar +0 -0
- data/lib/rubyfox/server/data/lib/logs-backup-app.jar +0 -0
- data/lib/rubyfox/server/data/lib/mailapi.jar +0 -0
- data/lib/rubyfox/server/data/lib/pop3.jar +0 -0
- data/lib/rubyfox/server/data/lib/scala-library.jar +0 -0
- data/lib/rubyfox/server/data/lib/sfs2x-admin.jar +0 -0
- data/lib/rubyfox/server/data/lib/sfs2x-core.jar +0 -0
- data/lib/rubyfox/server/data/lib/sfs2x-util.jar +0 -0
- data/lib/rubyfox/server/data/lib/sfs2x.jar +0 -0
- data/lib/rubyfox/server/data/lib/slf4j-api-1.5.10.jar +0 -0
- data/lib/rubyfox/server/data/lib/slf4j-log4j12.jar +0 -0
- data/lib/rubyfox/server/data/lib/smtp.jar +0 -0
- data/lib/rubyfox/server/data/lib/terracotta-api-1.1.1.jar +0 -0
- data/lib/rubyfox/server/data/lib/ws-engine.jar +0 -0
- data/lib/rubyfox/server/data/lib/xpp3_min-1.1.4c.jar +0 -0
- data/lib/rubyfox/server/data/lib/xstream-1.3.1.jar +0 -0
- data/lib/rubyfox/server/data/logs/.keep +0 -0
- data/lib/rubyfox/server/data/logs/bluebox/.keep +0 -0
- data/lib/rubyfox/server/data/logs/boot/.keep +0 -0
- data/lib/rubyfox/server/data/logs/http/.keep +0 -0
- data/lib/rubyfox/server/data/logs/smartfox.log +295 -0
- data/lib/rubyfox/server/data/root/.keep +0 -0
- data/lib/rubyfox/server/data/root/_css_/default.css +170 -0
- data/lib/rubyfox/server/data/root/_css_/reset.css +49 -0
- data/lib/rubyfox/server/data/root/_images_/background_gradient.png +0 -0
- data/lib/rubyfox/server/data/root/_images_/background_logo.png +0 -0
- data/lib/rubyfox/server/data/root/_images_/favicon.png +0 -0
- data/lib/rubyfox/server/data/root/_images_/logo_smartfoxserver.png +0 -0
- data/lib/rubyfox/server/data/root/admin/.keep +0 -0
- data/lib/rubyfox/server/data/root/admin/AdminTool.html +108 -0
- data/lib/rubyfox/server/data/root/admin/AdminTool.swf +0 -0
- data/lib/rubyfox/server/data/root/admin/ReleaseNotes.txt +29 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/adobeFlashPlayer.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/advanced.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/banManager.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/bannedIPs.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/bannedUsernames.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/bookmarks.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/bootLog.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/buddyList.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/buddyProperties.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/connection.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/databaseManager.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/floodFilter.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/gameSettings.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/general.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/globalServerStatus.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/iPFilter.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/jVMSettings.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/logsDownload.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/mailer.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/permissionsAndEvents.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/privilegeManager.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/remoteAdmin.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/roomExtension.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/roomVariables.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/roomsAndGroups.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/runtimeLog.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/runtimeRoomSettings.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/runtimeUserSettings.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/runtimeZoneSettings.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/systemQueueStatus.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/userManagement.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/userVariables.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/usersTraffic.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/webServer.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/wordsFilter.png +0 -0
- data/lib/rubyfox/server/data/root/admin/assets/icons/tabs/zoneExtension.png +0 -0
- data/lib/rubyfox/server/data/root/admin/index.html +108 -0
- data/lib/rubyfox/server/data/root/admin/modules/BanManager/BanManager.swf +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/BanManager/icon.png +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/BlueBoxMonitor/BlueBoxMonitor.swf +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/BlueBoxMonitor/icon.png +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/LicenseManager/LicenseManager.swf +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/LicenseManager/icon.png +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/LogViewer/LogViewer.swf +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/LogViewer/icon.png +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/RuntimeStatistics/RuntimeStatistics.swf +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/RuntimeStatistics/icon.png +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/ServerConfigurator/ServerConfigurator.swf +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/ServerConfigurator/icon.png +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/ZoneConfigurator/ZoneConfigurator.swf +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/ZoneConfigurator/icon.png +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/ZoneMonitor/ZoneMonitor.swf +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/ZoneMonitor/icon.png +0 -0
- data/lib/rubyfox/server/data/root/admin/modules/config.xml +12 -0
- data/lib/rubyfox/server/data/root/admin/playerProductInstall.swf +0 -0
- data/lib/rubyfox/server/data/root/admin/swfobject.js +777 -0
- data/lib/rubyfox/server/data/root/crossdomain.xml +6 -0
- data/lib/rubyfox/server/data/root/index.html +63 -0
- data/lib/rubyfox/server/data/sfs2x-service +435 -0
- data/lib/rubyfox/server/data/sfs2x-service.vmoptions +5 -0
- data/lib/rubyfox/server/data/sfs2x.sh +12 -0
- data/lib/rubyfox/server/data/www/.keep +0 -0
- data/lib/rubyfox/server/data/www/BlueBox.war +0 -0
- data/lib/rubyfox/server/data/www/root/_css_/default.css +170 -0
- data/lib/rubyfox/server/data/www/root/_css_/reset.css +49 -0
- data/lib/rubyfox/server/data/www/root/_images_/background_gradient.png +0 -0
- data/lib/rubyfox/server/data/www/root/_images_/background_logo.png +0 -0
- data/lib/rubyfox/server/data/www/root/_images_/favicon.png +0 -0
- data/lib/rubyfox/server/data/www/root/_images_/logo_smartfoxserver.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/.keep +0 -0
- data/lib/rubyfox/server/data/www/root/admin/AdminTool.html +108 -0
- data/lib/rubyfox/server/data/www/root/admin/AdminTool.swf +0 -0
- data/lib/rubyfox/server/data/www/root/admin/ReleaseNotes.txt +63 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/adobeFlashPlayer.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/advanced.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/banManager.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/bannedIPs.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/bannedUsernames.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/bookmarks.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/bootLog.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/buddyList.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/buddyProperties.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/connection.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/databaseManager.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/floodFilter.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/gameSettings.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/general.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/globalServerStatus.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/hTML5WebSockets.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/iPFilter.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/jVMSettings.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/logsDownload.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/mailer.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/permissionsAndEvents.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/privilegeManager.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/remoteAdmin.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/roomExtension.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/roomVariables.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/roomsAndGroups.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/runtimeLog.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/runtimeRoomSettings.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/runtimeUserSettings.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/runtimeZoneSettings.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/systemQueueStatus.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/userManagement.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/userVariables.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/usersTraffic.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/webServer.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/wordsFilter.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/assets/icons/tabs/zoneExtension.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/index.html +108 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/BanManager/BanManager.swf +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/BanManager/icon.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/BlueBoxMonitor/BlueBoxMonitor.swf +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/BlueBoxMonitor/icon.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/Dashboard/Dashboard.swf +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/Dashboard/icon.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/LicenseManager/LicenseManager.swf +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/LicenseManager/icon.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/LogViewer/LogViewer.swf +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/LogViewer/icon.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/RuntimeStatistics/RuntimeStatistics.swf +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/RuntimeStatistics/icon.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/ServerConfigurator/ServerConfigurator.swf +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/ServerConfigurator/icon.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/ZoneConfigurator/ZoneConfigurator.swf +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/ZoneConfigurator/icon.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/ZoneMonitor/ZoneMonitor.swf +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/ZoneMonitor/icon.png +0 -0
- data/lib/rubyfox/server/data/www/root/admin/modules/config.xml +12 -0
- data/lib/rubyfox/server/data/www/root/admin/playerProductInstall.swf +0 -0
- data/lib/rubyfox/server/data/www/root/admin/swfobject.js +777 -0
- data/lib/rubyfox/server/data/www/root/crossdomain.xml +6 -0
- data/lib/rubyfox/server/data/www/root/examples/.keep +0 -0
- data/lib/rubyfox/server/data/www/root/examples/index.html +43 -0
- data/lib/rubyfox/server/data/www/root/index.html +63 -0
- data/lib/rubyfox/server/data/zones/.keep +0 -0
- data/lib/rubyfox/server/environment.rb +31 -0
- data/lib/rubyfox/server/version.rb +5 -0
- data/lib/rubyfox/server.rb +9 -0
- data/rubyfox-server.gemspec +22 -0
- metadata +1076 -0
|
@@ -0,0 +1,762 @@
|
|
|
1
|
+
from __future__ import generators
|
|
2
|
+
# Python test set -- part 6, built-in types
|
|
3
|
+
|
|
4
|
+
from test.test_support import *
|
|
5
|
+
|
|
6
|
+
print '6. Built-in types'
|
|
7
|
+
|
|
8
|
+
print '6.1 Truth value testing'
|
|
9
|
+
if None: raise TestFailed, 'None is true instead of false'
|
|
10
|
+
if 0: raise TestFailed, '0 is true instead of false'
|
|
11
|
+
if 0L: raise TestFailed, '0L is true instead of false'
|
|
12
|
+
if 0.0: raise TestFailed, '0.0 is true instead of false'
|
|
13
|
+
if '': raise TestFailed, '\'\' is true instead of false'
|
|
14
|
+
if (): raise TestFailed, '() is true instead of false'
|
|
15
|
+
if []: raise TestFailed, '[] is true instead of false'
|
|
16
|
+
if {}: raise TestFailed, '{} is true instead of false'
|
|
17
|
+
if not 1: raise TestFailed, '1 is false instead of true'
|
|
18
|
+
if not 1L: raise TestFailed, '1L is false instead of true'
|
|
19
|
+
if not 1.0: raise TestFailed, '1.0 is false instead of true'
|
|
20
|
+
if not 'x': raise TestFailed, '\'x\' is false instead of true'
|
|
21
|
+
if not (1, 1): raise TestFailed, '(1, 1) is false instead of true'
|
|
22
|
+
if not [1]: raise TestFailed, '[1] is false instead of true'
|
|
23
|
+
if not {'x': 1}: raise TestFailed, '{\'x\': 1} is false instead of true'
|
|
24
|
+
def f(): pass
|
|
25
|
+
class C: pass
|
|
26
|
+
import sys
|
|
27
|
+
x = C()
|
|
28
|
+
if not f: raise TestFailed, 'f is false instead of true'
|
|
29
|
+
if not C: raise TestFailed, 'C is false instead of true'
|
|
30
|
+
if not sys: raise TestFailed, 'sys is false instead of true'
|
|
31
|
+
if not x: raise TestFailed, 'x is false instead of true'
|
|
32
|
+
|
|
33
|
+
print '6.2 Boolean operations'
|
|
34
|
+
if 0 or 0: raise TestFailed, '0 or 0 is true instead of false'
|
|
35
|
+
if 1 and 1: pass
|
|
36
|
+
else: raise TestFailed, '1 and 1 is false instead of true'
|
|
37
|
+
if not 1: raise TestFailed, 'not 1 is true instead of false'
|
|
38
|
+
|
|
39
|
+
print '6.3 Comparisons'
|
|
40
|
+
if 0 < 1 <= 1 == 1 >= 1 > 0 != 1: pass
|
|
41
|
+
else: raise TestFailed, 'int comparisons failed'
|
|
42
|
+
if 0L < 1L <= 1L == 1L >= 1L > 0L != 1L: pass
|
|
43
|
+
else: raise TestFailed, 'long int comparisons failed'
|
|
44
|
+
if 0.0 < 1.0 <= 1.0 == 1.0 >= 1.0 > 0.0 != 1.0: pass
|
|
45
|
+
else: raise TestFailed, 'float comparisons failed'
|
|
46
|
+
if '' < 'a' <= 'a' == 'a' < 'abc' < 'abd' < 'b': pass
|
|
47
|
+
else: raise TestFailed, 'string comparisons failed'
|
|
48
|
+
if 0 in [0] and 0 not in [1]: pass
|
|
49
|
+
else: raise TestFailed, 'membership test failed'
|
|
50
|
+
if None is None and [] is not []: pass
|
|
51
|
+
else: raise TestFailed, 'identity test failed'
|
|
52
|
+
|
|
53
|
+
try: float('')
|
|
54
|
+
except ValueError: pass
|
|
55
|
+
else: raise TestFailed, "float('') didn't raise ValueError"
|
|
56
|
+
|
|
57
|
+
try: float('5\0')
|
|
58
|
+
except ValueError: pass
|
|
59
|
+
else: raise TestFailed, "float('5\0') didn't raise ValueError"
|
|
60
|
+
|
|
61
|
+
try: 5.0 / 0.0
|
|
62
|
+
except ZeroDivisionError: pass
|
|
63
|
+
else: raise TestFailed, "5.0 / 0.0 didn't raise ZeroDivisionError"
|
|
64
|
+
|
|
65
|
+
try: 5.0 // 0.0
|
|
66
|
+
except ZeroDivisionError: pass
|
|
67
|
+
else: raise TestFailed, "5.0 // 0.0 didn't raise ZeroDivisionError"
|
|
68
|
+
|
|
69
|
+
try: 5.0 % 0.0
|
|
70
|
+
except ZeroDivisionError: pass
|
|
71
|
+
else: raise TestFailed, "5.0 % 0.0 didn't raise ZeroDivisionError"
|
|
72
|
+
|
|
73
|
+
try: 5 / 0L
|
|
74
|
+
except ZeroDivisionError: pass
|
|
75
|
+
else: raise TestFailed, "5 / 0L didn't raise ZeroDivisionError"
|
|
76
|
+
|
|
77
|
+
try: 5 // 0L
|
|
78
|
+
except ZeroDivisionError: pass
|
|
79
|
+
else: raise TestFailed, "5 // 0L didn't raise ZeroDivisionError"
|
|
80
|
+
|
|
81
|
+
try: 5 % 0L
|
|
82
|
+
except ZeroDivisionError: pass
|
|
83
|
+
else: raise TestFailed, "5 % 0L didn't raise ZeroDivisionError"
|
|
84
|
+
|
|
85
|
+
print '6.4 Numeric types (mostly conversions)'
|
|
86
|
+
if 0 != 0L or 0 != 0.0 or 0L != 0.0: raise TestFailed, 'mixed comparisons'
|
|
87
|
+
if 1 != 1L or 1 != 1.0 or 1L != 1.0: raise TestFailed, 'mixed comparisons'
|
|
88
|
+
if -1 != -1L or -1 != -1.0 or -1L != -1.0:
|
|
89
|
+
raise TestFailed, 'int/long/float value not equal'
|
|
90
|
+
# calling built-in types without argument must return 0
|
|
91
|
+
if int() != 0: raise TestFailed, 'int() does not return 0'
|
|
92
|
+
if long() != 0L: raise TestFailed, 'long() does not return 0L'
|
|
93
|
+
if float() != 0.0: raise TestFailed, 'float() does not return 0.0'
|
|
94
|
+
if int(1.9) == 1 == int(1.1) and int(-1.1) == -1 == int(-1.9): pass
|
|
95
|
+
else: raise TestFailed, 'int() does not round properly'
|
|
96
|
+
if long(1.9) == 1L == long(1.1) and long(-1.1) == -1L == long(-1.9): pass
|
|
97
|
+
else: raise TestFailed, 'long() does not round properly'
|
|
98
|
+
if float(1) == 1.0 and float(-1) == -1.0 and float(0) == 0.0: pass
|
|
99
|
+
else: raise TestFailed, 'float() does not work properly'
|
|
100
|
+
print '6.4.1 32-bit integers'
|
|
101
|
+
if 12 + 24 != 36: raise TestFailed, 'int op'
|
|
102
|
+
if 12 + (-24) != -12: raise TestFailed, 'int op'
|
|
103
|
+
if (-12) + 24 != 12: raise TestFailed, 'int op'
|
|
104
|
+
if (-12) + (-24) != -36: raise TestFailed, 'int op'
|
|
105
|
+
if not 12 < 24: raise TestFailed, 'int op'
|
|
106
|
+
if not -24 < -12: raise TestFailed, 'int op'
|
|
107
|
+
# Test for a particular bug in integer multiply
|
|
108
|
+
xsize, ysize, zsize = 238, 356, 4
|
|
109
|
+
if not (xsize*ysize*zsize == zsize*xsize*ysize == 338912):
|
|
110
|
+
raise TestFailed, 'int mul commutativity'
|
|
111
|
+
# And another.
|
|
112
|
+
m = -sys.maxint - 1
|
|
113
|
+
for divisor in 1, 2, 4, 8, 16, 32:
|
|
114
|
+
j = m // divisor
|
|
115
|
+
prod = divisor * j
|
|
116
|
+
if prod != m:
|
|
117
|
+
raise TestFailed, "%r * %r == %r != %r" % (divisor, j, prod, m)
|
|
118
|
+
if type(prod) is not int:
|
|
119
|
+
raise TestFailed, ("expected type(prod) to be int, not %r" %
|
|
120
|
+
type(prod))
|
|
121
|
+
# Check for expected * overflow to long.
|
|
122
|
+
for divisor in 1, 2, 4, 8, 16, 32:
|
|
123
|
+
j = m // divisor - 1
|
|
124
|
+
prod = divisor * j
|
|
125
|
+
if type(prod) is not long:
|
|
126
|
+
raise TestFailed, ("expected type(%r) to be long, not %r" %
|
|
127
|
+
(prod, type(prod)))
|
|
128
|
+
# Check for expected * overflow to long.
|
|
129
|
+
m = sys.maxint
|
|
130
|
+
for divisor in 1, 2, 4, 8, 16, 32:
|
|
131
|
+
j = m // divisor + 1
|
|
132
|
+
prod = divisor * j
|
|
133
|
+
if type(prod) is not long:
|
|
134
|
+
raise TestFailed, ("expected type(%r) to be long, not %r" %
|
|
135
|
+
(prod, type(prod)))
|
|
136
|
+
|
|
137
|
+
print '6.4.2 Long integers'
|
|
138
|
+
if 12L + 24L != 36L: raise TestFailed, 'long op'
|
|
139
|
+
if 12L + (-24L) != -12L: raise TestFailed, 'long op'
|
|
140
|
+
if (-12L) + 24L != 12L: raise TestFailed, 'long op'
|
|
141
|
+
if (-12L) + (-24L) != -36L: raise TestFailed, 'long op'
|
|
142
|
+
if not 12L < 24L: raise TestFailed, 'long op'
|
|
143
|
+
if not -24L < -12L: raise TestFailed, 'long op'
|
|
144
|
+
x = sys.maxint
|
|
145
|
+
if int(long(x)) != x: raise TestFailed, 'long op'
|
|
146
|
+
try: y = int(long(x)+1L)
|
|
147
|
+
except OverflowError: raise TestFailed, 'long op'
|
|
148
|
+
if not isinstance(y, long): raise TestFailed, 'long op'
|
|
149
|
+
x = -x
|
|
150
|
+
if int(long(x)) != x: raise TestFailed, 'long op'
|
|
151
|
+
x = x-1
|
|
152
|
+
if int(long(x)) != x: raise TestFailed, 'long op'
|
|
153
|
+
try: y = int(long(x)-1L)
|
|
154
|
+
except OverflowError: raise TestFailed, 'long op'
|
|
155
|
+
if not isinstance(y, long): raise TestFailed, 'long op'
|
|
156
|
+
|
|
157
|
+
try: 5 << -5
|
|
158
|
+
except ValueError: pass
|
|
159
|
+
else: raise TestFailed, 'int negative shift <<'
|
|
160
|
+
|
|
161
|
+
try: 5L << -5L
|
|
162
|
+
except ValueError: pass
|
|
163
|
+
else: raise TestFailed, 'long negative shift <<'
|
|
164
|
+
|
|
165
|
+
try: 5 >> -5
|
|
166
|
+
except ValueError: pass
|
|
167
|
+
else: raise TestFailed, 'int negative shift >>'
|
|
168
|
+
|
|
169
|
+
try: 5L >> -5L
|
|
170
|
+
except ValueError: pass
|
|
171
|
+
else: raise TestFailed, 'long negative shift >>'
|
|
172
|
+
|
|
173
|
+
print '6.4.3 Floating point numbers'
|
|
174
|
+
if 12.0 + 24.0 != 36.0: raise TestFailed, 'float op'
|
|
175
|
+
if 12.0 + (-24.0) != -12.0: raise TestFailed, 'float op'
|
|
176
|
+
if (-12.0) + 24.0 != 12.0: raise TestFailed, 'float op'
|
|
177
|
+
if (-12.0) + (-24.0) != -36.0: raise TestFailed, 'float op'
|
|
178
|
+
if not 12.0 < 24.0: raise TestFailed, 'float op'
|
|
179
|
+
if not -24.0 < -12.0: raise TestFailed, 'float op'
|
|
180
|
+
|
|
181
|
+
print '6.5 Sequence types'
|
|
182
|
+
|
|
183
|
+
print '6.5.1 Strings'
|
|
184
|
+
if len('') != 0: raise TestFailed, 'len(\'\')'
|
|
185
|
+
if len('a') != 1: raise TestFailed, 'len(\'a\')'
|
|
186
|
+
if len('abcdef') != 6: raise TestFailed, 'len(\'abcdef\')'
|
|
187
|
+
if 'xyz' + 'abcde' != 'xyzabcde': raise TestFailed, 'string concatenation'
|
|
188
|
+
if 'xyz'*3 != 'xyzxyzxyz': raise TestFailed, 'string repetition *3'
|
|
189
|
+
if 0*'abcde' != '': raise TestFailed, 'string repetition 0*'
|
|
190
|
+
if min('abc') != 'a' or max('abc') != 'c': raise TestFailed, 'min/max string'
|
|
191
|
+
if 'a' in 'abc' and 'b' in 'abc' and 'c' in 'abc' and 'd' not in 'abc': pass
|
|
192
|
+
else: raise TestFailed, 'in/not in string'
|
|
193
|
+
x = 'x'*103
|
|
194
|
+
if '%s!'%x != x+'!': raise TestFailed, 'nasty string formatting bug'
|
|
195
|
+
|
|
196
|
+
#extended slices for strings
|
|
197
|
+
a = '0123456789'
|
|
198
|
+
vereq(a[::], a)
|
|
199
|
+
vereq(a[::2], '02468')
|
|
200
|
+
vereq(a[1::2], '13579')
|
|
201
|
+
vereq(a[::-1],'9876543210')
|
|
202
|
+
vereq(a[::-2], '97531')
|
|
203
|
+
vereq(a[3::-2], '31')
|
|
204
|
+
vereq(a[-100:100:], a)
|
|
205
|
+
vereq(a[100:-100:-1], a[::-1])
|
|
206
|
+
vereq(a[-100L:100L:2L], '02468')
|
|
207
|
+
|
|
208
|
+
if have_unicode:
|
|
209
|
+
a = unicode('0123456789', 'ascii')
|
|
210
|
+
vereq(a[::], a)
|
|
211
|
+
vereq(a[::2], unicode('02468', 'ascii'))
|
|
212
|
+
vereq(a[1::2], unicode('13579', 'ascii'))
|
|
213
|
+
vereq(a[::-1], unicode('9876543210', 'ascii'))
|
|
214
|
+
vereq(a[::-2], unicode('97531', 'ascii'))
|
|
215
|
+
vereq(a[3::-2], unicode('31', 'ascii'))
|
|
216
|
+
vereq(a[-100:100:], a)
|
|
217
|
+
vereq(a[100:-100:-1], a[::-1])
|
|
218
|
+
vereq(a[-100L:100L:2L], unicode('02468', 'ascii'))
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
print '6.5.2 Tuples'
|
|
222
|
+
# calling built-in types without argument must return empty
|
|
223
|
+
if tuple() != (): raise TestFailed,'tuple() does not return ()'
|
|
224
|
+
if len(()) != 0: raise TestFailed, 'len(())'
|
|
225
|
+
if len((1,)) != 1: raise TestFailed, 'len((1,))'
|
|
226
|
+
if len((1,2,3,4,5,6)) != 6: raise TestFailed, 'len((1,2,3,4,5,6))'
|
|
227
|
+
if (1,2)+(3,4) != (1,2,3,4): raise TestFailed, 'tuple concatenation'
|
|
228
|
+
if (1,2)*3 != (1,2,1,2,1,2): raise TestFailed, 'tuple repetition *3'
|
|
229
|
+
if 0*(1,2,3) != (): raise TestFailed, 'tuple repetition 0*'
|
|
230
|
+
if min((1,2)) != 1 or max((1,2)) != 2: raise TestFailed, 'min/max tuple'
|
|
231
|
+
if 0 in (0,1,2) and 1 in (0,1,2) and 2 in (0,1,2) and 3 not in (0,1,2): pass
|
|
232
|
+
else: raise TestFailed, 'in/not in tuple'
|
|
233
|
+
try: ()[0]
|
|
234
|
+
except IndexError: pass
|
|
235
|
+
else: raise TestFailed, "tuple index error didn't raise IndexError"
|
|
236
|
+
x = ()
|
|
237
|
+
x += ()
|
|
238
|
+
if x != (): raise TestFailed, 'tuple inplace add from () to () failed'
|
|
239
|
+
x += (1,)
|
|
240
|
+
if x != (1,): raise TestFailed, 'tuple resize from () failed'
|
|
241
|
+
|
|
242
|
+
# extended slicing - subscript only for tuples
|
|
243
|
+
a = (0,1,2,3,4)
|
|
244
|
+
vereq(a[::], a)
|
|
245
|
+
vereq(a[::2], (0,2,4))
|
|
246
|
+
vereq(a[1::2], (1,3))
|
|
247
|
+
vereq(a[::-1], (4,3,2,1,0))
|
|
248
|
+
vereq(a[::-2], (4,2,0))
|
|
249
|
+
vereq(a[3::-2], (3,1))
|
|
250
|
+
vereq(a[-100:100:], a)
|
|
251
|
+
vereq(a[100:-100:-1], a[::-1])
|
|
252
|
+
vereq(a[-100L:100L:2L], (0,2,4))
|
|
253
|
+
|
|
254
|
+
# Check that a specific bug in _PyTuple_Resize() is squashed.
|
|
255
|
+
def f():
|
|
256
|
+
for i in range(1000):
|
|
257
|
+
yield i
|
|
258
|
+
vereq(list(tuple(f())), range(1000))
|
|
259
|
+
|
|
260
|
+
# Verify that __getitem__ overrides are not recognized by __iter__
|
|
261
|
+
# XXX: this is a problem
|
|
262
|
+
#class T(tuple):
|
|
263
|
+
# def __getitem__(self, key):
|
|
264
|
+
# return str(key) + '!!!'
|
|
265
|
+
#vereq(iter(T((1,2))).next(), 1)
|
|
266
|
+
|
|
267
|
+
print '6.5.3 Lists'
|
|
268
|
+
# calling built-in types without argument must return empty
|
|
269
|
+
if list() != []: raise TestFailed,'list() does not return []'
|
|
270
|
+
if len([]) != 0: raise TestFailed, 'len([])'
|
|
271
|
+
if len([1,]) != 1: raise TestFailed, 'len([1,])'
|
|
272
|
+
if len([1,2,3,4,5,6]) != 6: raise TestFailed, 'len([1,2,3,4,5,6])'
|
|
273
|
+
if [1,2]+[3,4] != [1,2,3,4]: raise TestFailed, 'list concatenation'
|
|
274
|
+
if [1,2]*3 != [1,2,1,2,1,2]: raise TestFailed, 'list repetition *3'
|
|
275
|
+
if [1,2]*3L != [1,2,1,2,1,2]: raise TestFailed, 'list repetition *3L'
|
|
276
|
+
if 0*[1,2,3] != []: raise TestFailed, 'list repetition 0*'
|
|
277
|
+
if 0L*[1,2,3] != []: raise TestFailed, 'list repetition 0L*'
|
|
278
|
+
if min([1,2]) != 1 or max([1,2]) != 2: raise TestFailed, 'min/max list'
|
|
279
|
+
if 0 in [0,1,2] and 1 in [0,1,2] and 2 in [0,1,2] and 3 not in [0,1,2]: pass
|
|
280
|
+
else: raise TestFailed, 'in/not in list'
|
|
281
|
+
a = [1, 2, 3, 4, 5]
|
|
282
|
+
a[:-1] = a
|
|
283
|
+
if a != [1, 2, 3, 4, 5, 5]:
|
|
284
|
+
raise TestFailed, "list self-slice-assign (head)"
|
|
285
|
+
a = [1, 2, 3, 4, 5]
|
|
286
|
+
a[1:] = a
|
|
287
|
+
if a != [1, 1, 2, 3, 4, 5]:
|
|
288
|
+
raise TestFailed, "list self-slice-assign (tail)"
|
|
289
|
+
a = [1, 2, 3, 4, 5]
|
|
290
|
+
a[1:-1] = a
|
|
291
|
+
if a != [1, 1, 2, 3, 4, 5, 5]:
|
|
292
|
+
raise TestFailed, "list self-slice-assign (center)"
|
|
293
|
+
try: [][0]
|
|
294
|
+
except IndexError: pass
|
|
295
|
+
else: raise TestFailed, "list index error didn't raise IndexError"
|
|
296
|
+
try: [][0] = 5
|
|
297
|
+
except IndexError: pass
|
|
298
|
+
else: raise TestFailed, "list assignment index error didn't raise IndexError"
|
|
299
|
+
try: [].pop()
|
|
300
|
+
except IndexError: pass
|
|
301
|
+
else: raise TestFailed, "empty list.pop() didn't raise IndexError"
|
|
302
|
+
try: [1].pop(5)
|
|
303
|
+
except IndexError: pass
|
|
304
|
+
else: raise TestFailed, "[1].pop(5) didn't raise IndexError"
|
|
305
|
+
|
|
306
|
+
try: [][0:1] = 5
|
|
307
|
+
except TypeError: pass
|
|
308
|
+
else: raise TestFailed, "bad list slice assignment didn't raise TypeError"
|
|
309
|
+
try: [].extend(None)
|
|
310
|
+
except TypeError: pass
|
|
311
|
+
else: raise TestFailed, "list.extend(None) didn't raise TypeError"
|
|
312
|
+
a = [1, 2, 3, 4]
|
|
313
|
+
a *= 0
|
|
314
|
+
if a != []:
|
|
315
|
+
raise TestFailed, "list inplace repeat"
|
|
316
|
+
|
|
317
|
+
a = []
|
|
318
|
+
a[:] = tuple(range(10))
|
|
319
|
+
if a != range(10):
|
|
320
|
+
raise TestFailed, "assigning tuple to slice"
|
|
321
|
+
|
|
322
|
+
print '6.5.3a Additional list operations'
|
|
323
|
+
a = [0,1,2,3,4]
|
|
324
|
+
a[0L] = 1
|
|
325
|
+
a[1L] = 2
|
|
326
|
+
a[2L] = 3
|
|
327
|
+
if a != [1,2,3,3,4]: raise TestFailed, 'list item assignment [0L], [1L], [2L]'
|
|
328
|
+
a[0] = 5
|
|
329
|
+
a[1] = 6
|
|
330
|
+
a[2] = 7
|
|
331
|
+
if a != [5,6,7,3,4]: raise TestFailed, 'list item assignment [0], [1], [2]'
|
|
332
|
+
a[-2L] = 88
|
|
333
|
+
a[-1L] = 99
|
|
334
|
+
if a != [5,6,7,88,99]: raise TestFailed, 'list item assignment [-2L], [-1L]'
|
|
335
|
+
a[-2] = 8
|
|
336
|
+
a[-1] = 9
|
|
337
|
+
if a != [5,6,7,8,9]: raise TestFailed, 'list item assignment [-2], [-1]'
|
|
338
|
+
a[:2] = [0,4]
|
|
339
|
+
a[-3:] = []
|
|
340
|
+
a[1:1] = [1,2,3]
|
|
341
|
+
if a != [0,1,2,3,4]: raise TestFailed, 'list slice assignment'
|
|
342
|
+
a[ 1L : 4L] = [7,8,9]
|
|
343
|
+
if a != [0,7,8,9,4]: raise TestFailed, 'list slice assignment using long ints'
|
|
344
|
+
del a[1:4]
|
|
345
|
+
if a != [0,4]: raise TestFailed, 'list slice deletion'
|
|
346
|
+
del a[0]
|
|
347
|
+
if a != [4]: raise TestFailed, 'list item deletion [0]'
|
|
348
|
+
del a[-1]
|
|
349
|
+
if a != []: raise TestFailed, 'list item deletion [-1]'
|
|
350
|
+
a=range(0,5)
|
|
351
|
+
del a[1L:4L]
|
|
352
|
+
if a != [0,4]: raise TestFailed, 'list slice deletion'
|
|
353
|
+
del a[0L]
|
|
354
|
+
if a != [4]: raise TestFailed, 'list item deletion [0]'
|
|
355
|
+
del a[-1L]
|
|
356
|
+
if a != []: raise TestFailed, 'list item deletion [-1]'
|
|
357
|
+
a.append(0)
|
|
358
|
+
a.append(1)
|
|
359
|
+
a.append(2)
|
|
360
|
+
if a != [0,1,2]: raise TestFailed, 'list append'
|
|
361
|
+
a.insert(0, -2)
|
|
362
|
+
a.insert(1, -1)
|
|
363
|
+
a.insert(2,0)
|
|
364
|
+
if a != [-2,-1,0,0,1,2]: raise TestFailed, 'list insert'
|
|
365
|
+
b = a[:]
|
|
366
|
+
b.insert(-2, "foo")
|
|
367
|
+
b.insert(-200, "left")
|
|
368
|
+
b.insert(200, "right")
|
|
369
|
+
if b != ["left",-2,-1,0,0,"foo",1,2,"right"]: raise TestFailed, 'list insert2'
|
|
370
|
+
# a = [-2,-1,0,0,1,2]
|
|
371
|
+
if a.count(0) != 2: raise TestFailed, ' list count'
|
|
372
|
+
if a.index(0) != 2: raise TestFailed, 'list index'
|
|
373
|
+
|
|
374
|
+
if a.index(0,2) != 2: raise TestFailed, 'list index, start argument'
|
|
375
|
+
if a.index(0,-4) != 2: raise TestFailed, 'list index, -start argument'
|
|
376
|
+
if a.index(-2,-10) != 0: raise TestFailed, 'list index, very -start argument'
|
|
377
|
+
if a.index(0,3) != 3: raise TestFailed, 'list index, start argument'
|
|
378
|
+
if a.index(0,-3) != 3: raise TestFailed, 'list index, -start argument'
|
|
379
|
+
if a.index(0,3,4) != 3: raise TestFailed, 'list index, stop argument'
|
|
380
|
+
if a.index(0,-3,-2) != 3: raise TestFailed, 'list index, -stop argument'
|
|
381
|
+
#XXX index with Long not working yet.
|
|
382
|
+
#if a.index(0,-4*sys.maxint,4*sys.maxint) != 2:
|
|
383
|
+
# raise TestFailed, 'list index, -maxint, maxint argument'
|
|
384
|
+
#try:
|
|
385
|
+
# a.index(0, 4*sys.maxint,-4*sys.maxint)
|
|
386
|
+
#except ValueError:
|
|
387
|
+
# pass
|
|
388
|
+
#else:
|
|
389
|
+
# raise TestFailed, 'list index, maxint,-maxint argument'
|
|
390
|
+
|
|
391
|
+
try:
|
|
392
|
+
a.index(2,0,-10)
|
|
393
|
+
except ValueError:
|
|
394
|
+
pass
|
|
395
|
+
else:
|
|
396
|
+
raise TestFailed, 'list index, very -stop argument'
|
|
397
|
+
a.remove(0)
|
|
398
|
+
try:
|
|
399
|
+
a.index(2,0,4)
|
|
400
|
+
except ValueError:
|
|
401
|
+
pass
|
|
402
|
+
else:
|
|
403
|
+
raise TestFailed, 'list index, stop argument.'
|
|
404
|
+
if a != [-2,-1,0,1,2]: raise TestFailed, 'list remove'
|
|
405
|
+
a.reverse()
|
|
406
|
+
if a != [2,1,0,-1,-2]: raise TestFailed, 'list reverse'
|
|
407
|
+
a.sort()
|
|
408
|
+
if a != [-2,-1,0,1,2]: raise TestFailed, 'list sort'
|
|
409
|
+
def revcmp(a, b): return cmp(b, a)
|
|
410
|
+
a.sort(revcmp)
|
|
411
|
+
if a != [2,1,0,-1,-2]: raise TestFailed, 'list sort with cmp func'
|
|
412
|
+
# The following dumps core in unpatched Python 1.5:
|
|
413
|
+
def myComparison(x,y):
|
|
414
|
+
return cmp(x%3, y%7)
|
|
415
|
+
z = range(12)
|
|
416
|
+
z.sort(myComparison)
|
|
417
|
+
|
|
418
|
+
try: z.sort(2)
|
|
419
|
+
except TypeError: pass
|
|
420
|
+
else: raise TestFailed, 'list sort compare function is not callable'
|
|
421
|
+
|
|
422
|
+
#XXX need a strategy for locking list during sort.
|
|
423
|
+
#def selfmodifyingComparison(x,y):
|
|
424
|
+
# z.append(1)
|
|
425
|
+
# return cmp(x, y)
|
|
426
|
+
#try: z.sort(selfmodifyingComparison)
|
|
427
|
+
#except ValueError: pass
|
|
428
|
+
#else: raise TestFailed, 'modifying list during sort'
|
|
429
|
+
|
|
430
|
+
try: z.sort(lambda x, y: 's')
|
|
431
|
+
except TypeError: pass
|
|
432
|
+
else: raise TestFailed, 'list sort compare function does not return int'
|
|
433
|
+
|
|
434
|
+
# Test extreme cases with long ints
|
|
435
|
+
a = [0,1,2,3,4]
|
|
436
|
+
if a[ -pow(2,128L): 3 ] != [0,1,2]:
|
|
437
|
+
raise TestFailed, "list slicing with too-small long integer"
|
|
438
|
+
if a[ 3: pow(2,145L) ] != [3,4]:
|
|
439
|
+
raise TestFailed, "list slicing with too-large long integer"
|
|
440
|
+
|
|
441
|
+
|
|
442
|
+
# extended slicing
|
|
443
|
+
|
|
444
|
+
# subscript
|
|
445
|
+
a = [0,1,2,3,4]
|
|
446
|
+
vereq(a[::], a)
|
|
447
|
+
vereq(a[::2], [0,2,4])
|
|
448
|
+
vereq(a[1::2], [1,3])
|
|
449
|
+
vereq(a[::-1], [4,3,2,1,0])
|
|
450
|
+
vereq(a[::-2], [4,2,0])
|
|
451
|
+
vereq(a[3::-2], [3,1])
|
|
452
|
+
vereq(a[-100:100:], a)
|
|
453
|
+
vereq(a[100:-100:-1], a[::-1])
|
|
454
|
+
vereq(a[-100L:100L:2L], [0,2,4])
|
|
455
|
+
vereq(a[1000:2000:2], [])
|
|
456
|
+
vereq(a[-1000:-2000:-2], [])
|
|
457
|
+
# deletion
|
|
458
|
+
del a[::2]
|
|
459
|
+
vereq(a, [1,3])
|
|
460
|
+
a = range(5)
|
|
461
|
+
del a[1::2]
|
|
462
|
+
vereq(a, [0,2,4])
|
|
463
|
+
a = range(5)
|
|
464
|
+
del a[1::-2]
|
|
465
|
+
vereq(a, [0,2,3,4])
|
|
466
|
+
a = range(10)
|
|
467
|
+
del a[::1000]
|
|
468
|
+
vereq(a, [1, 2, 3, 4, 5, 6, 7, 8, 9])
|
|
469
|
+
# assignment
|
|
470
|
+
a = range(10)
|
|
471
|
+
a[::2] = [-1]*5
|
|
472
|
+
vereq(a, [-1, 1, -1, 3, -1, 5, -1, 7, -1, 9])
|
|
473
|
+
a = range(10)
|
|
474
|
+
a[::-4] = [10]*3
|
|
475
|
+
vereq(a, [0, 10, 2, 3, 4, 10, 6, 7, 8 ,10])
|
|
476
|
+
a = range(4)
|
|
477
|
+
a[::-1] = a
|
|
478
|
+
vereq(a, [3, 2, 1, 0])
|
|
479
|
+
a = range(10)
|
|
480
|
+
b = a[:]
|
|
481
|
+
c = a[:]
|
|
482
|
+
a[2:3] = ["two", "elements"]
|
|
483
|
+
b[slice(2,3)] = ["two", "elements"]
|
|
484
|
+
c[2:3:] = ["two", "elements"]
|
|
485
|
+
vereq(a, b)
|
|
486
|
+
vereq(a, c)
|
|
487
|
+
a = range(10)
|
|
488
|
+
a[::2] = tuple(range(5))
|
|
489
|
+
vereq(a, [0, 1, 1, 3, 2, 5, 3, 7, 4, 9])
|
|
490
|
+
|
|
491
|
+
# Verify that __getitem__ overrides are not recognized by __iter__
|
|
492
|
+
class L(list):
|
|
493
|
+
def __getitem__(self, key):
|
|
494
|
+
return str(key) + '!!!'
|
|
495
|
+
vereq(iter(L([1,2])).next(), 1)
|
|
496
|
+
|
|
497
|
+
|
|
498
|
+
print '6.6 Mappings == Dictionaries'
|
|
499
|
+
# calling built-in types without argument must return empty
|
|
500
|
+
if dict() != {}: raise TestFailed,'dict() does not return {}'
|
|
501
|
+
d = {}
|
|
502
|
+
if d.keys() != []: raise TestFailed, '{}.keys()'
|
|
503
|
+
if d.values() != []: raise TestFailed, '{}.values()'
|
|
504
|
+
if d.items() != []: raise TestFailed, '{}.items()'
|
|
505
|
+
if d.has_key('a') != 0: raise TestFailed, '{}.has_key(\'a\')'
|
|
506
|
+
if ('a' in d) != 0: raise TestFailed, "'a' in {}"
|
|
507
|
+
if ('a' not in d) != 1: raise TestFailed, "'a' not in {}"
|
|
508
|
+
if len(d) != 0: raise TestFailed, 'len({})'
|
|
509
|
+
d = {'a': 1, 'b': 2}
|
|
510
|
+
if len(d) != 2: raise TestFailed, 'len(dict)'
|
|
511
|
+
k = d.keys()
|
|
512
|
+
k.sort()
|
|
513
|
+
if k != ['a', 'b']: raise TestFailed, 'dict keys()'
|
|
514
|
+
if d.has_key('a') and d.has_key('b') and not d.has_key('c'): pass
|
|
515
|
+
else: raise TestFailed, 'dict keys()'
|
|
516
|
+
if 'a' in d and 'b' in d and 'c' not in d: pass
|
|
517
|
+
else: raise TestFailed, 'dict keys() # in/not in version'
|
|
518
|
+
if d['a'] != 1 or d['b'] != 2: raise TestFailed, 'dict item'
|
|
519
|
+
d['c'] = 3
|
|
520
|
+
d['a'] = 4
|
|
521
|
+
if d['c'] != 3 or d['a'] != 4: raise TestFailed, 'dict item assignment'
|
|
522
|
+
del d['b']
|
|
523
|
+
if d != {'a': 4, 'c': 3}: raise TestFailed, 'dict item deletion'
|
|
524
|
+
# dict.clear()
|
|
525
|
+
d = {1:1, 2:2, 3:3}
|
|
526
|
+
d.clear()
|
|
527
|
+
if d != {}: raise TestFailed, 'dict clear'
|
|
528
|
+
# dict.update()
|
|
529
|
+
d.update({1:100})
|
|
530
|
+
d.update({2:20})
|
|
531
|
+
d.update({1:1, 2:2, 3:3})
|
|
532
|
+
if d != {1:1, 2:2, 3:3}: raise TestFailed, 'dict update'
|
|
533
|
+
d.clear()
|
|
534
|
+
try: d.update(None)
|
|
535
|
+
except AttributeError: pass
|
|
536
|
+
else: raise TestFailed, 'dict.update(None), AttributeError expected'
|
|
537
|
+
class SimpleUserDict:
|
|
538
|
+
def __init__(self):
|
|
539
|
+
self.d = {1:1, 2:2, 3:3}
|
|
540
|
+
def keys(self):
|
|
541
|
+
return self.d.keys()
|
|
542
|
+
def __getitem__(self, i):
|
|
543
|
+
return self.d[i]
|
|
544
|
+
d.update(SimpleUserDict())
|
|
545
|
+
if d != {1:1, 2:2, 3:3}: raise TestFailed, 'dict.update(instance)'
|
|
546
|
+
d.clear()
|
|
547
|
+
class FailingUserDict:
|
|
548
|
+
def keys(self):
|
|
549
|
+
raise ValueError
|
|
550
|
+
try: d.update(FailingUserDict())
|
|
551
|
+
except ValueError: pass
|
|
552
|
+
else: raise TestFailed, 'dict.keys() expected ValueError'
|
|
553
|
+
class FailingUserDict:
|
|
554
|
+
def keys(self):
|
|
555
|
+
class BogonIter:
|
|
556
|
+
def __iter__(self):
|
|
557
|
+
raise ValueError
|
|
558
|
+
return BogonIter()
|
|
559
|
+
try: d.update(FailingUserDict())
|
|
560
|
+
except ValueError: pass
|
|
561
|
+
else: raise TestFailed, 'iter(dict.keys()) expected ValueError'
|
|
562
|
+
class FailingUserDict:
|
|
563
|
+
def keys(self):
|
|
564
|
+
class BogonIter:
|
|
565
|
+
def __init__(self):
|
|
566
|
+
self.i = 1
|
|
567
|
+
def __iter__(self):
|
|
568
|
+
return self
|
|
569
|
+
def next(self):
|
|
570
|
+
if self.i:
|
|
571
|
+
self.i = 0
|
|
572
|
+
return 'a'
|
|
573
|
+
raise ValueError
|
|
574
|
+
return BogonIter()
|
|
575
|
+
def __getitem__(self, key):
|
|
576
|
+
return key
|
|
577
|
+
try: d.update(FailingUserDict())
|
|
578
|
+
except ValueError: pass
|
|
579
|
+
else: raise TestFailed, 'iter(dict.keys()).next() expected ValueError'
|
|
580
|
+
class FailingUserDict:
|
|
581
|
+
def keys(self):
|
|
582
|
+
class BogonIter:
|
|
583
|
+
def __init__(self):
|
|
584
|
+
self.i = ord('a')
|
|
585
|
+
def __iter__(self):
|
|
586
|
+
return self
|
|
587
|
+
def next(self):
|
|
588
|
+
if self.i <= ord('z'):
|
|
589
|
+
rtn = chr(self.i)
|
|
590
|
+
self.i += 1
|
|
591
|
+
return rtn
|
|
592
|
+
raise StopIteration
|
|
593
|
+
return BogonIter()
|
|
594
|
+
def __getitem__(self, key):
|
|
595
|
+
raise ValueError
|
|
596
|
+
try: d.update(FailingUserDict())
|
|
597
|
+
except ValueError: pass
|
|
598
|
+
else: raise TestFailed, 'dict.update(), __getitem__ expected ValueError'
|
|
599
|
+
# dict.fromkeys()
|
|
600
|
+
if dict.fromkeys('abc') != {'a':None, 'b':None, 'c':None}:
|
|
601
|
+
raise TestFailed, 'dict.fromkeys did not work as a class method'
|
|
602
|
+
d = {}
|
|
603
|
+
if d.fromkeys('abc') is d:
|
|
604
|
+
raise TestFailed, 'dict.fromkeys did not return a new dict'
|
|
605
|
+
if d.fromkeys('abc') != {'a':None, 'b':None, 'c':None}:
|
|
606
|
+
raise TestFailed, 'dict.fromkeys failed with default value'
|
|
607
|
+
if d.fromkeys((4,5),0) != {4:0, 5:0}:
|
|
608
|
+
raise TestFailed, 'dict.fromkeys failed with specified value'
|
|
609
|
+
if d.fromkeys([]) != {}:
|
|
610
|
+
raise TestFailed, 'dict.fromkeys failed with null sequence'
|
|
611
|
+
def g():
|
|
612
|
+
yield 1
|
|
613
|
+
if d.fromkeys(g()) != {1:None}:
|
|
614
|
+
raise TestFailed, 'dict.fromkeys failed with a generator'
|
|
615
|
+
try: {}.fromkeys(3)
|
|
616
|
+
except TypeError: pass
|
|
617
|
+
else: raise TestFailed, 'dict.fromkeys failed to raise TypeError'
|
|
618
|
+
class dictlike(dict): pass
|
|
619
|
+
#if dictlike.fromkeys('a') != {'a':None}:
|
|
620
|
+
# raise TestFailed, 'dictsubclass.fromkeys did not inherit'
|
|
621
|
+
#if dictlike().fromkeys('a') != {'a':None}:
|
|
622
|
+
# raise TestFailed, 'dictsubclass.fromkeys did not inherit'
|
|
623
|
+
if type(dictlike.fromkeys('a')) is not dictlike:
|
|
624
|
+
raise TestFailed, 'dictsubclass.fromkeys created wrong type'
|
|
625
|
+
if type(dictlike().fromkeys('a')) is not dictlike:
|
|
626
|
+
raise TestFailed, 'dictsubclass.fromkeys created wrong type'
|
|
627
|
+
from UserDict import UserDict
|
|
628
|
+
class mydict(dict):
|
|
629
|
+
def __new__(cls):
|
|
630
|
+
return UserDict()
|
|
631
|
+
#ud = mydict.fromkeys('ab')
|
|
632
|
+
#if ud != {'a':None, 'b':None} or not isinstance(ud,UserDict):
|
|
633
|
+
# raise TestFailed, 'fromkeys did not instantiate using __new__'
|
|
634
|
+
# dict.copy()
|
|
635
|
+
d = {1:1, 2:2, 3:3}
|
|
636
|
+
if d.copy() != {1:1, 2:2, 3:3}: raise TestFailed, 'dict copy'
|
|
637
|
+
if {}.copy() != {}: raise TestFailed, 'empty dict copy'
|
|
638
|
+
# dict.get()
|
|
639
|
+
d = {}
|
|
640
|
+
if d.get('c') is not None: raise TestFailed, 'missing {} get, no 2nd arg'
|
|
641
|
+
if d.get('c', 3) != 3: raise TestFailed, 'missing {} get, w/ 2nd arg'
|
|
642
|
+
d = {'a' : 1, 'b' : 2}
|
|
643
|
+
if d.get('c') is not None: raise TestFailed, 'missing dict get, no 2nd arg'
|
|
644
|
+
if d.get('c', 3) != 3: raise TestFailed, 'missing dict get, w/ 2nd arg'
|
|
645
|
+
if d.get('a') != 1: raise TestFailed, 'present dict get, no 2nd arg'
|
|
646
|
+
if d.get('a', 3) != 1: raise TestFailed, 'present dict get, w/ 2nd arg'
|
|
647
|
+
# dict.setdefault()
|
|
648
|
+
d = {}
|
|
649
|
+
if d.setdefault('key0') is not None:
|
|
650
|
+
raise TestFailed, 'missing {} setdefault, no 2nd arg'
|
|
651
|
+
if d.setdefault('key0') is not None:
|
|
652
|
+
raise TestFailed, 'present {} setdefault, no 2nd arg'
|
|
653
|
+
d.setdefault('key', []).append(3)
|
|
654
|
+
if d['key'][0] != 3:
|
|
655
|
+
raise TestFailed, 'missing {} setdefault, w/ 2nd arg'
|
|
656
|
+
d.setdefault('key', []).append(4)
|
|
657
|
+
if len(d['key']) != 2:
|
|
658
|
+
raise TestFailed, 'present {} setdefault, w/ 2nd arg'
|
|
659
|
+
# dict.popitem()
|
|
660
|
+
for copymode in -1, +1:
|
|
661
|
+
# -1: b has same structure as a
|
|
662
|
+
# +1: b is a.copy()
|
|
663
|
+
for log2size in range(12):
|
|
664
|
+
size = 2**log2size
|
|
665
|
+
a = {}
|
|
666
|
+
b = {}
|
|
667
|
+
for i in range(size):
|
|
668
|
+
a[`i`] = i
|
|
669
|
+
if copymode < 0:
|
|
670
|
+
b[`i`] = i
|
|
671
|
+
if copymode > 0:
|
|
672
|
+
b = a.copy()
|
|
673
|
+
for i in range(size):
|
|
674
|
+
ka, va = ta = a.popitem()
|
|
675
|
+
if va != int(ka): raise TestFailed, "a.popitem: %s" % str(ta)
|
|
676
|
+
kb, vb = tb = b.popitem()
|
|
677
|
+
if vb != int(kb): raise TestFailed, "b.popitem: %s" % str(tb)
|
|
678
|
+
if copymode < 0 and ta != tb:
|
|
679
|
+
raise TestFailed, "a.popitem != b.popitem: %s, %s" % (
|
|
680
|
+
str(ta), str(tb))
|
|
681
|
+
if a: raise TestFailed, 'a not empty after popitems: %s' % str(a)
|
|
682
|
+
if b: raise TestFailed, 'b not empty after popitems: %s' % str(b)
|
|
683
|
+
|
|
684
|
+
d.clear()
|
|
685
|
+
try: d.popitem()
|
|
686
|
+
except KeyError: pass
|
|
687
|
+
else: raise TestFailed, "{}.popitem doesn't raise KeyError"
|
|
688
|
+
|
|
689
|
+
# Tests for pop with specified key
|
|
690
|
+
d.clear()
|
|
691
|
+
k, v = 'abc', 'def'
|
|
692
|
+
d[k] = v
|
|
693
|
+
try: d.pop('ghi')
|
|
694
|
+
except KeyError: pass
|
|
695
|
+
else: raise TestFailed, "{}.pop(k) doesn't raise KeyError when k not in dictionary"
|
|
696
|
+
|
|
697
|
+
if d.pop(k) != v: raise TestFailed, "{}.pop(k) doesn't find known key/value pair"
|
|
698
|
+
if len(d) > 0: raise TestFailed, "{}.pop(k) failed to remove the specified pair"
|
|
699
|
+
|
|
700
|
+
try: d.pop(k)
|
|
701
|
+
except KeyError: pass
|
|
702
|
+
else: raise TestFailed, "{}.pop(k) doesn't raise KeyError when dictionary is empty"
|
|
703
|
+
|
|
704
|
+
# verify longs/ints get same value when key > 32 bits (for 64-bit archs)
|
|
705
|
+
# see SF bug #689659
|
|
706
|
+
x = 4503599627370496L
|
|
707
|
+
y = 4503599627370496
|
|
708
|
+
h = {x: 'anything', y: 'something else'}
|
|
709
|
+
if h[x] != h[y]:
|
|
710
|
+
raise TestFailed, "long/int key should match"
|
|
711
|
+
|
|
712
|
+
if d.pop(k, v) != v: raise TestFailed, "{}.pop(k, v) doesn't return default value"
|
|
713
|
+
d[k] = v
|
|
714
|
+
if d.pop(k, 1) != v: raise TestFailed, "{}.pop(k, v) doesn't find known key/value pair"
|
|
715
|
+
|
|
716
|
+
#XXX need locking strategy.
|
|
717
|
+
#d[1] = 1
|
|
718
|
+
#try:
|
|
719
|
+
# for i in d:
|
|
720
|
+
# d[i+1] = 1
|
|
721
|
+
#except RuntimeError:
|
|
722
|
+
# pass
|
|
723
|
+
#else:
|
|
724
|
+
# raise TestFailed, "changing dict size during iteration doesn't raise Error"
|
|
725
|
+
|
|
726
|
+
try: type(1, 2)
|
|
727
|
+
except TypeError: pass
|
|
728
|
+
else: raise TestFailed, 'type(), w/2 args expected TypeError'
|
|
729
|
+
|
|
730
|
+
try: type(1, 2, 3, 4)
|
|
731
|
+
except TypeError: pass
|
|
732
|
+
else: raise TestFailed, 'type(), w/4 args expected TypeError'
|
|
733
|
+
|
|
734
|
+
#XXX: Jython will probably never have buffers
|
|
735
|
+
#print 'Buffers'
|
|
736
|
+
#try: buffer('asdf', -1)
|
|
737
|
+
#except ValueError: pass
|
|
738
|
+
#else: raise TestFailed, "buffer('asdf', -1) should raise ValueError"
|
|
739
|
+
#
|
|
740
|
+
#try: buffer(None)
|
|
741
|
+
#except TypeError: pass
|
|
742
|
+
#else: raise TestFailed, "buffer(None) should raise TypeError"
|
|
743
|
+
#
|
|
744
|
+
#a = buffer('asdf')
|
|
745
|
+
#hash(a)
|
|
746
|
+
#b = a * 5
|
|
747
|
+
#if a == b:
|
|
748
|
+
# raise TestFailed, 'buffers should not be equal'
|
|
749
|
+
#if str(b) != ('asdf' * 5):
|
|
750
|
+
# raise TestFailed, 'repeated buffer has wrong content'
|
|
751
|
+
#if str(a * 0) != '':
|
|
752
|
+
# raise TestFailed, 'repeated buffer zero times has wrong content'
|
|
753
|
+
#if str(a + buffer('def')) != 'asdfdef':
|
|
754
|
+
# raise TestFailed, 'concatenation of buffers yields wrong content'
|
|
755
|
+
#
|
|
756
|
+
#try: a[1] = 'g'
|
|
757
|
+
#except TypeError: pass
|
|
758
|
+
#else: raise TestFailed, "buffer assignment should raise TypeError"
|
|
759
|
+
#
|
|
760
|
+
#try: a[0:1] = 'g'
|
|
761
|
+
#except TypeError: pass
|
|
762
|
+
#else: raise TestFailed, "buffer slice assignment should raise TypeError"
|