mirror of
https://github.com/faisalman/ua-parser-js.git
synced 2025-11-16 07:02:16 +03:00
Experimental: GPU detection #322
This commit is contained in:
56
test/gpu-test.json
Normal file
56
test/gpu-test.json
Normal file
@@ -0,0 +1,56 @@
|
||||
[
|
||||
{
|
||||
"desc" : "Intel",
|
||||
"renderer": "Intel HD Graphics 4000 OpenGL Engine",
|
||||
"expect" :
|
||||
{
|
||||
"vendor" : "Intel",
|
||||
"model" : "HD Graphics 4000"
|
||||
}
|
||||
},
|
||||
{
|
||||
"desc" : "Intel",
|
||||
"renderer": "Intel Iris Pro OpenGL Engine",
|
||||
"expect" :
|
||||
{
|
||||
"vendor" : "Intel",
|
||||
"model" : "Iris Pro"
|
||||
}
|
||||
},
|
||||
{
|
||||
"desc" : "Intel",
|
||||
"renderer": "Intel GMA X3100 OpenGL Engine",
|
||||
"expect" :
|
||||
{
|
||||
"vendor" : "Intel",
|
||||
"model" : "GMA X3100"
|
||||
}
|
||||
},
|
||||
{
|
||||
"desc" : "ATI",
|
||||
"renderer": "ATI Radeon HD 6750M OpenGL Engine",
|
||||
"expect" :
|
||||
{
|
||||
"vendor" : "ATI",
|
||||
"model" : "Radeon HD 6750M"
|
||||
}
|
||||
},
|
||||
{
|
||||
"desc" : "NVIDIA",
|
||||
"renderer": "NVIDIA GeForce GT 650M OpenGL Engine",
|
||||
"expect" :
|
||||
{
|
||||
"vendor" : "NVIDIA",
|
||||
"model" : "GeForce GT 650M"
|
||||
}
|
||||
},
|
||||
{
|
||||
"desc" : "Qualcomm",
|
||||
"renderer": "Adreno (TM) 320",
|
||||
"expect" :
|
||||
{
|
||||
"vendor" : "Qualcomm",
|
||||
"model" : "Adreno 320"
|
||||
}
|
||||
}
|
||||
]
|
||||
27
test/test.js
27
test/test.js
@@ -5,6 +5,7 @@ var browsers = require('./browser-test.json');
|
||||
var cpus = require('./cpu-test.json');
|
||||
var devices = require('./device-test.json');
|
||||
var engines = require('./engine-test.json');
|
||||
var gpus = require('./gpu-test.json');
|
||||
var os = require('./os-test.json');
|
||||
var parser = new UAParser();
|
||||
var methods = [
|
||||
@@ -32,6 +33,12 @@ var methods = [
|
||||
list : engines,
|
||||
properties : ['name', 'version']
|
||||
},
|
||||
{
|
||||
title : 'getGPU',
|
||||
label : 'gpu',
|
||||
list : gpus,
|
||||
properties : ['model', 'vendor']
|
||||
},
|
||||
{
|
||||
title : 'getOS',
|
||||
label : 'os',
|
||||
@@ -43,7 +50,7 @@ describe('UAParser()', function () {
|
||||
var ua = 'Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.6 (KHTML, like Gecko) Chrome/20.0.1090.0 Safari/536.6';
|
||||
assert.deepEqual(UAParser(ua), new UAParser().setUA(ua).getResult());
|
||||
});
|
||||
|
||||
/*
|
||||
for (var i in methods) {
|
||||
describe(methods[i]['title'], function () {
|
||||
for (var j in methods[i]['list']) {
|
||||
@@ -63,7 +70,22 @@ for (var i in methods) {
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}*/
|
||||
|
||||
describe('getGPU', function () {
|
||||
for (var i in gpus) {
|
||||
describe(`[${gpus[i].desc}] "${gpus[i].renderer}"`, function () {
|
||||
var gpu = parser.setRenderer(gpus[i].renderer).getGPU();
|
||||
var expect = gpus[i].expect;
|
||||
it(`should return vendor: ${expect.vendor}`, function(){
|
||||
assert.equal(gpu.vendor, expect.vendor != 'undefined' ? expect.vendor : undefined);
|
||||
})
|
||||
it(`should return model: ${expect.model}`, function(){
|
||||
assert.equal(gpu.model, expect.model != 'undefined' ? expect.model : undefined);
|
||||
})
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
describe('Returns', function () {
|
||||
it('getResult() should returns JSON', function(done) {
|
||||
@@ -74,6 +96,7 @@ describe('Returns', function () {
|
||||
cpu: { architecture: undefined },
|
||||
device: { vendor: undefined, model: undefined, type: undefined },
|
||||
engine: { name: undefined, version: undefined},
|
||||
gpu: { vendor: undefined, model: undefined},
|
||||
os: { name: undefined, version: undefined }
|
||||
});
|
||||
done();
|
||||
|
||||
Reference in New Issue
Block a user