git: 9front

Download patch

ref: deabd78a00cc1944dae7df82647019e4d85f9041
parent: 3101971eee4a10699959a45e4f7f75fe9e8f3005
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Sat Sep 14 15:21:17 EDT 2024

git/test: improve ftype test (also test dir -> file transition)

The ftype.rc test now tests both: file->dir and dir->file changes.

--- a/sys/src/cmd/git/test/ftype.rc
+++ b/sys/src/cmd/git/test/ftype.rc
@@ -11,11 +11,15 @@
 	cd scratch/repo1
 	repo1=`{pwd}
 	$G/init
+
+	# in repo1:
+	#	create A as a file
+	#	create B as a directory
 	echo A > A
 	mkdir B
-	echo B > B/B
-	$G/add A
-	$G/commit -m 1 A
+	echo C > B/C
+	$G/add A B/C
+	$G/commit -m 1 A B/C
 
 	cd ..
 	$G/clone $repo1 repo2
@@ -22,14 +26,19 @@
 	cd repo2
 	repo2=`{pwd}
 
+	diff -r $repo1/A $repo2/A || exit 'clone fail A'
+	diff -r $repo1/B $repo2/B || exit 'clone fail B'
+
 	cd $repo1
-	rm A
-	rm -rf B
+
+	# in repo1:
+	#	make A into a directory
+	#	make B into a file
+	rm -r A B
 	mkdir A
 	echo B > A/B
 	echo B > B
-	$G/add A/B
-	$G/add B
+	$G/add A/B B
 	$G/commit -m 2 A/B B
 
 	# pull repo2 after file changed to directory in repo1
@@ -36,6 +45,8 @@
 	cd $repo2
 	$G/pull
 
-	# make sure A is the same in both repos
-	diff -r $repo1/A $repo2/A || echo fuck
+	diff -r $repo1/A $repo2/A || exit 'pull fail A'
+	diff -r $repo1/B $repo2/B || exit 'pull fail B'
+
+	exit ''
 }
--