git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] reflog test: add more tests for 'reflog delete'
@ 2008-08-09 23:33 Pieter de Bie
  2008-08-09 23:33 ` [PATCH 2/2] builtin-reflog: fix deletion of HEAD entries Pieter de Bie
  0 siblings, 1 reply; 9+ messages in thread
From: Pieter de Bie @ 2008-08-09 23:33 UTC (permalink / raw)
  To: Junio C Hamano, Johannes Schindelin, Git Mailinglist; +Cc: Pieter de Bie

This adds more tests for 'reflog delete' and marks it as
broken, as currently a call to 'git reflog delete HEAD@{1}'
deletes entries in the currently checked out branch's log,
not the HEAD log.

Noticed by John Wiegley

Signed-off-by: Pieter de Bie <pdebie@ai.rug.nl>
---

	johnw on IRC noticed this. This adds a test that shows the
	problem. The next patch fixes the issue but I'm not sure of
	the implementation. Perhaps we just shouldn't resolve symbolic
	refs? I'm not really sure which functions to use then.

 t/t1410-reflog.sh |   22 ++++++++++++++++++----
 1 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/t/t1410-reflog.sh b/t/t1410-reflog.sh
index 73f830d..3b9860e 100755
--- a/t/t1410-reflog.sh
+++ b/t/t1410-reflog.sh
@@ -175,7 +175,7 @@ test_expect_success 'recover and check' '
 
 '
 
-test_expect_success 'delete' '
+test_expect_failure 'delete' '
 	echo 1 > C &&
 	test_tick &&
 	git commit -m rat C &&
@@ -188,16 +188,30 @@ test_expect_success 'delete' '
 	test_tick &&
 	git commit -m tiger C &&
 
-	test 5 = $(git reflog | wc -l) &&
+	HEAD_entry_count=$(git reflog | wc -l)
+	master_entry_count=$(git reflog show master | wc -l)
+
+	test $HEAD_entry_count = 5 &&
+	test $master_entry_count = 5 &&
+
 
 	git reflog delete master@{1} &&
 	git reflog show master > output &&
-	test 4 = $(wc -l < output) &&
+	test $(($master_entry_count - 1)) = $(wc -l < output) &&
+	test $HEAD_entry_count = $(git reflog | wc -l) &&
 	! grep ox < output &&
 
+	master_entry_count=$(wc -l < output)
+
+	git reflog delete HEAD@{1} &&
+	test $(($HEAD_entry_count -1)) = $(git reflog | wc -l) &&
+	test $master_entry_count = $(git reflog show master | wc -l) &&
+
+	HEAD_entry_count=$(git reflog | wc -l)
+
 	git reflog delete master@{07.04.2005.15:15:00.-0700} &&
 	git reflog show master > output &&
-	test 3 = $(wc -l < output) &&
+	test $(($master_entry_count - 1)) = $(wc -l < output) &&
 	! grep dragon < output
 
 '
-- 
1.6.0.rc0.320.g49281

^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2008-08-10 20:23 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-08-09 23:33 [PATCH 1/2] reflog test: add more tests for 'reflog delete' Pieter de Bie
2008-08-09 23:33 ` [PATCH 2/2] builtin-reflog: fix deletion of HEAD entries Pieter de Bie
2008-08-10  0:44   ` Junio C Hamano
2008-08-10  1:01     ` Junio C Hamano
2008-08-10  9:35       ` Pieter de Bie
2008-08-10 11:12         ` Johannes Sixt
2008-08-10 18:52         ` Junio C Hamano
2008-08-10 19:04           ` Pieter de Bie
2008-08-10 20:22             ` [PATCH] builtin-reflog: Allow reflog expire to name partial ref Pieter de Bie

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).