mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00

Known issues: The string.Formatter class, as discussed in the PEP, is incomplete. Error handling needs to conform to the PEP. Need to fix this warning that I introduced in Python/formatter_unicode.c: Objects/stringlib/unicodedefs.h:26: warning: `STRINGLIB_CMP' defined but not used Need to make sure sign formatting is correct, more tests needed. Need to remove '()' sign formatting, left over from an earlier version of the PEP.
36 lines
1.6 KiB
Python
36 lines
1.6 KiB
Python
import unittest, string
|
|
from test import test_support
|
|
|
|
|
|
class ModuleTest(unittest.TestCase):
|
|
|
|
def test_attrs(self):
|
|
string.whitespace
|
|
string.ascii_lowercase
|
|
string.ascii_uppercase
|
|
string.ascii_letters
|
|
string.digits
|
|
string.hexdigits
|
|
string.octdigits
|
|
string.punctuation
|
|
string.printable
|
|
|
|
def test_formatter(self):
|
|
fmt = string.Formatter()
|
|
self.assertEqual(fmt.format("foo"), "foo")
|
|
|
|
# Formatter not working you for lookups
|
|
#self.assertEqual(fmt.format("foo{0}", "bar"), "foobar")
|
|
|
|
|
|
def test_maketrans(self):
|
|
transtable = '\000\001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037 !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`xyzdefghijklmnopqrstuvwxyz{|}~\177\200\201\202\203\204\205\206\207\210\211\212\213\214\215\216\217\220\221\222\223\224\225\226\227\230\231\232\233\234\235\236\237\240\241\242\243\244\245\246\247\250\251\252\253\254\255\256\257\260\261\262\263\264\265\266\267\270\271\272\273\274\275\276\277\300\301\302\303\304\305\306\307\310\311\312\313\314\315\316\317\320\321\322\323\324\325\326\327\330\331\332\333\334\335\336\337\340\341\342\343\344\345\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\367\370\371\372\373\374\375\376\377'
|
|
|
|
self.assertEqual(string.maketrans('abc', 'xyz'), transtable)
|
|
self.assertRaises(ValueError, string.maketrans, 'abc', 'xyzq')
|
|
|
|
def test_main():
|
|
test_support.run_unittest(ModuleTest)
|
|
|
|
if __name__ == "__main__":
|
|
test_main()
|