mirror of
https://github.com/xonsh/xonsh.git
synced 2025-03-04 08:24:40 +01:00
Test 'optional items' (format spec) in format_prompt
This commit is contained in:
parent
f911613d95
commit
bc11ba78db
1 changed files with 20 additions and 0 deletions
|
@ -64,6 +64,26 @@ def test_format_prompt():
|
|||
obs = partial_format_prompt(template=p, formatter_dict=formatter_dict)
|
||||
assert exp == obs
|
||||
|
||||
def test_format_prompt_with_format_spec():
|
||||
formatter_dict = {
|
||||
'a_string': 'cats',
|
||||
'a_number': 7,
|
||||
'empty': '',
|
||||
'current_job': (lambda: 'sleep'),
|
||||
'none': (lambda: None),
|
||||
}
|
||||
cases = {
|
||||
'{a_number:{0:^3}}cats': ' 7 cats',
|
||||
'{current_job:{} | }xonsh': 'sleep | xonsh',
|
||||
'{none:{} | }{a_string}{empty:!}': 'cats!',
|
||||
'{none:{}}': '',
|
||||
'{{{a_string:{{{}}}}}}': '{{cats}}',
|
||||
'{{{none:{{{}}}}}}': '{}',
|
||||
}
|
||||
for p, exp in cases.items():
|
||||
obs = partial_format_prompt(template=p, formatter_dict=formatter_dict)
|
||||
assert exp == obs
|
||||
|
||||
def test_format_prompt_with_broken_template():
|
||||
for p in ('{user', '{user}{hostname'):
|
||||
assert partial_format_prompt(p) == p
|
||||
|
|
Loading…
Add table
Reference in a new issue