mirror of
https://github.com/faisalman/ua-parser-js.git
synced 2025-10-01 01:37:43 +03:00
[helpers] split helpers
into 2 new packages: user-agent-helpers
& client-hints-helpers
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
const { isFrozenUA, unfreezeUA, UACHParser } = require('@ua-parser-js/helpers');
|
||||
const { isFrozenUA, unfreezeUA } = require('@ua-parser-js/user-agent-helpers');
|
||||
const { UACHParser } = require('@ua-parser-js/client-hints-helpers');
|
||||
const assert = require('assert');
|
||||
|
||||
describe('isFrozenUA()', () => {
|
||||
@@ -54,7 +55,7 @@ describe('unfreezeUA()', () => {
|
||||
});
|
||||
|
||||
describe('UACHParser()', () => {
|
||||
it('parse client hints HTTP headers (sec-ch-ua) into a JavaScript object', () => {
|
||||
it('parse client hints HTTP headers (sec-ch-ua) into a client hints-like JavaScript object', () => {
|
||||
assert.deepEqual(UACHParser(headers), {
|
||||
"architecture": "arm",
|
||||
"bitness": "64",
|
||||
|
@@ -1,47 +0,0 @@
|
||||
// @ts-check
|
||||
import { test, expect } from '@playwright/test';
|
||||
import { unfreezeUA } from '@ua-parser-js/helpers';
|
||||
|
||||
test('test for unfreezeUA() method', async ({ page }) => {
|
||||
|
||||
|
||||
await page.addInitScript(() => {
|
||||
Object.defineProperty(navigator, 'userAgentData', {
|
||||
value: {
|
||||
brands: [],
|
||||
platform: 'Windows',
|
||||
mobile: false,
|
||||
getHighEntropyValues: () => {
|
||||
return Promise.resolve({
|
||||
architecture: 'x86',
|
||||
bitness: '64',
|
||||
fullVersionList: [
|
||||
{
|
||||
brand: 'New Browser',
|
||||
version: '110.1.2.3'
|
||||
},
|
||||
{
|
||||
brand: 'Chromium',
|
||||
version: '110.1.2.3'
|
||||
},
|
||||
{
|
||||
brand: 'Not(A:Brand',
|
||||
version: '110'
|
||||
}
|
||||
],
|
||||
platform: 'Windows',
|
||||
platformVersion: '0.3'
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
Object.defineProperty(navigator, 'userAgent', {
|
||||
value: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.0.0 Safari/537.36'
|
||||
});
|
||||
});
|
||||
await page.goto('about:blank');
|
||||
await page.addScriptTag({ path: './src/helpers/ua-parser-helpers.js' });
|
||||
// @ts-ignore
|
||||
const ua = await page.evaluate(async () => await unfreezeUA());
|
||||
expect(ua).toBe('Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) New Browser/110.1.2.3 Chromium/110.1.2.3 Safari/537.36');
|
||||
});
|
Reference in New Issue
Block a user