##// END OF EJS Templates
Fix printing of argparse help to go to stdout by default....
Fix printing of argparse help to go to stdout by default. Our help message was tricky to page because it went to stderr (argparse default, which I don't particularly like). Also fixed encoding marker, which was incorrect. The problem exists in other files too, the right syntax is: # coding: utf-8 (with 'coding', not 'encoding'). See http://www.python.org/dev/peps/pep-0263

File last commit:

r503:b114b8cd
r2361:ccf5098a
Show More
test_wildcard.py
99 lines | 2.9 KiB | text/x-python | PythonLexer
# -*- coding: UTF-8 -*-
import sys, unittest
sys.path.append ('..')
from IPython import wildcard
class obj_t(object):
pass
root=obj_t()
l=["arna","abel","ABEL","active","bob","bark","abbot"]
q=["kate","loop","arne","vito","lucifer","koppel"]
for x in l:
o=obj_t()
setattr(root,x,o)
for y in q:
p=obj_t()
setattr(o,y,p)
root._apan=obj_t()
root._apan.a=10
root._apan._a=20
root._apan.__a=20
root.__anka=obj_t()
root.__anka.a=10
root.__anka._a=20
root.__anka.__a=20
root._APAN=obj_t()
root._APAN.a=10
root._APAN._a=20
root._APAN.__a=20
root.__ANKA=obj_t()
root.__ANKA.a=10
root.__ANKA._a=20
root.__ANKA.__a=20
class Tests (unittest.TestCase):
def test_case(self):
ns=root.__dict__
tests=[
("a*", ["abbot","abel","active","arna",]),
("?b*.?o*",["abbot.koppel","abbot.loop","abel.koppel","abel.loop",]),
("_a*", []),
("_*anka", ["__anka",]),
("_*a*", ["__anka",]),
]
for pat,res in tests:
res.sort()
a=wildcard.list_namespace(ns,"all",pat,ignore_case=False,show_all=False).keys()
a.sort()
self.assertEqual(a,res)
def test_case_showall(self):
ns=root.__dict__
tests=[
("a*", ["abbot","abel","active","arna",]),
("?b*.?o*",["abbot.koppel","abbot.loop","abel.koppel","abel.loop",]),
("_a*", ["_apan"]),
("_*anka", ["__anka",]),
("_*a*", ["__anka","_apan",]),
]
for pat,res in tests:
res.sort()
a=wildcard.list_namespace(ns,"all",pat,ignore_case=False,show_all=True).keys()
a.sort()
self.assertEqual(a,res)
def test_nocase(self):
ns=root.__dict__
tests=[
("a*", ["abbot","abel","ABEL","active","arna",]),
("?b*.?o*",["abbot.koppel","abbot.loop","abel.koppel","abel.loop","ABEL.koppel","ABEL.loop",]),
("_a*", []),
("_*anka", ["__anka","__ANKA",]),
("_*a*", ["__anka","__ANKA",]),
]
for pat,res in tests:
res.sort()
a=wildcard.list_namespace(ns,"all",pat,ignore_case=True,show_all=False).keys()
a.sort()
self.assertEqual(a,res)
def test_nocase_showall(self):
ns=root.__dict__
tests=[
("a*", ["abbot","abel","ABEL","active","arna",]),
("?b*.?o*",["abbot.koppel","abbot.loop","abel.koppel","abel.loop","ABEL.koppel","ABEL.loop",]),
("_a*", ["_apan","_APAN"]),
("_*anka", ["__anka","__ANKA",]),
("_*a*", ["__anka","__ANKA","_apan","_APAN"]),
]
for pat,res in tests:
res.sort()
a=wildcard.list_namespace(ns,"all",pat,ignore_case=True,show_all=True).keys()
a.sort()
self.assertEqual(a,res)
if __name__ == '__main__':
unittest.main()