|
1 function test() { |
|
2 var startup_info = Components.classes["@mozilla.org/toolkit/app-startup;1"].getService(Components.interfaces.nsIAppStartup).getStartupInfo(); |
|
3 // No .process info on mac |
|
4 |
|
5 // Check if we encountered a telemetry error for the the process creation |
|
6 // timestamp and turn the first test into a known failure. |
|
7 var telemetry = Cc["@mozilla.org/base/telemetry;1"].getService(Ci.nsITelemetry); |
|
8 var snapshot = telemetry.getHistogramById("STARTUP_MEASUREMENT_ERRORS") |
|
9 .snapshot(); |
|
10 |
|
11 if (snapshot.counts[0] == 0) |
|
12 ok(startup_info.process <= startup_info.main, "process created before main is run " + uneval(startup_info)); |
|
13 else |
|
14 todo(false, "An error occurred while recording the process creation timestamp, skipping this test"); |
|
15 |
|
16 // on linux firstPaint can happen after everything is loaded (especially with remote X) |
|
17 if (startup_info.firstPaint) |
|
18 ok(startup_info.main <= startup_info.firstPaint, "main ran before first paint " + uneval(startup_info)); |
|
19 |
|
20 ok(startup_info.main < startup_info.sessionRestored, "Session restored after main " + uneval(startup_info)); |
|
21 } |