Bug 1738627 - Better Synchronize profiler features lists - r=canaltinova

Differential Revision: https://phabricator.services.mozilla.com/D130563
This commit is contained in:
Gerald Squelart 2021-11-08 23:59:36 +00:00
Родитель 2a8eb1038b
Коммит b3ef8bb344
4 изменённых файлов: 12 добавлений и 6 удалений

Просмотреть файл

@ -148,6 +148,7 @@ class MOZ_RAII AutoProfilerStats {
// values are used internally only and so can be changed without consequence.
// Any changes to this list should also be applied to the feature list in
// toolkit/components/extensions/schemas/geckoProfiler.json.
// *** Synchronize with lists in ProfilerState.h and geckoProfiler.json ***
# define BASE_PROFILER_FOR_EACH_FEATURE(MACRO) \
MACRO(0, "java", Java, "Profile Java code, Android only") \
\
@ -206,6 +207,7 @@ class MOZ_RAII AutoProfilerStats {
MACRO(19, "notimerresolutionchange", NoTimerResolutionChange, \
"Do not adjust the timer resolution for fast sampling, so that " \
"other Firefox timers do not get affected")
// *** Synchronize with lists in ProfilerState.h and geckoProfiler.json ***
struct ProfilerFeature {
# define DECLARE(n_, str_, Name_, desc_) \

Просмотреть файл

@ -27,7 +27,9 @@
"js",
"leaf",
"mainthreadio",
"responsiveness",
"fileio",
"fileioall",
"noiostacks",
"screenshots",
"seqstyle",
"stackwalk",
@ -35,15 +37,13 @@
"jstracer",
"jsallocations",
"nostacksampling",
"nativeallocations",
"preferencereads",
"nativeallocations",
"ipcmessages",
"fileio",
"fileioall",
"noiostacks",
"audiocallbacktracing",
"cpu",
"notimerresolutionchange"
"notimerresolutionchange",
"responsiveness"
]
},
{

Просмотреть файл

@ -40,12 +40,14 @@ add_task(async function() {
// Check that the list of available values in the ProfilerFeature enum
// matches the list of features supported by the profiler.
for (const feature of allFeaturesAcceptedByProfiler) {
// If this fails, check the lists in {,Base}ProfilerState.h and geckoProfiler.json.
ok(
acceptedFeatures.includes(feature),
`The schema of the geckoProfiler.start() method should accept the "${feature}" feature.`
);
}
for (const feature of acceptedFeatures) {
// If this fails, check the lists in {,Base}ProfilerState.h and geckoProfiler.json.
ok(
// Bug 1594566 - ignore Responsiveness until the extension is updated
allFeaturesAcceptedByProfiler.includes(feature) ||

Просмотреть файл

@ -27,6 +27,7 @@
// values are used internally only and so can be changed without consequence.
// Any changes to this list should also be applied to the feature list in
// toolkit/components/extensions/schemas/geckoProfiler.json.
// *** Synchronize with lists in BaseProfilerState.h and geckoProfiler.json ***
#define PROFILER_FOR_EACH_FEATURE(MACRO) \
MACRO(0, "java", Java, "Profile Java code, Android only") \
\
@ -85,6 +86,7 @@
MACRO(19, "notimerresolutionchange", NoTimerResolutionChange, \
"Do not adjust the timer resolution for sampling, so that other " \
"Firefox timers do not get affected")
// *** Synchronize with lists in BaseProfilerState.h and geckoProfiler.json ***
struct ProfilerFeature {
#define DECLARE(n_, str_, Name_, desc_) \