d55c2d7a2c
* many files had no license comments at all * some files had license comments suggesting that they weren't open source (like a terse "all rights reserved") when they actually are open source. * all our files are licensed under apache and should be marked as such
65 lines
2.7 KiB
Bash
65 lines
2.7 KiB
Bash
#!/bin/bash
|
|
#
|
|
# Copyright 2016 Google Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
start_test Statistics logging works.
|
|
check ls $MOD_PAGESPEED_STATS_LOG
|
|
check [ $(grep "timestamp: " $MOD_PAGESPEED_STATS_LOG | wc -l) -ge 1 ]
|
|
# An array of all the timestamps that were logged.
|
|
TIMESTAMPS=($(sed -n '/timestamp: /s/[^0-9]*//gp' $MOD_PAGESPEED_STATS_LOG))
|
|
check [ ${#TIMESTAMPS[@]} -ge 1 ]
|
|
for T in ${TIMESTAMPS[@]}; do
|
|
check [ $T -ge $START_TIME ]
|
|
done
|
|
# Check a few arbitrary statistics to make sure logging is taking place.
|
|
check [ $(grep "num_flushes: " $MOD_PAGESPEED_STATS_LOG | wc -l) -ge 1 ]
|
|
# We are not outputting histograms.
|
|
check [ $(grep "histogram#" $MOD_PAGESPEED_STATS_LOG | wc -l) -eq 0 ]
|
|
check [ $(grep "image_ongoing_rewrites: " $MOD_PAGESPEED_STATS_LOG | wc -l) \
|
|
-ge 1 ]
|
|
|
|
start_test Statistics logging JSON handler works.
|
|
JSON=$OUTDIR/console_json.json
|
|
STATS_JSON_URL="$CONSOLE_URL?json&granularity=0&var_titles=num_\
|
|
flushes,image_ongoing_rewrites"
|
|
echo "$WGET_DUMP $STATS_JSON_URL > $JSON"
|
|
$WGET_DUMP $STATS_JSON_URL > $JSON
|
|
# Each variable we ask for should show up once.
|
|
check [ $(grep "\"num_flushes\": " $JSON | wc -l) -eq 1 ]
|
|
check [ $(grep "\"image_ongoing_rewrites\": " $JSON | wc -l) -eq 1 ]
|
|
check [ $(grep "\"timestamps\": " $JSON | wc -l) -eq 1 ]
|
|
# An array of all the timestamps that the JSON handler returned.
|
|
JSON_TIMESTAMPS=($(sed -rn 's/^\{"timestamps": \[(([0-9]+, )*[0-9]*)\].*}$/\1/;/^[0-9]+/s/,//gp' $JSON))
|
|
# Check that we see the same timestamps that are in TIMESTAMPS.
|
|
# We might have generated extra timestamps in the time between TIMESTAMPS
|
|
# and JSON_TIMESTAMPS, so only loop through TIMESTAMPS.
|
|
check [ ${#JSON_TIMESTAMPS[@]} -ge ${#TIMESTAMPS[@]} ]
|
|
t=0
|
|
while [ $t -lt ${#TIMESTAMPS[@]} ]; do
|
|
check [ ${TIMESTAMPS[$t]} -eq ${JSON_TIMESTAMPS[$t]} ]
|
|
t=$(($t+1))
|
|
done
|
|
|
|
start_test JSON handler does not mirror HTML
|
|
JSON_URL="$CONSOLE_URL?json&granularity=0&var_titles=<boo>"
|
|
OUT=$($CURL --silent $JSON_URL)
|
|
check_not_from "$OUT" fgrep -q "<boo>"
|
|
check_from "$OUT" fgrep -q "<boo>"
|
|
|
|
start_test Statistics console is available.
|
|
CONSOLE_URL=$PRIMARY_SERVER/pagespeed_console
|
|
CONSOLE_HTML=$OUTDIR/console.html
|
|
$WGET_DUMP $CONSOLE_URL > $CONSOLE_HTML
|
|
check grep -q "console" $CONSOLE_HTML
|