保誠-保戶業務員媒合平台
HelenHuang
2022-06-09 23b60dc1975db38c280d8a123aff97544d1673e0
PAMapp/node_modules/ua-parser-js/test/test.js
@@ -2,6 +2,8 @@
var safe        = require('safe-regex');
var assert      = require('assert');
var requirejs   = require('requirejs');
var parseJS     = require('@babel/parser').parse;
var traverse    = require('@babel/traverse').default;
var UAParser    = require('./../src/ua-parser');
var browsers    = require('./browser-test.json');
var cpus        = require('./cpu-test.json');
@@ -137,12 +139,19 @@
    var regexes;
    // todo: use AST-based instead of grep
    before('Read main js file', function (done) {
        fs.readFile('src/ua-parser.js', 'utf8', function (err, data) {
            regexes = data.match(/(\/.+\/[ig]+)(?=[,\s\n])/g);
            done();
    before('Read main js file', function () {
        var code = fs.readFileSync('src/ua-parser.js', 'utf8').toString();
        var ast = parseJS(code, { sourceType: "script" });
        regexes = [];
        traverse(ast, {
            RegExpLiteral: (path) => {
                regexes.push(path.node.pattern);
            }
        });
        if (regexes.length === 0) {
            throw new Error("Regexes cannot be empty!");
        }
    });
    describe('Begin testing', function () {
@@ -156,4 +165,4 @@
            });
        });
    });
})
});