diff mbox series

[1/3] t3903: document a pair of directory/file bugs

Message ID bc66a6ae75d03858f48634612bb60062cc78f5eb.1631065427.git.gitgitgadget@gmail.com (mailing list archive)
State Superseded
Headers show
Series Fix D/F issues in stash | expand

Commit Message

Elijah Newren Sept. 8, 2021, 1:43 a.m. UTC
From: Elijah Newren <newren@gmail.com>

Signed-off-by: Elijah Newren <newren@gmail.com>
---
 t/t3903-stash.sh | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

Comments

Junio C Hamano Sept. 8, 2021, 4:19 p.m. UTC | #1
"Elijah Newren via GitGitGadget" <gitgitgadget@gmail.com> writes:

> From: Elijah Newren <newren@gmail.com>
>
> Signed-off-by: Elijah Newren <newren@gmail.com>
> ---
>  t/t3903-stash.sh | 38 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 38 insertions(+)
>
> diff --git a/t/t3903-stash.sh b/t/t3903-stash.sh
> index 873aa56e359..0727a494aa4 100755
> --- a/t/t3903-stash.sh
> +++ b/t/t3903-stash.sh
> @@ -1307,4 +1307,42 @@ test_expect_success 'stash -c stash.useBuiltin=false warning ' '
>  	test_must_be_empty err
>  '
>  
> +test_expect_failure 'git stash succeeds despite directory/file change' '
> +	test_create_repo directory_file_switch_v1 &&
> +	(
> +		cd directory_file_switch_v1 &&
> +		test_commit init &&
> +
> +		test_write_lines this file has some words >filler &&
> +		git add filler &&
> +		git commit -m filler &&
> +
> +		git rm filler &&
> +		mkdir filler &&
> +		echo contents >filler/file &&
> +		cp filler/file expect &&
> +		git stash push

Creating 'expect' that is not used---perhaps this side also wants to
apply the created stash and check the result, like the other side
does, or something?

Of course, an obvious alternative is to stop making a needless
'expect'.

> +	)
> +'
> +
> +test_expect_failure 'git stash can pop directory/file saved changes' '
> +	test_create_repo directory_file_switch_v2 &&
> +	(
> +		cd directory_file_switch_v2 &&
> +		test_commit init &&
> +
> +		test_write_lines this file has some words >filler &&
> +		git add filler &&
> +		git commit -m filler &&
> +
> +		git rm filler &&
> +		mkdir filler &&
> +		echo contents >filler/file &&
> +		cp filler/file expect &&
> +		git stash push --include-untracked &&
> +		git stash apply --index &&
> +		test_cmp expect filler/file
> +	)
> +'
> +
>  test_done
diff mbox series

Patch

diff --git a/t/t3903-stash.sh b/t/t3903-stash.sh
index 873aa56e359..0727a494aa4 100755
--- a/t/t3903-stash.sh
+++ b/t/t3903-stash.sh
@@ -1307,4 +1307,42 @@  test_expect_success 'stash -c stash.useBuiltin=false warning ' '
 	test_must_be_empty err
 '
 
+test_expect_failure 'git stash succeeds despite directory/file change' '
+	test_create_repo directory_file_switch_v1 &&
+	(
+		cd directory_file_switch_v1 &&
+		test_commit init &&
+
+		test_write_lines this file has some words >filler &&
+		git add filler &&
+		git commit -m filler &&
+
+		git rm filler &&
+		mkdir filler &&
+		echo contents >filler/file &&
+		cp filler/file expect &&
+		git stash push
+	)
+'
+
+test_expect_failure 'git stash can pop directory/file saved changes' '
+	test_create_repo directory_file_switch_v2 &&
+	(
+		cd directory_file_switch_v2 &&
+		test_commit init &&
+
+		test_write_lines this file has some words >filler &&
+		git add filler &&
+		git commit -m filler &&
+
+		git rm filler &&
+		mkdir filler &&
+		echo contents >filler/file &&
+		cp filler/file expect &&
+		git stash push --include-untracked &&
+		git stash apply --index &&
+		test_cmp expect filler/file
+	)
+'
+
 test_done