| #!/bin/bash |
| |
| # Copyright (C) 2009 The Android Open Source Project |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| iterations=150 |
| failures=0 |
| i=0 |
| LOGDIR="$HOME/backup_tests" |
| LOGFILE="$LOGDIR/backup_stress.`date +%s`.log" |
| export BUGREPORT_DIR="$LOGDIR/bugreports" |
| |
| # make sure that we have a place to put logs and bugreports |
| mkdir -p $LOGDIR $BUGREPORT_DIR |
| |
| echo "logfile is $LOGFILE" |
| |
| (while (sleep 10); do |
| failed=0 |
| |
| echo |
| echo "Iteration $i at `date`" |
| echo |
| |
| ./test_backup.sh "$@" 2>&1 |
| |
| sleep 10 |
| echo "Restore at `date`" |
| echo |
| |
| ./test_restore.sh "$@" 2>&1 || failed=1 |
| |
| if [ "$failed" -ne 0 ]; then |
| failures=$(($failures+1)) |
| # Long and verbose so it sticks out |
| echo "FAILED iteration $i of $iterations; $failures failures so far" |
| echo "FAILED iteration $i of $iterations; $failures failures so far" > /dev/stderr |
| else |
| printf "Iteration %d:\tPASS; remaining: %d\n" $i $(($iterations - $i - 1)) |
| printf "Iteration %d:\tPASS; remaining: %d\n" $i $(($iterations - $i - 1)) > /dev/stderr |
| fi |
| |
| echo "End $i at `date`" |
| |
| i=$(($i+1)) |
| if [ $i -eq $iterations ]; then |
| echo "DONE: $iterations iterations with $failures failures." |
| echo "DONE: $iterations iterations with $failures failures." > /dev/stderr |
| [ "$failures" -eq 0 ] && exit 0 |
| exit 1 |
| fi |
| done) > "$LOGFILE" |
| |