Download raw body.
New and fixed tests
Hello,
This adds tests for the new update -q, checkout -q, and status -S
options. Also, there are fixes for the new output of checkout.
Everything look ok?
--
Tracey Emery
diff 00357e4dc78f7f5bd12eceaa07592ab743996e12 /home/tracey/src/got
blob - b6c5784556b7f6d287d651006dc0ccee50de3901
file + regress/cmdline/checkout.sh
--- regress/cmdline/checkout.sh
+++ regress/cmdline/checkout.sh
@@ -23,7 +23,9 @@ test_checkout_basic() {
echo "A $testroot/wt/beta" >> $testroot/stdout.expected
echo "A $testroot/wt/epsilon/zeta" >> $testroot/stdout.expected
echo "A $testroot/wt/gamma/delta" >> $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
got checkout $testroot/repo $testroot/wt > $testroot/stdout
ret="$?"
@@ -62,7 +64,9 @@ test_checkout_dir_exists() {
echo "A $testroot/wt/beta" >> $testroot/stdout.expected
echo "A $testroot/wt/epsilon/zeta" >> $testroot/stdout.expected
echo "A $testroot/wt/gamma/delta" >> $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
mkdir $testroot/wt
@@ -103,7 +107,9 @@ test_checkout_dir_not_empty() {
echo "A $testroot/wt/beta" >> $testroot/stdout.expected
echo "A $testroot/wt/epsilon/zeta" >> $testroot/stdout.expected
echo "A $testroot/wt/gamma/delta" >> $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
mkdir $testroot/wt
touch $testroot/wt/foo
@@ -146,7 +152,9 @@ test_checkout_sets_xbit() {
git_commit $testroot/repo -m "adding executable file"
echo "A $testroot/wt/xfile" > $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
got checkout $testroot/repo $testroot/wt > $testroot/stdout
ret="$?"
@@ -226,7 +234,9 @@ test_checkout_tag() {
echo "A $testroot/wt/beta" >> $testroot/stdout.expected
echo "A $testroot/wt/epsilon/zeta" >> $testroot/stdout.expected
echo "A $testroot/wt/gamma/delta" >> $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
got checkout -c $tag $testroot/repo $testroot/wt > $testroot/stdout
ret="$?"
@@ -271,7 +281,9 @@ test_checkout_ignores_submodules() {
echo "A $testroot/wt/beta" >> $testroot/stdout.expected
echo "A $testroot/wt/epsilon/zeta" >> $testroot/stdout.expected
echo "A $testroot/wt/gamma/delta" >> $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
got checkout $testroot/repo $testroot/wt > $testroot/stdout
ret="$?"
@@ -313,7 +325,9 @@ test_checkout_read_only() {
echo "A $testroot/wt/beta" >> $testroot/stdout.expected
echo "A $testroot/wt/epsilon/zeta" >> $testroot/stdout.expected
echo "A $testroot/wt/gamma/delta" >> $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
got checkout $testroot/repo $testroot/wt \
> $testroot/stdout 2> $testroot/stderr
@@ -402,7 +416,9 @@ test_checkout_into_nonempty_dir() {
echo "? $testroot/wt/beta" >> $testroot/stdout.expected
echo "? $testroot/wt/epsilon/zeta" >> $testroot/stdout.expected
echo "? $testroot/wt/gamma/delta" >> $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
got checkout -E $testroot/repo $testroot/wt > $testroot/stdout
ret="$?"
@@ -423,7 +439,9 @@ test_checkout_into_nonempty_dir() {
echo "E $testroot/wt/beta" >> $testroot/stdout.expected
echo "E $testroot/wt/epsilon/zeta" >> $testroot/stdout.expected
echo "E $testroot/wt/gamma/delta" >> $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
got checkout -E $testroot/repo $testroot/wt > $testroot/stdout
ret="$?"
@@ -461,7 +479,9 @@ test_checkout_into_nonempty_dir() {
echo "E $testroot/wt/beta" >> $testroot/stdout.expected
echo "E $testroot/wt/epsilon/zeta" >> $testroot/stdout.expected
echo "E $testroot/wt/gamma/delta" >> $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
got checkout -E $testroot/repo $testroot/wt > $testroot/stdout
ret="$?"
@@ -536,7 +556,9 @@ test_checkout_symlink() {
echo "A $testroot/wt/nonexistent.link" >> $testroot/stdout.expected
echo "A $testroot/wt/passwd.link" >> $testroot/stdout.expected
echo "A $testroot/wt/passwd2.link" >> $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
cmp -s $testroot/stdout.expected $testroot/stdout
ret="$?"
@@ -785,6 +807,43 @@ test_checkout_repo_with_unknown_extension() {
test_done "$testroot" "$ret"
}
+test_checkout_quiet() {
+ local testroot=`test_init checkout_quiet`
+
+ echo -n "Checked out refs/heads/master: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
+
+ got checkout -q $testroot/repo $testroot/wt > $testroot/stdout
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ cmp -s $testroot/stdout.expected $testroot/stdout
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/stdout.expected $testroot/stdout
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ echo "alpha" > $testroot/content.expected
+ echo "beta" >> $testroot/content.expected
+ echo "zeta" >> $testroot/content.expected
+ echo "delta" >> $testroot/content.expected
+ cat $testroot/wt/alpha $testroot/wt/beta $testroot/wt/epsilon/zeta \
+ $testroot/wt/gamma/delta > $testroot/content
+
+ cmp -s $testroot/content.expected $testroot/content
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/content.expected $testroot/content
+ fi
+ test_done "$testroot" "$ret"
+}
+
test_parseargs "$@"
run_test test_checkout_basic
run_test test_checkout_dir_exists
@@ -798,3 +857,4 @@ run_test test_checkout_into_nonempty_dir
run_test test_checkout_symlink
run_test test_checkout_symlink_relative_wtpath
run_test test_checkout_repo_with_unknown_extension
+run_test test_checkout_quiet
blob - 487d5e7d9c6ed6c9c2532b3a7fc2dd808e7f3284
file + regress/cmdline/import.sh
--- regress/cmdline/import.sh
+++ regress/cmdline/import.sh
@@ -104,7 +104,9 @@ test_import_basic() {
echo "A $testroot/wt/beta" >> $testroot/stdout.expected
echo "A $testroot/wt/epsilon/zeta" >> $testroot/stdout.expected
echo "A $testroot/wt/gamma/delta" >> $testroot/stdout.expected
- echo "Now shut up and hack" >> $testroot/stdout.expected
+ echo -n "Checked out refs/heads/main: " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo "\nNow shut up and hack" >> $testroot/stdout.expected
got checkout $testroot/repo $testroot/wt > $testroot/stdout
ret="$?"
blob - 8c6c24e701901e9c2ad8922e593794b9365ff248
file + regress/cmdline/status.sh
--- regress/cmdline/status.sh
+++ regress/cmdline/status.sh
@@ -803,6 +803,133 @@ test_status_status_code() {
test_done "$testroot" "$ret"
}
+test_status_no_status_code() {
+ local testroot=`test_init status_no_status_code`
+
+ got checkout $testroot/repo $testroot/wt > /dev/null
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ echo "modified alpha" > $testroot/wt/alpha
+ (cd $testroot/wt && got rm beta >/dev/null)
+ echo "unversioned file" > $testroot/wt/foo
+ rm $testroot/wt/epsilon/zeta
+ touch $testroot/wt/beta
+ echo "new file" > $testroot/wt/new
+ (cd $testroot/wt && got add new >/dev/null)
+
+ (cd $testroot/wt && got status -S xDM \
+ > $testroot/stdout 2> $testroot/stderr)
+ ret="$?"
+ if [ "$ret" = "0" ]; then
+ echo "status succeeded unexpectedly" >&2
+ test_done "$testroot" "1"
+ return 1
+ fi
+
+ echo "got: invalid status code 'x'" > $testroot/stderr.expected
+ cmp -s $testroot/stderr.expected $testroot/stderr
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/stderr.expected $testroot/stderr
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ echo 'M alpha' > $testroot/stdout.expected
+ (cd $testroot/wt && got status -S D?A\! > $testroot/stdout)
+ cmp -s $testroot/stdout.expected $testroot/stdout
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/stdout.expected $testroot/stdout
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ echo 'D beta' > $testroot/stdout.expected
+ (cd $testroot/wt && got status -S M?A\! > $testroot/stdout)
+ cmp -s $testroot/stdout.expected $testroot/stdout
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/stdout.expected $testroot/stdout
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ echo '! epsilon/zeta' > $testroot/stdout.expected
+ echo '? foo' >> $testroot/stdout.expected
+ (cd $testroot/wt && got status -S MDA > $testroot/stdout)
+ cmp -s $testroot/stdout.expected $testroot/stdout
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/stdout.expected $testroot/stdout
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ echo 'A new' > $testroot/stdout.expected
+ (cd $testroot/wt && got status -S MD?\! > $testroot/stdout)
+ cmp -s $testroot/stdout.expected $testroot/stdout
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/stdout.expected $testroot/stdout
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ (cd $testroot/wt && got stage new > $testroot/stdout)
+
+ echo ' A new' > $testroot/stdout.expected
+ (cd $testroot/wt && got status -S MD?\! > $testroot/stdout)
+ cmp -s $testroot/stdout.expected $testroot/stdout
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/stdout.expected $testroot/stdout
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ echo 'changed file new' > $testroot/wt/new
+
+ echo 'M alpha' > $testroot/stdout.expected
+ echo 'MA new' >> $testroot/stdout.expected
+ (cd $testroot/wt && got status -S D?\! > $testroot/stdout)
+ cmp -s $testroot/stdout.expected $testroot/stdout
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/stdout.expected $testroot/stdout
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ echo 'M alpha' > $testroot/stdout.expected
+ (cd $testroot/wt && got status -S AD?\! > $testroot/stdout)
+ cmp -s $testroot/stdout.expected $testroot/stdout
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/stdout.expected $testroot/stdout
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ rm $testroot/stdout.expected
+ touch $testroot/stdout.expected
+
+ (cd $testroot/wt && got status -S MD?\! > $testroot/stdout)
+ cmp -s $testroot/stdout.expected $testroot/stdout
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/stdout.expected $testroot/stdout
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ test_done "$testroot" "$ret"
+}
+
test_status_empty_file() {
local testroot=`test_init status_empty_file`
@@ -873,4 +1000,5 @@ run_test test_status_many_paths
run_test test_status_cvsignore
run_test test_status_gitignore
run_test test_status_status_code
+run_test test_status_no_status_code
run_test test_status_empty_file
blob - b75e01faf9766a5bd715ecc25bc1373dc6f135a1
file + regress/cmdline/update.sh
--- regress/cmdline/update.sh
+++ regress/cmdline/update.sh
@@ -2679,7 +2679,44 @@ test_update_file_skipped_due_to_obstruction() {
test_done "$testroot" "$ret"
}
+test_update_quiet() {
+ local testroot=`test_init update_quiet`
+ got checkout $testroot/repo $testroot/wt > /dev/null
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ echo "modified alpha" > $testroot/repo/alpha
+ git_commit $testroot/repo -m "modified alpha"
+
+ echo -n "Updated to commit " >> $testroot/stdout.expected
+ git_show_head $testroot/repo >> $testroot/stdout.expected
+ echo >> $testroot/stdout.expected
+
+ (cd $testroot/wt && got update -q > $testroot/stdout)
+
+ cmp -s $testroot/stdout.expected $testroot/stdout
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/stdout.expected $testroot/stdout
+ test_done "$testroot" "$ret"
+ return 1
+ fi
+
+ echo "modified alpha" > $testroot/content.expected
+ cat $testroot/wt/alpha > $testroot/content
+
+ cmp -s $testroot/content.expected $testroot/content
+ ret="$?"
+ if [ "$ret" != "0" ]; then
+ diff -u $testroot/content.expected $testroot/content
+ fi
+ test_done "$testroot" "$ret"
+}
+
test_parseargs "$@"
run_test test_update_basic
run_test test_update_adds_file
@@ -2722,3 +2759,4 @@ run_test test_update_symlink_conflicts
run_test test_update_single_file
run_test test_update_file_skipped_due_to_conflict
run_test test_update_file_skipped_due_to_obstruction
+run_test test_update_quiet
New and fixed tests