tests: skip large filesystem tests on MacOS

Skip tests that create large filesystem on MacOS, since HFS doesn't
have sparse file support and this causes testing to be uninterruptible
for minutes while mke2fs is writing to some large non-zero offset and
filling up the test filesystem.  Since most testing is done on Linux
this shouldn't cause a significant gap in testing coverage.

Tests skipped are d_dumpe2fs_group_only, m_bigjournal, m_hugefile,
t_iexpand_full, t_iexpand_mcsum, and t_uninit_bg_rm.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
diff --git a/tests/d_dumpe2fs_group_only/script b/tests/d_dumpe2fs_group_only/script
index 127502f..50481f0 100644
--- a/tests/d_dumpe2fs_group_only/script
+++ b/tests/d_dumpe2fs_group_only/script
@@ -1,3 +1,9 @@
+if [ $(uname -s) = "Darwin" ]; then
+	# creates a 4GB filesystem
+	echo "$test_name: $DESCRIPTION: skipped for HFS+ (no sparse files)"
+	return 0
+fi
+
 if test -x $DEBUGFS_EXE; then
 
 FSCK_OPT=-fy
diff --git a/tests/m_bigjournal/script b/tests/m_bigjournal/script
index 576d99e..96ea082 100644
--- a/tests/m_bigjournal/script
+++ b/tests/m_bigjournal/script
@@ -4,6 +4,7 @@
 export DUMPE2FS_IGNORE_80COL
 MKE2FS_OPTS="-t ext4 -G 512 -N 1280 -J size=5000 -q -E lazy_journal_init,lazy_itable_init,nodiscard"
 if [ $(uname -s) = "Darwin" ]; then
+	# creates a 44GB filesystem
 	echo "$test_name: $DESCRIPTION: skipped for HFS+ (no sparse files)"
 	return 0
 fi
diff --git a/tests/m_hugefile/script b/tests/m_hugefile/script
index 72af8b8..5619f64 100644
--- a/tests/m_hugefile/script
+++ b/tests/m_hugefile/script
@@ -3,6 +3,12 @@
 EXP=$test_dir/expect
 CONF=$TMPFILE.conf
 
+if [ $(uname -s) = "Darwin" ]; then
+	# creates a 4TB filesystem
+	echo "$test_name: $DESCRIPTION: skipped for HFS+ (no sparse files)"
+	return 0
+fi
+
 #gzip -d < $EXP.gz > $EXP
 
 cat > $CONF << ENDL
diff --git a/tests/t_iexpand_full/script b/tests/t_iexpand_full/script
index 779c66d..f8565a7 100644
--- a/tests/t_iexpand_full/script
+++ b/tests/t_iexpand_full/script
@@ -1,5 +1,11 @@
 if test -x $RESIZE2FS_EXE -a -x $DEBUGFS_EXE; then
 
+if [ $(uname -s) = "Darwin" ]; then
+	# creates a 3GB filesystem
+	echo "$test_name: $DESCRIPTION: skipped for HFS+ (no sparse files)"
+	return 0
+fi
+
 FSCK_OPT=-fn
 OUT=$test_name.log
 EXP=$test_dir/expect
diff --git a/tests/t_iexpand_mcsum/script b/tests/t_iexpand_mcsum/script
index 3057dba..4b584d3 100644
--- a/tests/t_iexpand_mcsum/script
+++ b/tests/t_iexpand_mcsum/script
@@ -1,4 +1,9 @@
 if test -x $RESIZE2FS_EXE -a -x $DEBUGFS_EXE; then
+if [ $(uname -s) = "Darwin" ]; then
+	# creates a 3GB filesystem
+	echo "$test_name: $DESCRIPTION: skipped for HFS+ (no sparse files)"
+	return 0
+fi
 
 FSCK_OPT=-fn
 OUT=$test_name.log
diff --git a/tests/t_uninit_bg_rm/script b/tests/t_uninit_bg_rm/script
index cd397c5..308ef25 100644
--- a/tests/t_uninit_bg_rm/script
+++ b/tests/t_uninit_bg_rm/script
@@ -3,6 +3,12 @@
 FSCK_OPT=-yf
 EXP=$test_dir/expect
 
+if [ $(uname -s) = "Darwin" ]; then
+	# creates a 10GB filesystem
+	echo "$test_name: $DESCRIPTION: skipped for HFS+ (no sparse files)"
+	return 0
+fi
+
 cp /dev/null $TMPFILE
 rm -f $OUT.new