Bug 1385791 - Fix tests; r=nchevobbe
MozReview-Commit-ID: LFKwQHj1pIk
--- a/devtools/client/webconsole/new-console-output/test/store/filters.test.js
+++ b/devtools/client/webconsole/new-console-output/test/store/filters.test.js
@@ -23,84 +23,106 @@ describe("Filtering", () => {
const numUnfilterableMessages = 3;
beforeEach(() => {
store = prepareBaseStore();
store.dispatch(actions.filtersClear());
numMessages = getVisibleMessages(store.getState()).length;
});
+ /**
+ * Tests for filter buttons in Console toolbar. The test switches off
+ * all filters and consequently tests one by one on the list of messages
+ * created in `prepareBaseStore` method.
+ */
describe("Level filter", () => {
+ beforeEach(() => {
+ // Switch off all filters (include those which are on by default).
+ store.dispatch(actions.filtersClear());
+ store.dispatch(actions.filterToggle(MESSAGE_LEVEL.DEBUG));
+ store.dispatch(actions.filterToggle(MESSAGE_LEVEL.ERROR));
+ store.dispatch(actions.filterToggle(MESSAGE_LEVEL.INFO));
+ store.dispatch(actions.filterToggle(MESSAGE_LEVEL.LOG));
+ store.dispatch(actions.filterToggle(MESSAGE_LEVEL.WARN));
+
+ let messages = getVisibleMessages(store.getState());
+ expect(messages.length).toEqual(numUnfilterableMessages);
+ });
+
it("filters log messages", () => {
store.dispatch(actions.filterToggle(MESSAGE_LEVEL.LOG));
let messages = getVisibleMessages(store.getState());
- expect(messages.length).toEqual(numMessages - 3);
+ expect(messages.length).toEqual(numUnfilterableMessages + 5);
});
it("filters debug messages", () => {
store.dispatch(actions.filterToggle(MESSAGE_LEVEL.DEBUG));
let messages = getVisibleMessages(store.getState());
- expect(messages.length).toEqual(numMessages - 1);
+ expect(messages.length).toEqual(numUnfilterableMessages + 1);
});
- // @TODO add info stub
- it("filters info messages");
+ it("filters info messages", () => {
+ store.dispatch(actions.filterToggle(MESSAGE_LEVEL.INFO));
+
+ let messages = getVisibleMessages(store.getState());
+ expect(messages.length).toEqual(numUnfilterableMessages + 1);
+ });
it("filters warning messages", () => {
store.dispatch(actions.filterToggle(MESSAGE_LEVEL.WARN));
let messages = getVisibleMessages(store.getState());
- expect(messages.length).toEqual(numMessages - 1);
+ expect(messages.length).toEqual(numUnfilterableMessages + 1);
});
it("filters error messages", () => {
store.dispatch(actions.filterToggle(MESSAGE_LEVEL.ERROR));
let messages = getVisibleMessages(store.getState());
- expect(messages.length).toEqual(numMessages - 1);
+ expect(messages.length).toEqual(numUnfilterableMessages + 3);
});
it("filters css messages", () => {
let message = stubPreparedMessages.get(
"Unknown property ‘such-unknown-property’. Declaration dropped."
);
store.dispatch(messageAdd(message));
let messages = getVisibleMessages(store.getState());
- expect(messages.length).toEqual(numMessages);
+ expect(messages.length).toEqual(numUnfilterableMessages);
store.dispatch(actions.filterToggle("css"));
messages = getVisibleMessages(store.getState());
- expect(messages.length).toEqual(numMessages + 1);
+ expect(messages.length).toEqual(numUnfilterableMessages + 1);
});
it("filters xhr messages", () => {
let message = stubPreparedMessages.get("XHR GET request");
store.dispatch(messageAdd(message));
let messages = getVisibleMessages(store.getState());
- expect(messages.length).toEqual(numMessages);
+ expect(messages.length).toEqual(numUnfilterableMessages);
store.dispatch(actions.filterToggle("netxhr"));
messages = getVisibleMessages(store.getState());
- expect(messages.length).toEqual(numMessages + 1);
+ expect(messages.length).toEqual(numUnfilterableMessages + 1);
});
it("filters network messages", () => {
let message = stubPreparedMessages.get("GET request");
store.dispatch(messageAdd(message));
let messages = getVisibleMessages(store.getState());
- expect(messages.length).toEqual(numMessages);
+ expect(messages.length).toEqual(numUnfilterableMessages);
store.dispatch(actions.filterToggle("net"));
messages = getVisibleMessages(store.getState());
- expect(messages.length).toEqual(numMessages + 1);
+ expect(messages.length).toEqual(numUnfilterableMessages + 1);
});
});
describe("Text filter", () => {
it("set the expected property on the store", () => {
store.dispatch(actions.filterTextSet("danger"));
expect(getAllFilters(store.getState()).text).toEqual("danger");
});
@@ -225,16 +247,21 @@ function prepareBaseStore() {
"console.warn('danger, will robinson!')",
"console.log(undefined)",
"console.count('bar')",
"console.log('鼬')",
// Evaluation Result - never filtered
"new Date(0)",
// PageError
"ReferenceError: asdf is not defined",
- "console.group('bar')"
+ "console.group('bar')",
+ "console.debug('debug message');",
+ "console.info('info message');",
+ "console.error('error message');",
+ "console.table(['red', 'green', 'blue']);",
+ "console.assert(false, {message: 'foobar'})",
]);
// Console Command - never filtered
store.dispatch(messageAdd(new ConsoleCommand({ messageText: `console.warn("x")` })));
return store;
}