summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/suites/base.bash14
-rw-r--r--test/suites/cleanup.bash179
-rw-r--r--test/suites/depend.bash54
-rw-r--r--test/suites/direct.bash37
-rw-r--r--test/suites/serialize_diagnostics.bash16
5 files changed, 1 insertions, 299 deletions
diff --git a/test/suites/base.bash b/test/suites/base.bash
index e188b059..dc02939a 100644
--- a/test/suites/base.bash
+++ b/test/suites/base.bash
@@ -794,20 +794,6 @@ EOF
expect_stat 'compiler check failed' 1
# -------------------------------------------------------------------------
- TEST "CCACHE_RECACHE should remove previous .stderr"
-
- $CCACHE_COMPILE -c test1.c
- expect_stat 'cache hit (preprocessed)' 0
- expect_stat 'cache miss' 1
- expect_file_count 0 '*.stderr' $CCACHE_DIR
-
- obj_file=`find $CCACHE_DIR -name '*.o'`
- stderr_file=`echo $obj_file | sed 's/..$/.stderr/'`
- test -n "$stderr_file" && echo "Warning: foo" >$stderr_file
- CCACHE_RECACHE=1 $CCACHE_COMPILE -c test1.c
- expect_file_count 0 '*.stderr' $CCACHE_DIR
-
- # -------------------------------------------------------------------------
TEST "No object file"
cat <<'EOF' >test_no_obj.c
diff --git a/test/suites/cleanup.bash b/test/suites/cleanup.bash
index 37710c13..cc3ca42e 100644
--- a/test/suites/cleanup.bash
+++ b/test/suites/cleanup.bash
@@ -3,23 +3,12 @@ prepare_cleanup_test_dir() {
rm -rf $dir
mkdir -p $dir
- if $AGGREGATED; then
for i in $(seq 0 9); do
printf '%4017s' '' | tr ' ' 'A' >$dir/result$i-4017.result
backdate $((3 * i + 1)) $dir/result$i-4017.result
done
# NUMFILES: 10, TOTALSIZE: 13 KiB, MAXFILES: 0, MAXSIZE: 0
echo "0 0 0 0 0 0 0 0 0 0 0 10 13 0 0" >$dir/stats
- else
- for i in $(seq 0 9); do
- printf '%4017s' '' | tr ' ' 'A' >$dir/result$i-4017.o
- backdate $((3 * i + 1)) $dir/result$i-4017.o
- backdate $((3 * i + 2)) $dir/result$i-4017.d
- backdate $((3 * i + 3)) $dir/result$i-4017.stderr
- done
- # NUMFILES: 30, TOTALSIZE: 40 KiB, MAXFILES: 0, MAXSIZE: 0
- echo "0 0 0 0 0 0 0 0 0 0 0 30 40 0 0" >$dir/stats
- fi
}
SUITE_cleanup() {
@@ -29,15 +18,8 @@ SUITE_cleanup() {
prepare_cleanup_test_dir $CCACHE_DIR/a
$CCACHE -C >/dev/null
- if $AGGREGATED; then
expect_file_count 0 '*.result' $CCACHE_DIR
expect_stat 'files in cache' 0
- else
- expect_file_count 0 '*.o' $CCACHE_DIR
- expect_file_count 0 '*.d' $CCACHE_DIR
- expect_file_count 0 '*.stderr' $CCACHE_DIR
- expect_stat 'files in cache' 0
- fi
expect_stat 'cleanups performed' 1
# -------------------------------------------------------------------------
@@ -47,15 +29,8 @@ SUITE_cleanup() {
$CCACHE -F 0 -M 0 >/dev/null
$CCACHE -c >/dev/null
- if $AGGREGATED; then
expect_file_count 10 '*.result' $CCACHE_DIR
expect_stat 'files in cache' 10
- else
- expect_file_count 10 '*.o' $CCACHE_DIR
- expect_file_count 10 '*.d' $CCACHE_DIR
- expect_file_count 10 '*.stderr' $CCACHE_DIR
- expect_stat 'files in cache' 30
- fi
expect_stat 'cleanups performed' 0
# -------------------------------------------------------------------------
@@ -65,46 +40,21 @@ SUITE_cleanup() {
# No cleanup needed.
#
- if $AGGREGATED; then
# 10 * 16 = 160
$CCACHE -F 160 -M 0 >/dev/null
- else
- # 30 * 16 = 480
- $CCACHE -F 480 -M 0 >/dev/null
- fi
$CCACHE -c >/dev/null
- if $AGGREGATED; then
expect_file_count 10 '*.result' $CCACHE_DIR
expect_stat 'files in cache' 10
- else
- expect_file_count 10 '*.o' $CCACHE_DIR
- expect_file_count 10 '*.d' $CCACHE_DIR
- expect_file_count 10 '*.stderr' $CCACHE_DIR
- expect_stat 'files in cache' 30
- fi
expect_stat 'cleanups performed' 0
# Reduce file limit
#
- if $AGGREGATED; then
# 7 * 16 = 112
$CCACHE -F 112 -M 0 >/dev/null
- else
- # 22 * 16 = 352
- $CCACHE -F 352 -M 0 >/dev/null
- fi
$CCACHE -c >/dev/null
- if $AGGREGATED; then
expect_file_count 7 '*.result' $CCACHE_DIR
expect_stat 'files in cache' 7
- else
- expect_file_count 7 '*.o' $CCACHE_DIR
- expect_file_count 7 '*.d' $CCACHE_DIR
- expect_file_count 8 '*.stderr' $CCACHE_DIR
- expect_stat 'files in cache' 22
- fi
expect_stat 'cleanups performed' 1
- if $AGGREGATED; then
for i in 0 1 2; do
file=$CCACHE_DIR/a/result$i-4017.result
expect_file_missing $CCACHE_DIR/a/result$i-4017.result
@@ -113,17 +63,6 @@ SUITE_cleanup() {
file=$CCACHE_DIR/a/result$i-4017.result
expect_file_exists $file
done
- else
-
- for i in 0 1 2; do
- file=$CCACHE_DIR/a/result$i-4017.o
- expect_file_missing $CCACHE_DIR/a/result$i-4017.o
- done
- for i in 3 4 5 6 7 8 9; do
- file=$CCACHE_DIR/a/result$i-4017.o
- expect_file_exists $file
- done
- fi
# -------------------------------------------------------------------------
TEST "Forced cache cleanup, size limit"
@@ -139,17 +78,9 @@ SUITE_cleanup() {
$CCACHE -F 0 -M 256K >/dev/null
$CCACHE -c >/dev/null
- if $AGGREGATED; then
expect_file_count 3 '*.result' $CCACHE_DIR
expect_stat 'files in cache' 3
- else
- expect_file_count 3 '*.o' $CCACHE_DIR
- expect_file_count 4 '*.d' $CCACHE_DIR
- expect_file_count 4 '*.stderr' $CCACHE_DIR
- expect_stat 'files in cache' 11
- fi
expect_stat 'cleanups performed' 1
- if $AGGREGATED; then
for i in 0 1 2 3 4 5 6; do
file=$CCACHE_DIR/a/result$i-4017.result
expect_file_missing $file
@@ -158,16 +89,6 @@ SUITE_cleanup() {
file=$CCACHE_DIR/a/result$i-4017.result
expect_file_exists $file
done
- else
- for i in 0 1 2 3 4 5 6; do
- file=$CCACHE_DIR/a/result$i-4017.o
- expect_file_missing $file
- done
- for i in 7 8 9; do
- file=$CCACHE_DIR/a/result$i-4017.o
- expect_file_exists $file
- done
- fi
# -------------------------------------------------------------------------
TEST "Automatic cache cleanup, limit_multiple 0.9"
@@ -176,34 +97,16 @@ SUITE_cleanup() {
prepare_cleanup_test_dir $CCACHE_DIR/$x
done
- if $AGGREGATED; then
$CCACHE -F 160 -M 0 >/dev/null
- else
- $CCACHE -F 480 -M 0 >/dev/null
- fi
- if $AGGREGATED; then
expect_file_count 160 '*.result' $CCACHE_DIR
expect_stat 'files in cache' 160
- else
- expect_file_count 160 '*.o' $CCACHE_DIR
- expect_file_count 160 '*.d' $CCACHE_DIR
- expect_file_count 160 '*.stderr' $CCACHE_DIR
- expect_stat 'files in cache' 480
- fi
expect_stat 'cleanups performed' 0
touch empty.c
CCACHE_LIMIT_MULTIPLE=0.9 $CCACHE_COMPILE -c empty.c -o empty.o
- if $AGGREGATED; then
expect_file_count 159 '*.result' $CCACHE_DIR
expect_stat 'files in cache' 159
- else
- expect_file_count 159 '*.o' $CCACHE_DIR
- expect_file_count 159 '*.d' $CCACHE_DIR
- expect_file_count 159 '*.stderr' $CCACHE_DIR
- expect_stat 'files in cache' 477
- fi
expect_stat 'cleanups performed' 1
# -------------------------------------------------------------------------
@@ -213,123 +116,45 @@ SUITE_cleanup() {
prepare_cleanup_test_dir $CCACHE_DIR/$x
done
- if $AGGREGATED; then
$CCACHE -F 160 -M 0 >/dev/null
- else
- $CCACHE -F 480 -M 0 >/dev/null
- fi
- if $AGGREGATED; then
expect_file_count 160 '*.result' $CCACHE_DIR
expect_stat 'files in cache' 160
- else
- expect_file_count 160 '*.o' $CCACHE_DIR
- expect_file_count 160 '*.d' $CCACHE_DIR
- expect_file_count 160 '*.stderr' $CCACHE_DIR
- expect_stat 'files in cache' 480
- fi
expect_stat 'cleanups performed' 0
touch empty.c
CCACHE_LIMIT_MULTIPLE=0.7 $CCACHE_COMPILE -c empty.c -o empty.o
- if $AGGREGATED; then
expect_file_count 157 '*.result' $CCACHE_DIR
expect_stat 'files in cache' 157
- else
- expect_file_count 157 '*.o' $CCACHE_DIR
- expect_file_count 157 '*.d' $CCACHE_DIR
- expect_file_count 157 '*.stderr' $CCACHE_DIR
- expect_stat 'files in cache' 471
- fi
expect_stat 'cleanups performed' 1
# -------------------------------------------------------------------------
- if ! $AGGREGATED; then
- TEST ".o file is removed before .stderr"
-
- prepare_cleanup_test_dir $CCACHE_DIR/a
- $CCACHE -F 464 -M 0 >/dev/null
- backdate 0 $CCACHE_DIR/a/result9-4017.stderr
- $CCACHE -c >/dev/null
- expect_file_missing $CCACHE_DIR/a/result9-4017.stderr
- expect_file_missing $CCACHE_DIR/a/result9-4017.o
-
- # Counters expectedly doesn't match reality if x.stderr is found before
- # x.o and the cleanup stops before x.o is found.
- expect_stat 'files in cache' 29
- expect_file_count 28 '*.*' $CCACHE_DIR/a
- fi
-
- # -------------------------------------------------------------------------
- if ! $AGGREGATED; then
- TEST ".stderr file is not removed before .o"
-
- prepare_cleanup_test_dir $CCACHE_DIR/a
- $CCACHE -F 464 -M 0 >/dev/null
- backdate 0 $CCACHE_DIR/a/result9-4017.o
- $CCACHE -c >/dev/null
- expect_file_exists $CCACHE_DIR/a/result9-4017.stderr
- expect_file_missing $CCACHE_DIR/a/result9-4017.o
-
- expect_stat 'files in cache' 29
- expect_file_count 29 '*.*' $CCACHE_DIR/a
- fi
-
- # -------------------------------------------------------------------------
TEST "No cleanup of new unknown file"
prepare_cleanup_test_dir $CCACHE_DIR/a
touch $CCACHE_DIR/a/abcd.unknown
$CCACHE -F 0 -M 0 -c >/dev/null # update counters
- if $AGGREGATED; then
expect_stat 'files in cache' 11
- else
- expect_stat 'files in cache' 31
- fi
- if $AGGREGATED; then
$CCACHE -F 160 -M 0 >/dev/null
- else
- $CCACHE -F 480 -M 0 >/dev/null
- fi
$CCACHE -c >/dev/null
expect_file_exists $CCACHE_DIR/a/abcd.unknown
- if $AGGREGATED; then
expect_stat 'files in cache' 10
- else
- expect_stat 'files in cache' 30
- fi
# -------------------------------------------------------------------------
TEST "Cleanup of old unknown file"
prepare_cleanup_test_dir $CCACHE_DIR/a
- if $AGGREGATED; then
$CCACHE -F 160 -M 0 >/dev/null
- else
- $CCACHE -F 480 -M 0 >/dev/null
- fi
touch $CCACHE_DIR/a/abcd.unknown
backdate $CCACHE_DIR/a/abcd.unknown
$CCACHE -F 0 -M 0 -c >/dev/null # update counters
- if $AGGREGATED; then
expect_stat 'files in cache' 11
- else
- expect_stat 'files in cache' 31
- fi
- if $AGGREGATED; then
$CCACHE -F 160 -M 0 -c >/dev/null
- else
- $CCACHE -F 480 -M 0 -c >/dev/null
- fi
expect_file_missing $CCACHE_DIR/a/abcd.unknown
- if $AGGREGATED; then
expect_stat 'files in cache' 10
- else
- expect_stat 'files in cache' 30
- fi
# -------------------------------------------------------------------------
TEST "Cleanup of tmp file"
@@ -352,9 +177,5 @@ SUITE_cleanup() {
$CCACHE -F 0 -M 0 >/dev/null
$CCACHE -c >/dev/null
expect_file_count 1 '.nfs*' $CCACHE_DIR
- if $AGGREGATED; then
expect_stat 'files in cache' 10
- else
- expect_stat 'files in cache' 30
- fi
}
diff --git a/test/suites/depend.bash b/test/suites/depend.bash
index 733f480b..60443ee7 100644
--- a/test/suites/depend.bash
+++ b/test/suites/depend.bash
@@ -99,22 +99,14 @@ SUITE_depend() {
expect_stat 'cache hit (direct)' 0
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 1
- if $AGGREGATED; then
expect_stat 'files in cache' 2 # .result + .manifest
- else
- expect_stat 'files in cache' 3 # .o + .manifest + .d
- fi
CCACHE_DEPEND=1 $CCACHE_COMPILE $DEPSFLAGS_CCACHE -c test.c
expect_equal_object_files reference_test.o test.o
expect_stat 'cache hit (direct)' 1
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 1
- if $AGGREGATED; then
expect_stat 'files in cache' 2
- else
- expect_stat 'files in cache' 3
- fi
# -------------------------------------------------------------------------
TEST "No dependency file"
@@ -141,26 +133,18 @@ SUITE_depend() {
expect_stat 'cache hit (direct)' 0
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 1
- if $AGGREGATED; then
expect_stat 'files in cache' 2 # .result + .manifest
- else
- expect_stat 'files in cache' 3 # .o + .manifest + .d
- fi
CCACHE_DEPEND=1 $CCACHE_COMPILE -MD -c test.c
expect_equal_object_files reference_test.o test.o
expect_stat 'cache hit (direct)' 1
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 1
- if $AGGREGATED; then
expect_stat 'files in cache' 2
- else
- expect_stat 'files in cache' 3
- fi
# -------------------------------------------------------------------------
TEST "Dependency file paths converted to relative if CCACHE_BASEDIR specified"
-
+
CCACHE_DEPEND=1 CCACHE_BASEDIR="`pwd`" $CCACHE_COMPILE $DEPSFLAGS_CCACHE -c "`pwd`/test.c"
if grep -q "[^.]/test.c" "test.d"; then
test_failed "Dependency file does not contain relative path to test.c"
@@ -216,11 +200,7 @@ EOF
expect_stat 'cache hit (direct)' 0
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 1
- if $AGGREGATED; then
expect_stat 'files in cache' 2 # .result + .manifest
- else
- expect_stat 'files in cache' 3 # .o + .manifest + .d
- fi
# Recompile dir1 first time.
generate_reference_compiler_output
@@ -230,11 +210,7 @@ EOF
expect_stat 'cache hit (direct)' 1
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 1
- if $AGGREGATED; then
expect_stat 'files in cache' 2
- else
- expect_stat 'files in cache' 3
- fi
# Compile dir2. dir2 header changes the object file compared to dir1.
cd $BASEDIR2
@@ -245,11 +221,7 @@ EOF
expect_stat 'cache hit (direct)' 1
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 2
- if $AGGREGATED; then
expect_stat 'files in cache' 3 # 2x .result, 1x manifest
- else
- expect_stat 'files in cache' 5 # 2x .o, 2x .d, 1x manifest
- fi
# Compile dir3. dir3 header change does not change object file compared to
# dir1, but ccache still adds an additional .o/.d file in the cache due to
@@ -262,11 +234,7 @@ EOF
expect_stat 'cache hit (direct)' 1
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 3
- if $AGGREGATED; then
expect_stat 'files in cache' 4 # 3x .result, 1x manifest
- else
- expect_stat 'files in cache' 7 # 3x .o, 3x .d, 1x manifest
- fi
# Compile dir4. dir4 header adds a new dependency.
cd $BASEDIR4
@@ -278,11 +246,7 @@ EOF
expect_stat 'cache hit (direct)' 1
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 4
- if $AGGREGATED; then
expect_stat 'files in cache' 5 # 4x .result, 1x manifest
- else
- expect_stat 'files in cache' 9 # 4x .o, 4x .d, 1x manifest
- fi
# Recompile dir1 second time.
cd $BASEDIR1
@@ -293,11 +257,7 @@ EOF
expect_stat 'cache hit (direct)' 2
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 4
- if $AGGREGATED; then
expect_stat 'files in cache' 5
- else
- expect_stat 'files in cache' 9
- fi
# Recompile dir2.
cd $BASEDIR2
@@ -308,11 +268,7 @@ EOF
expect_stat 'cache hit (direct)' 3
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 4
- if $AGGREGATED; then
expect_stat 'files in cache' 5
- else
- expect_stat 'files in cache' 9
- fi
# Recompile dir3.
cd $BASEDIR3
@@ -323,11 +279,7 @@ EOF
expect_stat 'cache hit (direct)' 4
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 4
- if $AGGREGATED; then
expect_stat 'files in cache' 5
- else
- expect_stat 'files in cache' 9
- fi
# Recompile dir4.
cd $BASEDIR4
@@ -339,11 +291,7 @@ EOF
expect_stat 'cache hit (direct)' 5
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 4
- if $AGGREGATED; then
expect_stat 'files in cache' 5
- else
- expect_stat 'files in cache' 9
- fi
# -------------------------------------------------------------------------
diff --git a/test/suites/direct.bash b/test/suites/direct.bash
index f8d306d0..e3765f67 100644
--- a/test/suites/direct.bash
+++ b/test/suites/direct.bash
@@ -151,11 +151,7 @@ EOF
test_failed "$dep_file does not contain $dep_target"
fi
done
- if $AGGREGATED; then
expect_stat 'files in cache' 12
- else
- expect_stat 'files in cache' 18
- fi
# -------------------------------------------------------------------------
TEST "-MMD for different source files"
@@ -461,11 +457,7 @@ EOF
expect_stat 'cache hit (direct)' 1
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 2
- if $AGGREGATED; then
expect_stat 'files in cache' 4
- else
- expect_stat 'files in cache' 5
- fi
expect_equal_files test.d expected.d
rm -f test.d
@@ -474,38 +466,9 @@ EOF
expect_stat 'cache hit (direct)' 2
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 2
- if $AGGREGATED; then
expect_stat 'files in cache' 4
- else
- expect_stat 'files in cache' 5
- fi
- expect_equal_files test.d expected.d
-
- # -------------------------------------------------------------------------
- if ! $AGGREGATED; then
- TEST "Missing .d file"
-
- $CCACHE_COMPILE -c -MD test.c
- expect_stat 'cache hit (direct)' 0
- expect_stat 'cache hit (preprocessed)' 0
- expect_stat 'cache miss' 1
-
- $CCACHE_COMPILE -c -MD test.c
- expect_stat 'cache hit (direct)' 1
- expect_stat 'cache hit (preprocessed)' 0
- expect_stat 'cache miss' 1
expect_equal_files test.d expected.d
- find $CCACHE_DIR -name '*.d' -exec rm '{}' +
-
- # Missing file -> consider the cached result broken.
- $CCACHE_COMPILE -c -MD test.c
- expect_stat 'cache hit (direct)' 1
- expect_stat 'cache hit (preprocessed)' 0
- expect_stat 'cache miss' 1
- expect_stat 'cache file missing' 1
- fi
-
# -------------------------------------------------------------------------
TEST "stderr from both preprocessor and compiler"
diff --git a/test/suites/serialize_diagnostics.bash b/test/suites/serialize_diagnostics.bash
index 697552d6..29ce9734 100644
--- a/test/suites/serialize_diagnostics.bash
+++ b/test/suites/serialize_diagnostics.bash
@@ -19,11 +19,7 @@ SUITE_serialize_diagnostics() {
$CCACHE_COMPILE -c --serialize-diagnostics test.dia test1.c
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 1
- if $AGGREGATED; then
expect_stat 'files in cache' 1
- else
- expect_stat 'files in cache' 2
- fi
expect_equal_files expected.dia test.dia
rm test.dia
@@ -31,11 +27,7 @@ SUITE_serialize_diagnostics() {
$CCACHE_COMPILE -c --serialize-diagnostics test.dia test1.c
expect_stat 'cache hit (preprocessed)' 1
expect_stat 'cache miss' 1
- if $AGGREGATED; then
expect_stat 'files in cache' 1
- else
- expect_stat 'files in cache' 2
- fi
expect_equal_files expected.dia test.dia
# -------------------------------------------------------------------------
@@ -82,20 +74,12 @@ EOF
expect_stat 'cache hit (direct)' 0
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 1
- if $AGGREGATED; then
expect_stat 'files in cache' 2
- else
- expect_stat 'files in cache' 4
- fi
cd ../dir2
CCACHE_BASEDIR=`pwd` $CCACHE_COMPILE -w -MD -MF `pwd`/test.d -I`pwd`/include --serialize-diagnostics `pwd`/test.dia -c src/test.c -o `pwd`/test.o
expect_stat 'cache hit (direct)' 1
expect_stat 'cache hit (preprocessed)' 0
expect_stat 'cache miss' 1
- if $AGGREGATED; then
expect_stat 'files in cache' 2
- else
- expect_stat 'files in cache' 4
- fi
}