From 14d3ee15540446470f6dc7731697d669b39a9fdc Mon Sep 17 00:00:00 2001 From: Jimmy Cuadra Date: Wed, 26 Feb 2014 20:53:16 -0800 Subject: [PATCH] Use unescaped URL and unescape HTML entities. --- lib/lita/handlers/google.rb | 7 ++++++- spec/lita/handlers/google_spec.rb | 6 +++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/lib/lita/handlers/google.rb b/lib/lita/handlers/google.rb index b55bcbc..0c9e5f7 100644 --- a/lib/lita/handlers/google.rb +++ b/lib/lita/handlers/google.rb @@ -1,3 +1,6 @@ +require "cgi" +require "uri" + require "lita" module Lita @@ -28,7 +31,9 @@ def search(response) result = data["responseData"]["results"].first if result - response.reply("#{result["titleNoFormatting"]} - #{result["url"]}") + response.reply( + "#{CGI.unescapeHTML(result["titleNoFormatting"])} - #{result["unescapedUrl"]}" + ) else response.reply("No search results for query: #{query}") end diff --git a/spec/lita/handlers/google_spec.rb b/spec/lita/handlers/google_spec.rb index 425f3a5..4331fde 100644 --- a/spec/lita/handlers/google_spec.rb +++ b/spec/lita/handlers/google_spec.rb @@ -23,8 +23,8 @@ { "responseData": { "results": [{ - "url": "https://www.ruby-lang.org/", - "titleNoFormatting": "Ruby Programming Language" + "unescapedUrl": "http://www.youtube.com/watch?v=EwTZ2xpQwpA", + "titleNoFormatting": ""Chocolate Rain" Original Song by Tay Zonday" }] } } @@ -34,7 +34,7 @@ send_command("google ruby") expect(replies.last).to eq( - "Ruby Programming Language - https://www.ruby-lang.org/" + %{"Chocolate Rain" Original Song by Tay Zonday - http://www.youtube.com/watch?v=EwTZ2xpQwpA} ) end