script/test-size: bump for more opts

This commit is contained in:
Yoshua Wuyts
2016-06-20 22:23:11 +01:00
parent 9ae648c3f5
commit b6b41bc031
+63 -8
View File
@@ -1,10 +1,65 @@
#!/bin/sh #!/bin/sh
browserify index.js \ usage () {
-g unassertify \ cat << USAGE
-g es2020 \ script/test-size
-g uglifyify \ Commands:
-p bundle-collapser/plugin \ g, gzip (default) Output gzip size
| uglifyjs \ m, minified Output size minified
| gzip-size \ d, discify Run discify
| pretty-bytes USAGE
}
gzip_size () {
browserify index.js \
-g unassertify \
-g es2020 \
-g uglifyify \
-p bundle-collapser/plugin \
| uglifyjs \
| gzip-size \
| pretty-bytes
}
min_size () {
browserify index.js \
-g unassertify \
-g es2020 \
-g uglifyify \
-p bundle-collapser/plugin \
| uglifyjs \
| wc -c \
| pretty-bytes
}
run_discify () {
browserify index.js --full-paths \
-g unassertify \
-g es2020 \
-g uglifyify \
| uglifyjs \
| discify --open
}
# set CLI flags
getopt -T > /dev/null
if [ "$?" -eq 4 ]; then
args="$(getopt --long help discify minified --options hmdg -- "$*")"
else args="$(getopt h "$*")"; fi
[ ! $? -eq 0 ] && { usage && exit 2; }
eval set -- "$args"
# parse CLI flags
while true; do
case "$1" in
-h|--help) usage && exit 1 ;;
-- ) shift; break ;;
* ) break ;;
esac
done
case "$1" in
d|discify) shift; run_discify "$@" ;;
m|minified) shift; printf "min: %s\n" "$(min_size)" "$@" ;;
g|gzip|*) shift; printf "gzip: %s\n" "$(gzip_size)" "$@" ;;
esac