1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/services/healthreport/tests/xpcshell/test_provider_sysinfo.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,41 @@ 1.4 +/* Any copyright is dedicated to the Public Domain. 1.5 + * http://creativecommons.org/publicdomain/zero/1.0/ */ 1.6 + 1.7 +"use strict"; 1.8 + 1.9 +const {interfaces: Ci, results: Cr, utils: Cu} = Components; 1.10 + 1.11 +Cu.import("resource://gre/modules/Metrics.jsm"); 1.12 +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); 1.13 +Cu.import("resource://gre/modules/services/healthreport/providers.jsm"); 1.14 + 1.15 + 1.16 +function run_test() { 1.17 + run_next_test(); 1.18 +} 1.19 + 1.20 +add_test(function test_constructor() { 1.21 + let provider = new SysInfoProvider(); 1.22 + 1.23 + run_next_test(); 1.24 +}); 1.25 + 1.26 +add_task(function test_collect_smoketest() { 1.27 + let storage = yield Metrics.Storage("collect_smoketest"); 1.28 + let provider = new SysInfoProvider(); 1.29 + yield provider.init(storage); 1.30 + 1.31 + yield provider.collectConstantData(); 1.32 + 1.33 + let m = provider.getMeasurement("sysinfo", 2); 1.34 + let data = yield storage.getMeasurementValues(m.id); 1.35 + let serializer = m.serializer(m.SERIALIZE_JSON); 1.36 + let d = serializer.singular(data.singular); 1.37 + 1.38 + do_check_eq(d._v, 2); 1.39 + do_check_true(d.cpuCount > 0); 1.40 + do_check_neq(d.name, null); 1.41 + 1.42 + yield storage.close(); 1.43 +}); 1.44 +