Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
* 4. Verify that latestFetchDate is now the latest.
* 5. Verify that you see "fetching latest table names" and additional
* message for fetching data.
*/
// Author: Eric Bidelman
'use strict';
const path = require('path');
const fs = require('fs');
const gcloud = require('google-cloud');
const PROJECT_ID = 'lighthouse-viewer';
const CACHE_FILE = '.biqquery_cache.json';
const BigQuery = gcloud.bigquery({projectId: PROJECT_ID});
/**
* Returns the original object with sorted keys.
* @param {!Object} obj
* @return {!Object}
*/
function orderKeys(obj) {
const ordered = {};
Object.keys(obj).sort().forEach(key => ordered[key] = obj[key]);
return ordered;
}
class CacheFile {
constructor(cacheFilename=CACHE_FILE) {
this.file = path.join(__dirname, cacheFilename);