Jan Philipp Hafer c85d2ef479 fix(clippy): define and fix clippy lints, add documentation+license %!s(int64=3) %!d(string=hai) anos
..
advanced 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
script_exec d91f3c05fc feat: Disable unicode support by default + update deps %!s(int64=4) %!d(string=hai) anos
README.md 1f2d8e2530 fix(manual): split string and array methods from section methods and test them %!s(int64=3) %!d(string=hai) anos
alias.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
alias.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
arithmetic_vars.ion 7878d8acf6 fix(manual,tests): test chapter variables up to arithmetic %!s(int64=3) %!d(string=hai) anos
arithmetic_vars.out 7878d8acf6 fix(manual,tests): test chapter variables up to arithmetic %!s(int64=3) %!d(string=hai) anos
array_methods.ion 1f2d8e2530 fix(manual): split string and array methods from section methods and test them %!s(int64=3) %!d(string=hai) anos
array_methods.out 1f2d8e2530 fix(manual): split string and array methods from section methods and test them %!s(int64=3) %!d(string=hai) anos
array_test.ion 7878d8acf6 fix(manual,tests): test chapter variables up to arithmetic %!s(int64=3) %!d(string=hai) anos
array_test.out 7878d8acf6 fix(manual,tests): test chapter variables up to arithmetic %!s(int64=3) %!d(string=hai) anos
array_vars.ion 7878d8acf6 fix(manual,tests): test chapter variables up to arithmetic %!s(int64=3) %!d(string=hai) anos
array_vars.out 7878d8acf6 fix(manual,tests): test chapter variables up to arithmetic %!s(int64=3) %!d(string=hai) anos
arrays_with_braces.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
arrays_with_braces.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
basic_condition.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
basic_condition.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
brace_exp.ion 2bc8826a97 fix(manual, testing): unit tests for correctly working sections+examples in manual chapter expansion %!s(int64=3) %!d(string=hai) anos
brace_exp.out 2bc8826a97 fix(manual, testing): unit tests for correctly working sections+examples in manual chapter expansion %!s(int64=3) %!d(string=hai) anos
braces.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
braces.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
break.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
break.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
builtin_piping.ion d91f3c05fc feat: Disable unicode support by default + update deps %!s(int64=4) %!d(string=hai) anos
builtin_piping.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
builtin_set.ion 935811eafd Fix set and status argument handling %!s(int64=4) %!d(string=hai) anos
builtin_set.out 935811eafd Fix set and status argument handling %!s(int64=4) %!d(string=hai) anos
builtin_status.ion 935811eafd Fix set and status argument handling %!s(int64=4) %!d(string=hai) anos
builtin_status.out 935811eafd Fix set and status argument handling %!s(int64=4) %!d(string=hai) anos
check.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
check.params 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
cmdfile_fail.out 60e497a3b8 fix(CLI): error handling: no twice flags or options, no command and file usage %!s(int64=3) %!d(string=hai) anos
cmdfile_fail.params 60e497a3b8 fix(CLI): error handling: no twice flags or options, no command and file usage %!s(int64=3) %!d(string=hai) anos
color_test.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
color_test.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
command-substitutions.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
command-substitutions.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
command.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
command.params 60e497a3b8 fix(CLI): error handling: no twice flags or options, no command and file usage %!s(int64=3) %!d(string=hai) anos
comments.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
comments.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
conditionals.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
conditionals.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
continue.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
continue.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
else_if.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
else_if.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
empty_loop_test.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
empty_loop_test.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
exists.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
exists.out 9057751f9b Apply clippy in pedantic mode %!s(int64=5) %!d(string=hai) anos
fail.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
fail.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
fibonacci.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
fibonacci.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
fibonacci.sh 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
fn-root-vars.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
fn-root-vars.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
fn.ion 56b83c2ee4 improv!: Rename calc builtin to math to avoid conflict with GNU %!s(int64=4) %!d(string=hai) anos
fn.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
for.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
for.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
function_piping.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
function_piping.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
glob.ion 843f59eff1 fix: Improved parsing and handling of backslashes %!s(int64=4) %!d(string=hai) anos
glob.out c85d2ef479 fix(clippy): define and fix clippy lints, add documentation+license %!s(int64=3) %!d(string=hai) anos
help.out e8e9b0fde0 fix: Update location of tests script in CONTRIBUTING.md. Add missing period to help.out. %!s(int64=4) %!d(string=hai) anos
help.params 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
herestring.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
herestring.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
if_with_builtins.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
if_with_builtins.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
inner_expansions.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
inner_expansions.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
inplace_ops.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
inplace_ops.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
issues.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
issues.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
keybinding_fail.out 60e497a3b8 fix(CLI): error handling: no twice flags or options, no command and file usage %!s(int64=3) %!d(string=hai) anos
keybinding_fail.params 60e497a3b8 fix(CLI): error handling: no twice flags or options, no command and file usage %!s(int64=3) %!d(string=hai) anos
let.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
let.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
map_vars.ion 7878d8acf6 fix(manual,tests): test chapter variables up to arithmetic %!s(int64=3) %!d(string=hai) anos
map_vars.out 7878d8acf6 fix(manual,tests): test chapter variables up to arithmetic %!s(int64=3) %!d(string=hai) anos
match.ion 02cba084dc lib/shell/flow: change match expressions to match based on regex %!s(int64=4) %!d(string=hai) anos
match.out 02cba084dc lib/shell/flow: change match expressions to match based on regex %!s(int64=4) %!d(string=hai) anos
methods.ion 5d7052abb2 fix(string methods): Remove methods than expand to 0/1 %!s(int64=4) %!d(string=hai) anos
methods.out 843f59eff1 fix: Improved parsing and handling of backslashes %!s(int64=4) %!d(string=hai) anos
multiarg_fail.out 60e497a3b8 fix(CLI): error handling: no twice flags or options, no command and file usage %!s(int64=3) %!d(string=hai) anos
multiarg_fail.params 60e497a3b8 fix(CLI): error handling: no twice flags or options, no command and file usage %!s(int64=3) %!d(string=hai) anos
multiline-arrays.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
multiline-arrays.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
multiple-lines.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
multiple-lines.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
nested_conditions.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
nested_conditions.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
nested_for.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
nested_for.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
not.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
not.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
optional_assignment.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
optional_assignment.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
pipelines.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
pipelines.out a25b4d0875 feat!: Use non-forking subshells %!s(int64=4) %!d(string=hai) anos
process_exp.ion 2bc8826a97 fix(manual, testing): unit tests for correctly working sections+examples in manual chapter expansion %!s(int64=3) %!d(string=hai) anos
process_exp.out 2bc8826a97 fix(manual, testing): unit tests for correctly working sections+examples in manual chapter expansion %!s(int64=3) %!d(string=hai) anos
quotes.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
quotes.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
return.ion e3f7f06330 feat: Add the return keyword for returning codes from functions %!s(int64=4) %!d(string=hai) anos
return.out e3f7f06330 feat: Add the return keyword for returning codes from functions %!s(int64=4) %!d(string=hai) anos
run_benches 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
run_examples.sh c191d8c26b fix(CLI): delete structopt due to no advantage(conflict resolution) %!s(int64=3) %!d(string=hai) anos
scopes-2.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
scopes-2.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
scopes-3.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
scopes-3.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
scopes-4.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
scopes-4.out 38659eeb0d Make the command not found bubble and abort scripts & don't exec tests output %!s(int64=5) %!d(string=hai) anos
scopes.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
scopes.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
script_exec.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
script_exec.out 38659eeb0d Make the command not found bubble and abort scripts & don't exec tests output %!s(int64=5) %!d(string=hai) anos
square_brackets.ion 843f59eff1 fix: Improved parsing and handling of backslashes %!s(int64=4) %!d(string=hai) anos
square_brackets.out 843f59eff1 fix: Improved parsing and handling of backslashes %!s(int64=4) %!d(string=hai) anos
string_methods.ion 1f2d8e2530 fix(manual): split string and array methods from section methods and test them %!s(int64=3) %!d(string=hai) anos
string_methods.out 1f2d8e2530 fix(manual): split string and array methods from section methods and test them %!s(int64=3) %!d(string=hai) anos
string_vars.ion 380a41cd08 fix(CI): use 1.53.0 rust image instead of 1.43 and fix example %!s(int64=3) %!d(string=hai) anos
string_vars.out 380a41cd08 fix(CI): use 1.53.0 rust image instead of 1.43 and fix example %!s(int64=3) %!d(string=hai) anos
strings.ion 843f59eff1 fix: Improved parsing and handling of backslashes %!s(int64=4) %!d(string=hai) anos
strings.out 843f59eff1 fix: Improved parsing and handling of backslashes %!s(int64=4) %!d(string=hai) anos
unicode.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
unicode.out cdcb65dc84 chore: cargo fmt and bless ui test %!s(int64=4) %!d(string=hai) anos
variable_exp.ion 2bc8826a97 fix(manual, testing): unit tests for correctly working sections+examples in manual chapter expansion %!s(int64=3) %!d(string=hai) anos
variable_exp.out 2bc8826a97 fix(manual, testing): unit tests for correctly working sections+examples in manual chapter expansion %!s(int64=3) %!d(string=hai) anos
variables.ion 7878d8acf6 fix(manual,tests): test chapter variables up to arithmetic %!s(int64=3) %!d(string=hai) anos
variables.out 7878d8acf6 fix(manual,tests): test chapter variables up to arithmetic %!s(int64=3) %!d(string=hai) anos
while.ion 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos
while.out 7a21f5e772 Move the integration tests to `tests` to make room for rust examples %!s(int64=5) %!d(string=hai) anos

README.md

Changing tests

This tests are also used to generate the manual. Please make sure to update the manual, if you change tests.

Examples

The files in this directory are simple example scripts that are used to test the state of the shell as it is developed. When the run_examples.sh script is executed, it will build Ion and execute each of the ion scripts here, and compare their outputs to their assoicated out files.

TOOLCHAIN=stable ./run_examples.sh

For more elaborate examples of Ion usage, check out the advanced directory.