Bug 1425574 - Fill the feature gap between Console.jsm and Console API - part 5 - prefix, r=smaug, r=bgrins

This commit is contained in:
Andrea Marchesini 2018-01-04 19:19:44 +01:00
Родитель 64da136229
Коммит 761f064f3e
6 изменённых файлов: 16 добавлений и 1 удалений

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

@ -2591,6 +2591,11 @@ Console::MaybeExecuteDumpFunction(JSContext* aCx,
message.Append(aMethodName);
message.AppendLiteral(": ");
if (!mDumpPrefix.IsEmpty()) {
message.Append(mDumpPrefix);
message.AppendLiteral(": ");
}
for (uint32_t i = 0; i < aData.Length(); ++i) {
JS::Rooted<JS::Value> v(aCx, aData[i]);
JS::Rooted<JSString*> jsString(aCx, JS_ValueToSource(aCx, v));
@ -2624,6 +2629,11 @@ Console::MaybeExecuteDumpFunctionForTrace(JSContext* aCx, nsIStackFrame* aStack)
nsAutoString message;
message.AssignLiteral("console.trace:\n");
if (!mDumpPrefix.IsEmpty()) {
message.Append(mDumpPrefix);
message.AppendLiteral(": ");
}
nsCOMPtr<nsIStackFrame> stack(aStack);
while (stack) {

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

@ -433,6 +433,7 @@ private:
nsString mPassedInnerID;
RefPtr<ConsoleInstanceDumpCallback> mDumpFunction;
bool mDumpToStdout;
nsString mDumpPrefix;
enum {
eUnknown,

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

@ -31,6 +31,8 @@ ConsoleInstance::ConsoleInstance(const ConsoleInstanceOptions& aOptions)
// For historical reasons, ConsoleInstance prints messages on stdout.
mConsole->mDumpToStdout = true;
}
mConsole->mDumpPrefix = aOptions.mPrefix;
}
ConsoleInstance::~ConsoleInstance()

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

@ -13,6 +13,7 @@ this.ConsoleTest = {
consoleID: "wow",
innerID: "CUSTOM INNER",
dump: dumpFunction,
prefix: "_PREFIX_";
});
c.log("Hello world!");

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

@ -19,6 +19,7 @@ const JSM = "chrome://mochitests/content/chrome/dom/console/tests/console.jsm";
let dumpCalled = 0;
function dumpFunction(msg) {
ok(msg.indexOf("_PREFIX_") != -1, "we have a prefix");
dump("Message received: " + msg); // Just for debugging
dumpCalled++;
}

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

@ -158,8 +158,8 @@ callback ConsoleInstanceDumpCallback = void (DOMString message);
dictionary ConsoleInstanceOptions {
ConsoleInstanceDumpCallback dump;
/* TODO:
DOMString prefix = "";
/* TODO:
DOMString maxLogLevel = "";
*/
DOMString innerID = "";