foo: note: Got 0 allowed oils failures (exit with code 0)

foo: FATAL: Got 0 failures (0 oils failures), but 1 are allowed


foo: FATAL: Got 1 failures (1 oils failures), but 0 are allowed

foo: note: Got 1 allowed oils failures (exit with code 0)
.....(1, 0, 'Env binding in readonly/declare disallowed')
(2, 4, 'FOO=foo readonly v=$(tests/printenv.py FOO)\n')
(3, 4, 'echo "v=$v"\n')
(6, 1, ('OK', 'bash/dash/mksh', 'stdout', 'v=None\n'))
(7, 1, ('OK', 'bash/dash/mksh', 'status', '0'))
(8, 1, (None, None, 'status', '2'))
(9, 5, '')
(1, 0, 'Multiline test case')
(2, 4, 'echo one\n')
(3, 4, 'echo two\n')
(4, 1, (None, None, 'status', '1'))
(5, 1, (None, None, 'stderr-json', '""'))
(6, 2, (None, None, 'STDOUT', ''))
(7, 4, 'one\n')
(8, 4, 'two\n')
(9, 2, ('OK', 'dash', 'STDOUT', ''))
(10, 4, 'dash1\n')
(11, 4, 'dash2\n')
(12, 3, None)
(13, 2, ('OK', 'mksh', 'STDOUT', ''))
(14, 4, 'mksh1\n')
(15, 4, 'mksh2\n')
(16, 3, None)
(17, 5, '')
[<EqualAssertion stdout == 'v=None\n'>, <EqualAssertion status == 0>, <SubstringAssertion stderr == 'Traceback (most recent'>]
(1, 0, 'Env binding in readonly/declare disallowed')
(2, 4, 'FOO=foo readonly v=$(tests/printenv.py FOO)\n')
(3, 4, 'echo "v=$v"\n')
(6, 1, ('OK', 'bash/dash/mksh', 'stdout', 'v=None\n'))
(7, 1, ('OK', 'bash/dash/mksh', 'status', '0'))
(8, 1, (None, None, 'status', '2'))
(9, 5, '')
(1, 0, 'Multiline test case')
(2, 4, 'echo one\n')
(3, 4, 'echo two\n')
(4, 1, (None, None, 'status', '1'))
(5, 1, (None, None, 'stderr-json', '""'))
(6, 2, (None, None, 'STDOUT', ''))
(7, 4, 'one\n')
(8, 4, 'two\n')
(9, 2, ('OK', 'dash', 'STDOUT', ''))
(10, 4, 'dash1\n')
(11, 4, 'dash2\n')
(12, 3, None)
(13, 2, ('OK', 'mksh', 'STDOUT', ''))
(14, 4, 'mksh1\n')
(15, 4, 'mksh2\n')
(16, 3, None)
(17, 5, '')
[('osh', 'bin/osh'), ('osh_ALT', '_bin/osh')]
[('osh', 'bin/osh'), ('osh-cpp', '_bin/cxx-dbg/osh')]
[('osh', 'bin/osh'), ('osh-cpp', '_bin/cxx-dbg-sh/osh')]
(1, 0, 'Env binding in readonly/declare disallowed')
(2, 4, 'FOO=foo readonly v=$(tests/printenv.py FOO)\n')
(3, 4, 'echo "v=$v"\n')
(6, 1, ('OK', 'bash/dash/mksh', 'stdout', 'v=None\n'))
(7, 1, ('OK', 'bash/dash/mksh', 'status', '0'))
(8, 1, (None, None, 'status', '2'))
(9, 5, '')
(1, 0, 'Multiline test case')
(2, 4, 'echo one\n')
(3, 4, 'echo two\n')
(4, 1, (None, None, 'status', '1'))
(5, 1, (None, None, 'stderr-json', '""'))
(6, 2, (None, None, 'STDOUT', ''))
(7, 4, 'one\n')
(8, 4, 'two\n')
(9, 2, ('OK', 'dash', 'STDOUT', ''))
(10, 4, 'dash1\n')
(11, 4, 'dash2\n')
(12, 3, None)
(13, 2, ('OK', 'mksh', 'STDOUT', ''))
(14, 4, 'mksh1\n')
(15, 4, 'mksh2\n')
(16, 3, None)
(17, 5, '')
CASE1
{'bash': {'qualifier': 'OK', 'status': '0', 'stdout': 'v=None\n'},
 'code': 'FOO=foo readonly v=$(tests/printenv.py FOO)\necho "v=$v"\n',
 'dash': {'qualifier': 'OK', 'status': '0', 'stdout': 'v=None\n'},
 'desc': 'Env binding in readonly/declare disallowed',
 'line_num': 1,
 'mksh': {'qualifier': 'OK', 'status': '0', 'stdout': 'v=None\n'},
 'status': '2'}
()
CASE2
{'code': 'echo one\necho two\n',
 'dash': {'qualifier': 'OK', 'stdout': 'dash1\ndash2\n'},
 'desc': 'Multiline test case',
 'line_num': 1,
 'mksh': {'qualifier': 'OK', 'stdout': 'mksh1\nmksh2\n'},
 'status': '1',
 'stderr-json': '""',
 'stdout': 'one\ntwo\n'}
()
[<EqualAssertion stdout == 'one\ntwo\n'>, <EqualAssertion stderr == u''>, <EqualAssertion status == 1>, <SubstringAssertion stderr == 'Traceback (most recent'>]
(1, 0, 'Env binding in readonly/declare disallowed')
(2, 4, 'FOO=foo readonly v=$(tests/printenv.py FOO)\n')
(3, 4, 'echo "v=$v"\n')
(6, 1, ('OK', 'bash/dash/mksh', 'stdout', 'v=None\n'))
(7, 1, ('OK', 'bash/dash/mksh', 'status', '0'))
(8, 1, (None, None, 'status', '2'))
(9, 5, '')
(1, 0, 'Multiline test case')
(2, 4, 'echo one\n')
(3, 4, 'echo two\n')
(4, 1, (None, None, 'status', '1'))
(5, 1, (None, None, 'stderr-json', '""'))
(6, 2, (None, None, 'STDOUT', ''))
(7, 4, 'one\n')
(8, 4, 'two\n')
(9, 2, ('OK', 'dash', 'STDOUT', ''))
(10, 4, 'dash1\n')
(11, 4, 'dash2\n')
(12, 3, None)
(13, 2, ('OK', 'mksh', 'STDOUT', ''))
(14, 4, 'mksh1\n')
(15, 4, 'mksh2\n')
(16, 3, None)
(17, 5, '')
'\x1b[1mcase\tline\tbash\tosh\t\x1b[0;0m\n  0\t  1\t\x1b[31m\x1b[1mFAIL\x1b[0;0m\t\x1b[31m\x1b[1mFAIL\x1b[0;0m\tEnv binding in readonly/declare disallowed\n'
(1, 0, 'Env binding in readonly/declare disallowed')
(2, 4, 'FOO=foo readonly v=$(tests/prin.
----------------------------------------------------------------------
Ran 6 tests in 0.062s

OK
tenv.py FOO)\n')
(3, 4, 'echo "v=$v"\n')
(6, 1, ('OK', 'bash/dash/mksh', 'stdout', 'v=None\n'))
(7, 1, ('OK', 'bash/dash/mksh', 'status', '0'))
(8, 1, (None, None, 'status', '2'))
(9, 5, '')
(1, 0, 'Multiline test case')
(2, 4, 'echo one\n')
(3, 4, 'echo two\n')
(4, 1, (None, None, 'status', '1'))
(5, 1, (None, None, 'stderr-json', '""'))
(6, 2, (None, None, 'STDOUT', ''))
(7, 4, 'one\n')
(8, 4, 'two\n')
(9, 2, ('OK', 'dash', 'STDOUT', ''))
(10, 4, 'dash1\n')
(11, 4, 'dash2\n')
(12, 3, None)
(13, 2, ('OK', 'mksh', 'STDOUT', ''))
(14, 4, 'mksh1\n')
(15, 4, 'mksh2\n')
(16, 3, None)
(17, 5, '')