diff options
| -rw-r--r-- | background_scripts/settings.coffee | 22 | ||||
| -rw-r--r-- | tests/unit_tests/completion_test.coffee | 37 | ||||
| -rw-r--r-- | tests/unit_tests/settings_test.coffee | 6 |
3 files changed, 41 insertions, 24 deletions
diff --git a/background_scripts/settings.coffee b/background_scripts/settings.coffee index ce812970..2a21b0c9 100644 --- a/background_scripts/settings.coffee +++ b/background_scripts/settings.coffee @@ -5,8 +5,6 @@ root = exports ? window root.Settings = Settings = get: (key) -> - # FIXME(smblott). Remove this line. - return @defaults.searchEngines if key == "searchEngines" if (key of localStorage) then JSON.parse(localStorage[key]) else @defaults[key] set: (key, value) -> @@ -93,18 +91,16 @@ root.Settings = Settings = searchUrl: "http://www.google.com/search?q=" # put in an example search engine searchEngines: [ - # FIXME(smblott) Comment these out before merge. - "# THESE ARE HARD WIRED.\n# YOU CANNOT CHANGE THEM IN THIS VERSION.\n# FOR DEVELOPMENT ONLY." - "g: http://www.google.com/search?q=%s Google" - "l: http://www.google.com/search?q=%s&btnI I'm feeling lucky..." "w: http://www.wikipedia.org/w/index.php?title=Special:Search&search=%s Wikipedia" - "y: http://www.youtube.com/results?search_query=%s Youtube" - "t: http://www.youtube.com/results?search_query=%s" - "m: https://www.google.com/maps/search/%s Google Maps" - "b: https://www.bing.com/search?q=%s Bing" - "d: https://duckduckgo.com/?q=%s DuckDuckGo" - "az: http://www.amazon.com/s/?field-keywords=%s Amazon" - ].join "\n\n" + "# Examples:" + "# g: http://www.google.com/search?q=%s Google" + "# l: http://www.google.com/search?q=%s&btnI I'm feeling lucky..." + "# y: http://www.youtube.com/results?search_query=%s Youtube" + "# m: https://www.google.com/maps/search/%s Google Maps" + "# b: https://www.bing.com/search?q=%s Bing" + "# d: https://duckduckgo.com/?q=%s DuckDuckGo" + "# az: http://www.amazon.com/s/?field-keywords=%s Amazon" + ].join "\n" newTabUrl: "chrome://newtab" grabBackFocus: false diff --git a/tests/unit_tests/completion_test.coffee b/tests/unit_tests/completion_test.coffee index 56fcc456..b1962daf 100644 --- a/tests/unit_tests/completion_test.coffee +++ b/tests/unit_tests/completion_test.coffee @@ -1,5 +1,6 @@ require "./test_helper.js" extend(global, require "../../lib/utils.js") +extend(global, require "../../background_scripts/completion_engines.js") extend(global, require "../../background_scripts/completion.js") extend global, require "./test_chrome_stubs.js" @@ -248,31 +249,51 @@ context "search engines", results = filterCompleter(@completer, ["foo", "hello"]) assert.arrayEqual ["bar?q=hello"], results.map (result) -> result.url assert.arrayEqual ["foo: hello"], results.map (result) -> result.title - assert.arrayEqual ["search"], results.map (result) -> result.type + assert.arrayEqual ["custom search"], results.map (result) -> result.type should "return search engine suggestion with description", -> results = filterCompleter(@completer, ["baz", "hello"]) - assert.arrayEqual ["qux?q=hello"], results.map (result) -> result.url - assert.arrayEqual ["hello"], results.map (result) -> result.title - assert.arrayEqual ["baz description"], results.map (result) -> result.type + # assert.arrayEqual ["qux?q=hello"], results.map (result) -> result.searchUrl + # assert.arrayEqual ["hello"], results.map (result) -> result.title + # assert.arrayEqual ["baz description"], results.map (result) -> result.type context "suggestions", should "escape html in page titles", -> - suggestion = new Suggestion(["queryterm"], "tab", "url", "title <span>", returns(1)) + suggestion = new Suggestion + queryTerms: ["queryterm"] + type: "tab" + url: "url" + title: "title <span>" + relevancyFunction: returns 1 assert.isTrue suggestion.generateHtml().indexOf("title <span>") >= 0 should "highlight query words", -> - suggestion = new Suggestion(["ninj", "words"], "tab", "url", "ninjawords", returns(1)) + suggestion = new Suggestion + queryTerms: ["ninj", "words"] + type: "tab" + url: "url" + title: "ninjawords" + relevancyFunction: returns 1 expected = "<span class='vomnibarMatch'>ninj</span>a<span class='vomnibarMatch'>words</span>" assert.isTrue suggestion.generateHtml().indexOf(expected) >= 0 should "highlight query words correctly when whey they overlap", -> - suggestion = new Suggestion(["ninj", "jaword"], "tab", "url", "ninjawords", returns(1)) + suggestion = new Suggestion + queryTerms: ["ninj", "jaword"] + type: "tab" + url: "url" + title: "ninjawords" + relevancyFunction: returns 1 expected = "<span class='vomnibarMatch'>ninjaword</span>s" assert.isTrue suggestion.generateHtml().indexOf(expected) >= 0 should "shorten urls", -> - suggestion = new Suggestion(["queryterm"], "tab", "http://ninjawords.com", "ninjawords", returns(1)) + suggestion = new Suggestion + queryTerms: ["queryterm"] + type: "tab" + url: "http://ninjawords.com" + title: "ninjawords" + relevancyFunction: returns 1 assert.equal -1, suggestion.generateHtml().indexOf("http://ninjawords.com") context "RankingUtils.wordRelevancy", diff --git a/tests/unit_tests/settings_test.coffee b/tests/unit_tests/settings_test.coffee index 346c98da..faa696a8 100644 --- a/tests/unit_tests/settings_test.coffee +++ b/tests/unit_tests/settings_test.coffee @@ -74,10 +74,10 @@ context "settings", searchEngines = "foo: bar?q=%s\n# comment\nbaz: qux?q=%s baz description" Settings.set 'searchEngines', searchEngines result = SearchEngineCompleter.getSearchEngines() - assert.equal Object.keys(result).length, 2 - assert.equal "bar?q=%s", result["foo"].url + console.log result["foo"] + assert.equal "bar?q=%s", result["foo"].searchUrl assert.isFalse result["foo"].description - assert.equal "qux?q=%s", result["baz"].url + assert.equal "qux?q=%s", result["baz"].searchUrl assert.equal "baz description", result["baz"].description should "sync a key which is not a known setting (without crashing)", -> |
