08aa54e1d9
The CLI app is now checked in, rather than generated dynamically with `ng new`. This loses some assertion power, but gains hermeticity. It also checks in lock files for all integration tests, avoiding floating version numbers. We'll need another place to integration test between changes in the various repositories - but the angular/angular PR-blocking status is not the right place to do this. PR Close #21555
47 lines
1.3 KiB
Bash
Executable File
47 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e -o pipefail
|
|
|
|
cd `dirname $0`
|
|
|
|
readonly thisDir=$(cd $(dirname $0); pwd)
|
|
|
|
# Track payload size functions
|
|
source ../scripts/ci/payload-size.sh
|
|
|
|
# Workaround https://github.com/yarnpkg/yarn/issues/2165
|
|
# Yarn will cache file://dist URIs and not update Angular code
|
|
readonly cache=.yarn_local_cache
|
|
function rm_cache {
|
|
rm -rf $cache
|
|
}
|
|
rm_cache
|
|
mkdir $cache
|
|
trap rm_cache EXIT
|
|
|
|
for testDir in $(ls | grep -v node_modules) ; do
|
|
[[ -d "$testDir" ]] || continue
|
|
echo "#################################"
|
|
echo "Running integration test $testDir"
|
|
echo "#################################"
|
|
(
|
|
cd $testDir
|
|
rm -rf dist
|
|
yarn install --cache-folder ../$cache
|
|
yarn test || exit 1
|
|
# Track payload size for cli-hello-world and hello_world__closure
|
|
if [[ $testDir == cli-hello-world ]] || [[ $testDir == hello_world__closure ]] || [[ $testDir == hello_world__render3__closure ]] || [[ $testDir == hello_world__render3__rollup ]]; then
|
|
if [[ $testDir == cli-hello-world ]]; then
|
|
yarn build
|
|
fi
|
|
if [[ -v TRAVIS ]]; then
|
|
trackPayloadSize "$testDir" "dist/*.js" true false "${thisDir}/_payload-limits.json"
|
|
fi
|
|
fi
|
|
)
|
|
done
|
|
|
|
if [[ -v TRAVIS ]]; then
|
|
trackPayloadSize "umd" "../dist/packages-dist/*/bundles/*.umd.min.js" false false
|
|
fi
|