mirror of
https://github.com/servo/servo.git
synced 2025-06-04 07:35:36 +00:00
54 lines
1.7 KiB
Bash
Executable file
54 lines
1.7 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
|
|
set -o errexit
|
|
set -o nounset
|
|
set -o pipefail
|
|
|
|
TP5N_SOURCE="https://github.com/rwood-moz/talos-pagesets/raw/master/tp5n.zip"
|
|
TP5N_PATH="page_load_test/tp5n.zip"
|
|
|
|
if [[ ! -f "$(dirname "${TP5N_PATH}")/tp5n/tp5n.manifest" ]]; then
|
|
if [[ ! -f "${TP5N_PATH}" ]]; then
|
|
echo "Downloading the test cases..."
|
|
wget "${TP5N_SOURCE}" -O "${TP5N_PATH}"
|
|
echo "done"
|
|
else
|
|
echo "Found existing test cases, skipping download."
|
|
fi
|
|
echo -n "Unzipping the test cases..."
|
|
unzip -q -o "${TP5N_PATH}" -d "$(dirname "${TP5N_PATH}")"
|
|
echo "done"
|
|
else
|
|
echo "Found existing test cases, skipping download and unzip."
|
|
fi
|
|
|
|
# We use the https URL for the repo so the clone works even if
|
|
# github.com isn't in ssh's known hosts.
|
|
WARC_DIR="./servo-warc-tests"
|
|
WARC_REPO="https://github.com/servo/servo-warc-tests.git"
|
|
|
|
# Clone the warc tests if they don't exist
|
|
if [[ ! -d ${WARC_DIR} ]]; then
|
|
git clone --progress ${WARC_REPO}
|
|
fi
|
|
|
|
# Make sure we're running with an up-to-date warc test repo
|
|
git -C ${WARC_DIR} pull --progress
|
|
|
|
virtualenv venv --python="$(which python3)"
|
|
PS1="" source venv/bin/activate
|
|
# `PS1` must be defined before activating virtualenv
|
|
pip install \
|
|
"boto3>=1.4.0" \
|
|
git+https://github.com/ikreymer/pywb.git
|
|
|
|
mkdir -p servo
|
|
mkdir -p output # Test result will be saved to output/perf-<timestamp>.json
|
|
./git_log_to_json.sh > servo/revision.json
|
|
|
|
./test_all.sh --servo ${*}
|
|
SERVO_DIR="../../.." ${WARC_DIR}/run-warc-tests.sh
|