summaryrefslogtreecommitdiffstats
path: root/devtools/client/debugger/test/mochitest/browser_dbg_searchbox-parse.js
blob: 2bb8e4150a332b06b91d6de2643ac8f1a0634de2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
/* vim: set ft=javascript ts=2 et sw=2 tw=80: */
/* Any copyright is dedicated to the Public Domain.
 * http://creativecommons.org/publicdomain/zero/1.0/ */

/**
 * Tests that text entered in the debugger's searchbox is properly parsed.
 */

function test() {
  initDebugger().then(([aTab,, aPanel]) => {
    let filterView = aPanel.panelWin.DebuggerView.Filtering;
    let searchbox = aPanel.panelWin.DebuggerView.Filtering._searchbox;

    setText(searchbox, "");
    is(filterView.searchData.toSource(), '["", [""]]',
      "The searchbox data wasn't parsed correctly (1).");

    setText(searchbox, "#token");
    is(filterView.searchData.toSource(), '["#", ["", "token"]]',
      "The searchbox data wasn't parsed correctly (2).");

    setText(searchbox, ":42");
    is(filterView.searchData.toSource(), '[":", ["", 42]]',
      "The searchbox data wasn't parsed correctly (3).");

    setText(searchbox, "#token:42");
    is(filterView.searchData.toSource(), '["#", ["", "token:42"]]',
      "The searchbox data wasn't parsed correctly (4).");

    setText(searchbox, ":42#token");
    is(filterView.searchData.toSource(), '["#", [":42", "token"]]',
      "The searchbox data wasn't parsed correctly (5).");

    setText(searchbox, "#token:42#token:42");
    is(filterView.searchData.toSource(), '["#", ["#token:42", "token:42"]]',
      "The searchbox data wasn't parsed correctly (6).");

    setText(searchbox, ":42#token:42#token");
    is(filterView.searchData.toSource(), '["#", [":42#token:42", "token"]]',
      "The searchbox data wasn't parsed correctly (7).");


    setText(searchbox, "file");
    is(filterView.searchData.toSource(), '["", ["file"]]',
      "The searchbox data wasn't parsed correctly (8).");

    setText(searchbox, "file#token");
    is(filterView.searchData.toSource(), '["#", ["file", "token"]]',
      "The searchbox data wasn't parsed correctly (9).");

    setText(searchbox, "file:42");
    is(filterView.searchData.toSource(), '[":", ["file", 42]]',
      "The searchbox data wasn't parsed correctly (10).");

    setText(searchbox, "file#token:42");
    is(filterView.searchData.toSource(), '["#", ["file", "token:42"]]',
      "The searchbox data wasn't parsed correctly (11).");

    setText(searchbox, "file:42#token");
    is(filterView.searchData.toSource(), '["#", ["file:42", "token"]]',
      "The searchbox data wasn't parsed correctly (12).");

    setText(searchbox, "file#token:42#token:42");
    is(filterView.searchData.toSource(), '["#", ["file#token:42", "token:42"]]',
      "The searchbox data wasn't parsed correctly (13).");

    setText(searchbox, "file:42#token:42#token");
    is(filterView.searchData.toSource(), '["#", ["file:42#token:42", "token"]]',
      "The searchbox data wasn't parsed correctly (14).");


    setText(searchbox, "!token");
    is(filterView.searchData.toSource(), '["!", ["token"]]',
      "The searchbox data wasn't parsed correctly (15).");

    setText(searchbox, "!token#global");
    is(filterView.searchData.toSource(), '["!", ["token#global"]]',
      "The searchbox data wasn't parsed correctly (16).");

    setText(searchbox, "!token#global:42");
    is(filterView.searchData.toSource(), '["!", ["token#global:42"]]',
      "The searchbox data wasn't parsed correctly (17).");

    setText(searchbox, "!token:42#global");
    is(filterView.searchData.toSource(), '["!", ["token:42#global"]]',
      "The searchbox data wasn't parsed correctly (18).");


    setText(searchbox, "@token");
    is(filterView.searchData.toSource(), '["@", ["token"]]',
      "The searchbox data wasn't parsed correctly (19).");

    setText(searchbox, "@token#global");
    is(filterView.searchData.toSource(), '["@", ["token#global"]]',
      "The searchbox data wasn't parsed correctly (20).");

    setText(searchbox, "@token#global:42");
    is(filterView.searchData.toSource(), '["@", ["token#global:42"]]',
      "The searchbox data wasn't parsed correctly (21).");

    setText(searchbox, "@token:42#global");
    is(filterView.searchData.toSource(), '["@", ["token:42#global"]]',
      "The searchbox data wasn't parsed correctly (22).");


    setText(searchbox, "*token");
    is(filterView.searchData.toSource(), '["*", ["token"]]',
      "The searchbox data wasn't parsed correctly (23).");

    setText(searchbox, "*token#global");
    is(filterView.searchData.toSource(), '["*", ["token#global"]]',
      "The searchbox data wasn't parsed correctly (24).");

    setText(searchbox, "*token#global:42");
    is(filterView.searchData.toSource(), '["*", ["token#global:42"]]',
      "The searchbox data wasn't parsed correctly (25).");

    setText(searchbox, "*token:42#global");
    is(filterView.searchData.toSource(), '["*", ["token:42#global"]]',
      "The searchbox data wasn't parsed correctly (26).");


    closeDebuggerAndFinish(aPanel);
  });
}