Files
stub.sh/test/stub_called_times-test.sh
Jim Myhrberg 721226618c Change when called state is reset
This allows checking if a stub was called even after it's been restored
to it's original. Called state is only reset when a new stub is created
for the same command.
2014-03-19 23:55:39 +00:00

43 lines
971 B
Bash
Executable File

#! /usr/bin/env bash
source "test-helper.sh"
#
# stub_called_times() tests.
#
# Echoes 0 if the command isn't stubed.
assert 'stub_called_times "top"' "0"
# Echoes the number of times a stub was called.
stub "uname"
assert 'stub_called_times "uname"' "0"
uname
assert 'stub_called_times "uname"' "1"
uname
assert 'stub_called_times "uname"' "2"
uname
assert 'stub_called_times "uname"' "3"
restore "uname"
# Echoes 0 after a called stub has been recreated.
stub "uname"
uname
assert 'stub_called_times "uname"' "1"
restore "uname"
assert 'stub_called_times "uname"' "1"
stub "uname"
assert 'stub_called_times "uname"' "0"
restore "uname"
# When given a second argument, asserts stub called X number of times.
stub "uname"
uname
assert_raises 'stub_called_times "uname" 1' 0
assert 'stub_called_times "uname" 1' ""
assert_raises 'stub_called_times "uname" 3' 1
assert 'stub_called_times "uname" 3' ""
restore "uname"
# End of tests.
assert_end "stub_called_times()"