diff --git a/install.sh b/install.sh index f158d959..ee328ecb 100755 --- a/install.sh +++ b/install.sh @@ -24,7 +24,7 @@ function build_and_install_beta() { exit 1 fi - git clone --depth 1 --no-tags $BASHUNIT_GIT_REPO temp_bashunit 2>/dev/null + git clone --depth 1 --no-tags "$BASHUNIT_GIT_REPO" temp_bashunit 2>/dev/null cd temp_bashunit ./build.sh >/dev/null local latest_commit=$(git rev-parse --short=7 HEAD) diff --git a/src/test_doubles.sh b/src/test_doubles.sh index c450fa16..a149e527 100644 --- a/src/test_doubles.sh +++ b/src/test_doubles.sh @@ -96,3 +96,4 @@ function assert_have_been_called_times() { state::add_assertions_passed } + diff --git a/tests/unit/console_results_test.sh b/tests/unit/console_results_test.sh index d1f99fe2..1cb6e5a5 100644 --- a/tests/unit/console_results_test.sh +++ b/tests/unit/console_results_test.sh @@ -297,7 +297,6 @@ function test_render_execution_time_on_osx_without_perl() { mock dependencies::has_perl mock_false _START_TIME=1727771758.0664479733 - EPOCHREALTIME=1727780556.4266040325 local render_result render_result=$( diff --git a/tests/unit/fixtures/fake_function_to_spy.sh b/tests/unit/fixtures/fake_function_to_spy.sh new file mode 100644 index 00000000..1c630364 --- /dev/null +++ b/tests/unit/fixtures/fake_function_to_spy.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +function function_to_be_spied_on(){ + echo "this function should be spy and not execute" +} diff --git a/tests/unit/test_doubles_test.sh b/tests/unit/test_doubles_test.sh index 9c9e489a..6e6748d3 100644 --- a/tests/unit/test_doubles_test.sh +++ b/tests/unit/test_doubles_test.sh @@ -65,3 +65,43 @@ function test_unsuccessful_spy_called_times() { "$(console_results::print_failed_test "Unsuccessful spy called times" "ps" "to has been called" "1 times")"\ "$(assert_have_been_called_times 1 ps)" } + +function test_successful_spy_with_source_function() { + # shellcheck source=/dev/null + source ./fixtures/fake_function_to_spy.sh + spy function_to_be_spied_on + + function_to_be_spied_on + + assert_have_been_called function_to_be_spied_on +} + +function test_unsuccessful_spy_with_source_function_have_been_called() { + # shellcheck source=/dev/null + source ./fixtures/fake_function_to_spy.sh + spy function_to_be_spied_on + + function_to_be_spied_on + function_to_be_spied_on + + assert_same\ + "$(console_results::print_failed_test \ + "Unsuccessful spy with source function have been called"\ + "function_to_be_spied_on" \ + "to has been called" \ + "1 times")"\ + "$(assert_have_been_called_times 1 function_to_be_spied_on)" +} + + +function test_successful_spy_called_times_with_source() { + # shellcheck source=/dev/null + source ./fixtures/fake_function_to_spy.sh + spy function_to_be_spied_on + + function_to_be_spied_on + function_to_be_spied_on + + assert_have_been_called_times 2 function_to_be_spied_on +} +