Bug 1536877 - Correct the 'value' type in 'browser.telemetry.recordEvent'; r=rpl

MozReview-Commit-ID: EvI2FvsOjDx

Differential Revision: https://phabricator.services.mozilla.com/D27404

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Jared Hirsch 2019-04-15 21:23:02 +00:00
parent 18065e80c7
commit a682f7645f
3 changed files with 31 additions and 2 deletions

View File

@ -227,7 +227,7 @@
},
{
"name": "value",
"type": "integer",
"type": "string",
"optional": true,
"description": "An optional string value to record."
},

View File

@ -190,6 +190,35 @@ if (AppConstants.MOZ_BUILD_APP === "browser") {
Services.telemetry.clearEvents();
});
// Bug 1536877
add_task(async function test_telemetry_record_event_value_must_be_string() {
Services.telemetry.clearEvents();
Services.telemetry.setEventRecordingEnabled("telemetry.test", true);
await run({
backgroundScript: async () => {
try {
await browser.telemetry.recordEvent("telemetry.test", "test1", "object1", "value1");
browser.test.notifyPass("record_event_string_value");
} catch (ex) {
browser.test.fail(`Unexpected exception raised during record_event_value_must_be_string: ${ex}`);
browser.test.notifyPass("record_event_string_value");
throw ex;
}
},
doneSignal: "record_event_string_value",
});
let events = Services.telemetry.snapshotEvents(Ci.nsITelemetry.DATASET_PRERELEASE_CHANNELS, true);
equal(events.parent.length, 1);
equal(events.parent[0][1], "telemetry.test");
equal(events.parent[0][3], "object1");
equal(events.parent[0][4], "value1");
Services.telemetry.setEventRecordingEnabled("telemetry.test", false);
Services.telemetry.clearEvents();
});
add_task(async function test_telemetry_register_scalars_string() {
Services.telemetry.clearScalars();

View File

@ -118,7 +118,7 @@ Record an event in Telemetry. Throws when trying to record an unknown event.
* ``category`` - *(string)* The category name.
* ``method`` - *(string)* The method name.
* ``object`` - *(string)* The object name.
* ``value`` - *(optional, integer)* An optional string value to record.
* ``value`` - *(optional, string)* An optional string value to record.
* ``extra`` - *(optional, object)* An optional object of the form (string -> string). It should only contain registered extra keys.
``registerScalars``