This reverts commit e2a7740322.
structuredClone errors in these browsers were a symptom of inavertently
including Error objects in reporter events. In newer browsers,
structuredClone can copy those objects, but it's lossy: if an instance of
an Error subclass is cloned, the result is an instance of Error.
With that fixed, Jasmine is compatible with Safari 16 and FF 102. At least
for now. And keeping them around may provide a way to detect similar bugs.
53 lines
1015 B
Bash
Executable File
53 lines
1015 B
Bash
Executable File
#!/bin/sh
|
|
|
|
run_browser() {
|
|
browser=$1
|
|
version=$2
|
|
os="$3"
|
|
description="$browser $version"
|
|
if [ $version = "latest" ]; then
|
|
version=""
|
|
fi
|
|
|
|
echo
|
|
echo
|
|
echo "Running $description"
|
|
echo
|
|
USE_SAUCE=true JASMINE_BROWSER=$browser SAUCE_BROWSER_VERSION=$version SAUCE_OS="$os" npm run ci
|
|
|
|
if [ $? -eq 0 ]; then
|
|
echo "PASS: $description" >> "$passfile"
|
|
else
|
|
echo "FAIL: $description" >> "$failfile"
|
|
fi
|
|
}
|
|
|
|
passfile=`mktemp -t jasmine-results.XXXXXX` || exit 1
|
|
failfile=`mktemp -t jasmine-results.XXXXXX` || exit 1
|
|
|
|
run_browser chrome latest
|
|
|
|
run_browser firefox latest
|
|
if [ "$1" = "--not-actually-all" ]; then
|
|
echo "SKIPPED: firefox 140" >> "$passfile"
|
|
echo "SKIPPED: firefox 128" >> "$passfile"
|
|
echo "SKIPPED: firefox 115" >> "$passfile"
|
|
else
|
|
run_browser firefox 140
|
|
run_browser firefox 128
|
|
run_browser firefox 115
|
|
fi
|
|
run_browser firefox 102
|
|
|
|
run_browser safari 17
|
|
run_browser safari 16
|
|
|
|
run_browser MicrosoftEdge latest
|
|
|
|
echo
|
|
cat "$passfile" "$failfile"
|
|
|
|
if [ -s "$failfile" ]; then
|
|
exit 1
|
|
fi
|