diff --git a/test/git-check-assertions.bats b/test/git-check-assertions.bats index beb29ca..ee5097b 100755 --- a/test/git-check-assertions.bats +++ b/test/git-check-assertions.bats @@ -129,6 +129,37 @@ commit_with_assertion() { assert_size_zero readme } +@test "should restore index when finished" { + git checkout -b feature + commit_with_assertion $'echo blah >> readme\ngit add readme' + + run git-check-assertions + + assert_success + assert_size_zero readme +} + +@test "should restore index between commits" { + git checkout -b feature + commit_with_assertion $'echo blah >> readme\ngit add readme' + commit_with_assertion 'cp readme ../test' + + run git-check-assertions + + assert_success + assert_size_zero ../test +} + +@test "should restore index after a failure" { + git checkout -b feature + commit_with_assertion $'echo blah >> readme\ngit add readme\nexit 3' + + run git-check-assertions + + assert_failure + assert_size_zero readme +} + @test "assertions should run against the version of the code inside of the commit" { git checkout -b feature echo commit1 >readme @@ -157,6 +188,7 @@ commit_with_assertion() { run git-check-assertions assert_success + assert_file_contains src goodbye } @test "assert_success should succeed if the executed command succeeded" {