11'use strict' ;
22
3+ // Flags: --expose-internals
4+
35require ( '../common' ) ;
46const assert = require ( 'assert' ) ;
7+ const { getNavigatorPlatform } = require ( 'internal/navigator' ) ;
58
69const is = {
710 number : ( value , key ) => {
@@ -15,3 +18,25 @@ is.number(navigator.hardwareConcurrency, 'hardwareConcurrency');
1518assert . ok ( navigator . hardwareConcurrency > 0 ) ;
1619assert . strictEqual ( typeof navigator . userAgent , 'string' ) ;
1720assert . match ( navigator . userAgent , / ^ N o d e \. j s \/ \d + $ / ) ;
21+
22+ assert . strictEqual ( typeof navigator . platform , 'string' ) ;
23+ if ( process . platform === 'darwin' ) {
24+ assert . strictEqual ( navigator . platform , 'MacIntel' ) ;
25+ } else if ( process . platform === 'win32' ) {
26+ assert . strictEqual ( navigator . platform , 'Win32' ) ;
27+ } else if ( process . platform === 'linux' && process . arch === 'ia32' ) {
28+ assert . strictEqual ( navigator . platform , 'Linux i686' ) ;
29+ } else if ( process . platform === 'linux' && process . arch === 'x64' ) {
30+ assert . strictEqual ( navigator . platform , 'Linux x86_64' ) ;
31+ } else {
32+ assert . strictEqual ( navigator . platform , `${ process . platform [ 0 ] . toUpperCase ( ) } ${ process . platform . slice ( 1 ) } ${ process . arch } ` ) ;
33+ }
34+
35+ assert . strictEqual ( getNavigatorPlatform ( { arch : 'x64' , platform : 'darwin' } ) , 'MacIntel' ) ;
36+ assert . strictEqual ( getNavigatorPlatform ( { arch : 'arm64' , platform : 'darwin' } ) , 'MacIntel' ) ;
37+ assert . strictEqual ( getNavigatorPlatform ( { arch : 'ia32' , platform : 'linux' } ) , 'Linux i686' ) ;
38+ assert . strictEqual ( getNavigatorPlatform ( { arch : 'x64' , platform : 'linux' } ) , 'Linux x86_64' ) ;
39+ assert . strictEqual ( getNavigatorPlatform ( { arch : 'arm64' , platform : 'linux' } ) , 'Linux arm64' ) ;
40+ assert . strictEqual ( getNavigatorPlatform ( { arch : 'x64' , platform : 'freebsd' } ) , 'Freebsd x64' ) ;
41+ assert . strictEqual ( getNavigatorPlatform ( { arch : 'ia32' , platform : 'win32' } ) , 'Win32' ) ;
42+ assert . strictEqual ( getNavigatorPlatform ( { arch : 'x64' , platform : 'win32' } ) , 'Win32' ) ;
0 commit comments