fish-shell/tests/function.out
Fabian Homborg 69f68d31df Reserve some builtin names
`argparse`, `read`, `set`, `status`, `test` and `[` now can't be used
as function names anymore.

This is because (except for `test` and `[`) there is no way to wrap these properly, so any
function called that will be broken anyway.

For `test` (and `[`), there is nothing that can be added and there
have been confused users who created a function that then broke
everything.

Fixes #3000.
2018-02-25 21:29:24 +01:00

75 lines
2.1 KiB
Text

####################
# Test the -V flag
####################
# Testing -V
$foo: set in local scope, unexported, with 1 elements
$foo[1]: length=9 value=|local foo|
$foo: set in global scope, unexported, with 1 elements
$foo[1]: length=10 value=|global foo|
$foo: not set in universal scope
$bar: set in local scope, unexported, with 5 elements
$bar[1]: length=3 value=|one|
$bar[2]: length=8 value=|two 2|
$bar[3]: length=1 value=|\t|
$bar[4]: length=0 value=||
$bar[5]: length=1 value=|3|
$bar: set in global scope, unexported, with 5 elements
$bar[1]: length=3 value=|one|
$bar[2]: length=8 value=|two 2|
$bar[3]: length=1 value=|\t|
$bar[4]: length=0 value=||
$bar[5]: length=1 value=|3|
$bar: not set in universal scope
$baz: set in local scope, unexported, with 0 elements
$baz: set in global scope, unexported, with 0 elements
$baz: not set in universal scope
####################
# Testing -V with changed variables
$foo: set in local scope, unexported, with 1 elements
$foo[1]: length=9 value=|local foo|
$foo: set in global scope, unexported, with 1 elements
$foo[1]: length=10 value=|global foo|
$foo: not set in universal scope
$bar: set in local scope, unexported, with 5 elements
$bar[1]: length=3 value=|one|
$bar[2]: length=8 value=|two 2|
$bar[3]: length=1 value=|\t|
$bar[4]: length=0 value=||
$bar[5]: length=1 value=|3|
$bar: set in global scope, unexported, with 1 elements
$bar[1]: length=7 value=|bad bar|
$bar: not set in universal scope
$baz: set in local scope, unexported, with 0 elements
$baz: set in global scope, unexported, with 1 elements
$baz[1]: length=7 value=|bad baz|
$baz: not set in universal scope
Function name1 found
Function name2 not found as expected
Function name3 found
Function name4 not found as expected
####################
# Verify that functions can be copied. Tests against regression of issue #3601
####################
# Checking that the copied functions are identical other than the name
1c1
< function name1 --argument arg1 arg2
---
> function name1a --argument arg1 arg2
1c1
< function name3 --argument arg1 arg2
---
> function name3a --argument arg1 arg2
####################
# Checking reserved names