| Index: third_party/WebKit/LayoutTests/http/tests/inspector-unit/trie.html
|
| diff --git a/third_party/WebKit/LayoutTests/http/tests/inspector-unit/trie.html b/third_party/WebKit/LayoutTests/http/tests/inspector-unit/trie.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..1a6e0a6044edf8340722afddabf4260ed502d77d
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/http/tests/inspector-unit/trie.html
|
| @@ -0,0 +1,171 @@
|
| +<html>
|
| +<head>
|
| +<base href="/inspector-debug/"></base>
|
| +<script src="/inspector-debug/Runtime.js"></script>
|
| +<script src="/inspector-unit/inspector-unit-test.js"></script>
|
| +<script>
|
| +function test() {
|
| + var trie;
|
| +
|
| + UnitTest.runTests([
|
| + function testAddWord()
|
| + {
|
| + var trie = new WebInspector.Trie();
|
| + addWord(trie, "hello");
|
| + hasWord(trie, "he");
|
| + hasWord(trie, "hello");
|
| + hasWord(trie, "helloo");
|
| + },
|
| +
|
| + function testAddWords()
|
| + {
|
| + var trie = new WebInspector.Trie();
|
| + addWord(trie, "foo");
|
| + addWord(trie, "bar");
|
| + addWord(trie, "bazz");
|
| + hasWord(trie, "f");
|
| + hasWord(trie, "ba");
|
| + hasWord(trie, "baz");
|
| + hasWord(trie, "bar");
|
| + hasWord(trie, "bazz");
|
| + },
|
| +
|
| + function testRemoveWord()
|
| + {
|
| + var trie = new WebInspector.Trie();
|
| + addWord(trie, "foo");
|
| + removeWord(trie, "f");
|
| + removeWord(trie, "fo");
|
| + removeWord(trie, "fooo");
|
| + hasWord(trie, "foo");
|
| + removeWord(trie, "foo");
|
| + hasWord(trie, "foo");
|
| + },
|
| +
|
| + function testWordOverwrite()
|
| + {
|
| + var trie = new WebInspector.Trie();
|
| + addWord(trie, "foo");
|
| + addWord(trie, "foo");
|
| + removeWord(trie, "foo");
|
| + hasWord(trie, "foo");
|
| + },
|
| +
|
| + function testRemoveNonExisting()
|
| + {
|
| + var trie = new WebInspector.Trie();
|
| + addWord(trie, "foo");
|
| + removeWord(trie, "bar");
|
| + removeWord(trie, "baz");
|
| + hasWord(trie, "foo");
|
| + },
|
| +
|
| + function testEmptyWord()
|
| + {
|
| + var trie = new WebInspector.Trie();
|
| + addWord(trie, "");
|
| + hasWord(trie, "");
|
| + removeWord(trie, "");
|
| + hasWord(trie, "");
|
| + },
|
| +
|
| + function testAllWords()
|
| + {
|
| + var trie = new WebInspector.Trie();
|
| + addWord(trie, "foo");
|
| + addWord(trie, "bar");
|
| + addWord(trie, "bazzz");
|
| + words(trie);
|
| + words(trie, "f");
|
| + words(trie, "g");
|
| + words(trie, "b");
|
| + words(trie, "ba");
|
| + words(trie, "bar");
|
| + words(trie, "barz");
|
| + words(trie, "baz");
|
| + },
|
| +
|
| + function testOneCharWords()
|
| + {
|
| + var trie = new WebInspector.Trie();
|
| + addWord(trie, "a");
|
| + addWord(trie, "b");
|
| + addWord(trie, "c");
|
| + words(trie);
|
| + },
|
| +
|
| + function testChainWords()
|
| + {
|
| + var trie = new WebInspector.Trie();
|
| + addWord(trie, "f");
|
| + addWord(trie, "fo");
|
| + addWord(trie, "foo");
|
| + addWord(trie, "foo");
|
| + words(trie);
|
| + },
|
| +
|
| + function testClearTrie()
|
| + {
|
| + var trie = new WebInspector.Trie();
|
| + addWord(trie, "foo");
|
| + addWord(trie, "bar");
|
| + words(trie);
|
| + clear(trie);
|
| + words(trie);
|
| + },
|
| +
|
| + function testLongestPrefix()
|
| + {
|
| + var trie = new WebInspector.Trie();
|
| + addWord(trie, "fo");
|
| + addWord(trie, "food");
|
| + longestPrefix(trie, "fear", false);
|
| + longestPrefix(trie, "fear", true);
|
| + longestPrefix(trie, "football", false);
|
| + longestPrefix(trie, "football", true);
|
| + longestPrefix(trie, "bar", false);
|
| + longestPrefix(trie, "bar", true);
|
| + },
|
| + ]);
|
| +
|
| + function hasWord(trie, word)
|
| + {
|
| + UnitTest.addResult(`trie.has("${word}") = ${trie.has(word)}`);
|
| + }
|
| +
|
| + function addWord(trie, word)
|
| + {
|
| + UnitTest.addResult(`trie.add("${word}")`);
|
| + trie.add(word);
|
| + }
|
| +
|
| + function removeWord(trie, word)
|
| + {
|
| + UnitTest.addResult(`trie.remove("${word}") = ${trie.remove(word)}`);
|
| + }
|
| +
|
| + function words(trie, prefix)
|
| + {
|
| + var title = prefix ? `trie.words("${prefix}")` : `trie.words()`;
|
| + var words = trie.words(prefix);
|
| + var text = words.length ? `[\n ${words.join(",\n ")}\n]` : "[]";
|
| + UnitTest.addResult(title + " = " + text);
|
| + }
|
| +
|
| + function clear(trie)
|
| + {
|
| + trie.clear();
|
| + UnitTest.addResult("trie.clear()");
|
| + }
|
| +
|
| + function longestPrefix(trie, word, fullWordOnly)
|
| + {
|
| + UnitTest.addResult(`trie.longestPrefix("${word}", ${fullWordOnly}) = "${trie.longestPrefix(word, fullWordOnly)}"`);
|
| + }
|
| +}
|
| +</script>
|
| +</head>
|
| +<body>
|
| +Verify "trie" functionality.
|
| +</body>
|
| +</html>
|
|
|