mirror of
https://github.com/faisalman/ua-parser-js.git
synced 2025-11-15 14:42:16 +03:00
[chore] Update CLI import & unit test
This commit is contained in:
@@ -6,8 +6,8 @@ try {
|
|||||||
const { performance } = require('node:perf_hooks');
|
const { performance } = require('node:perf_hooks');
|
||||||
const readline = require('node:readline');
|
const readline = require('node:readline');
|
||||||
const { parseArgs } = require('node:util');
|
const { parseArgs } = require('node:util');
|
||||||
const UAParser = require('ua-parser-js');
|
const UAParser = require('../src/main/ua-parser');
|
||||||
const { Bots, Emails, ExtraDevices, InApps, Vehicles } = require('ua-parser-js/extensions');
|
const { Bots, Emails, ExtraDevices, InApps, Vehicles } = require('../src/extensions/ua-parser-extensions');
|
||||||
|
|
||||||
if (!process.argv[2].startsWith('-')) {
|
if (!process.argv[2].startsWith('-')) {
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,12 @@ const fs = require('node:fs');
|
|||||||
const { UAParser } = require('../../../src/main/ua-parser');
|
const { UAParser } = require('../../../src/main/ua-parser');
|
||||||
const uap = new UAParser();
|
const uap = new UAParser();
|
||||||
|
|
||||||
|
const input = [
|
||||||
|
'Opera/9.25 (Windows NT 6.0; U; ru)',
|
||||||
|
'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
|
||||||
|
];
|
||||||
|
const output = input.map(x => uap.setUA(x).getResult());
|
||||||
|
|
||||||
describe('npx ua-parser-js <string>', () => {
|
describe('npx ua-parser-js <string>', () => {
|
||||||
it ('print result to stdout', () => {
|
it ('print result to stdout', () => {
|
||||||
exec('npx ua-parser-js "TEST"', (err, stdout, stderr) => {
|
exec('npx ua-parser-js "TEST"', (err, stdout, stderr) => {
|
||||||
@@ -15,10 +21,7 @@ describe('npx ua-parser-js <string>', () => {
|
|||||||
describe('npx ua-parser-js --input-file=<filepath>', () => {
|
describe('npx ua-parser-js --input-file=<filepath>', () => {
|
||||||
it ('load file and print result to stdout', () => {
|
it ('load file and print result to stdout', () => {
|
||||||
exec('npx ua-parser-js --input-file="../test/unit/cli/input.txt"', (err, stdout, stderr) => {
|
exec('npx ua-parser-js --input-file="../test/unit/cli/input.txt"', (err, stdout, stderr) => {
|
||||||
assert.deepEqual(JSON.parse(stdout), JSON.parse(JSON.stringify([
|
assert.deepEqual(JSON.parse(stdout), JSON.parse(JSON.stringify(output)));
|
||||||
uap.setUA('Opera/9.25 (Windows NT 6.0; U; ru)').getResult(),
|
|
||||||
uap.setUA('Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)').getResult()
|
|
||||||
])));
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@@ -27,10 +30,7 @@ describe('npx ua-parser-js --input-file=<filepath> --output-file=<filepath>', ()
|
|||||||
it ('load file and save result to file', () => {
|
it ('load file and save result to file', () => {
|
||||||
exec('npx ua-parser-js --input-file="../test/unit/cli/input.txt" --output-file="../test/unit/cli/output.json"', (err, stdout, stderr) => {
|
exec('npx ua-parser-js --input-file="../test/unit/cli/input.txt" --output-file="../test/unit/cli/output.json"', (err, stdout, stderr) => {
|
||||||
fs.readFile('test/unit/cli/output.json', (err, data) => {
|
fs.readFile('test/unit/cli/output.json', (err, data) => {
|
||||||
assert.deepEqual(JSON.parse(data), JSON.parse(JSON.stringify([
|
assert.deepEqual(JSON.parse(data), JSON.parse(JSON.stringify(output)));
|
||||||
uap.setUA('Opera/9.25 (Windows NT 6.0; U; ru)').getResult(),
|
|
||||||
uap.setUA('Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)').getResult()
|
|
||||||
])));
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user