You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
86 lines
2.0 KiB
Bash
86 lines
2.0 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
# Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
# Abort on error.
|
|
set -e
|
|
|
|
export DEPOT_TOOLS_UPDATE=0
|
|
export PYTHONUNBUFFERED=
|
|
|
|
PWD=$(pwd)
|
|
GITREPO_PATH=$PWD/git_remote
|
|
GITREPO_URL=file://$GITREPO_PATH
|
|
PATH="$(dirname $PWD):$PATH"
|
|
GIT_CL=$(dirname $PWD)/git-cl
|
|
GIT_CL_STATUS="$GIT_CL status -f"
|
|
|
|
# Set up a git repo that has a few commits to master.
|
|
setup_git_remote() {
|
|
echo "Setting up test upstream git repo..."
|
|
rm -rf git_remote
|
|
mkdir git_remote
|
|
|
|
(
|
|
cd git_remote
|
|
git init -q
|
|
git config user.name 'TestDood'
|
|
git config user.email 'TestDood@example.com'
|
|
echo "test" > test
|
|
git add test
|
|
git commit -qam "initial commit"
|
|
echo "test2" >> test
|
|
git commit -qam "second commit"
|
|
# Hack: make sure master is not the current branch
|
|
# otherwise push will give a warning
|
|
git checkout -q --detach master
|
|
)
|
|
}
|
|
|
|
# Set up a git checkout of the repo.
|
|
setup_git_checkout() {
|
|
echo "Setting up test git repo..."
|
|
rm -rf git_checkout
|
|
git clone -q $GITREPO_URL git_checkout
|
|
(
|
|
cd git_checkout
|
|
git config user.name 'TestDood'
|
|
git config user.email 'TestDood@example.com'
|
|
)
|
|
}
|
|
|
|
cleanup() {
|
|
rm -rf git_remote git_checkout
|
|
}
|
|
|
|
# Usage: test_expect_success "description of test" "test code".
|
|
test_expect_success() {
|
|
echo "TESTING: $1"
|
|
exit_code=0
|
|
sh -c "$2" || exit_code=$?
|
|
if [ $exit_code != 0 ]; then
|
|
echo "FAILURE: $1"
|
|
return $exit_code
|
|
fi
|
|
}
|
|
|
|
# Usage: test_expect_failure "description of test" "test code".
|
|
test_expect_failure() {
|
|
echo "TESTING: $1"
|
|
exit_code=0
|
|
sh -c "$2" || exit_code=$?
|
|
if [ $exit_code = 0 ]; then
|
|
echo "SUCCESS, BUT EXPECTED FAILURE: $1"
|
|
return $exit_code
|
|
fi
|
|
}
|
|
|
|
# Grab the XSRF token from the review server and print it to stdout.
|
|
print_xsrf_token() {
|
|
curl --cookie dev_appserver_login="test@example.com:False" \
|
|
--header 'X-Requesting-XSRF-Token: 1' \
|
|
http://localhost:10000/xsrf_token 2>/dev/null
|
|
}
|