lita-google 0.1.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/lita/handlers/google.rb +10 -14
- data/lita-google.gemspec +3 -3
- data/spec/lita/handlers/google_spec.rb +3 -3
- data/spec/spec_helper.rb +2 -0
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b4079fc2e7915b16fec653ee9d7d7a4cc66a5ede
|
4
|
+
data.tar.gz: 0119e80fa94736073a9739433cddbe58419d1cb3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 64ac5a07542ac85e256a5630fa8490e3bfad184e95d47a1d3cda5073ba73da97c8649cebf654a74040848da945a1a35252b3032960dc27933c6db277e743ba2b
|
7
|
+
data.tar.gz: de3541305ed634f5ddea55afcbd13156f19d4fa46233ee367a5b5e5d3028662eab0475d57d9d33f7d4fe623d2754a3c709e77978c00c303e2b3c183f58851419
|
data/lib/lita/handlers/google.rb
CHANGED
@@ -7,21 +7,26 @@ module Lita
|
|
7
7
|
module Handlers
|
8
8
|
class Google < Handler
|
9
9
|
URL = "https://ajax.googleapis.com/ajax/services/search/web"
|
10
|
+
VALID_SAFE_VALUES = %w(active moderate off)
|
11
|
+
|
12
|
+
config :safe_search, types: [String, Symbol], default: :active do
|
13
|
+
validate do |value|
|
14
|
+
unless VALID_SAFE_VALUES.include?(value.to_s.strip)
|
15
|
+
"valid values are :active, :moderate, or :off"
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
10
19
|
|
11
20
|
route(/^(?:google|g)\s+(.+)/i, :search, command: true, help: {
|
12
21
|
"google QUERY" => "Return the first Google search result for QUERY."
|
13
22
|
})
|
14
23
|
|
15
|
-
def self.default_config(handler_config)
|
16
|
-
handler_config.safe_search = :active
|
17
|
-
end
|
18
|
-
|
19
24
|
def search(response)
|
20
25
|
query = response.matches[0][0]
|
21
26
|
|
22
27
|
http_response = http.get(
|
23
28
|
URL,
|
24
|
-
safe:
|
29
|
+
safe: config.safe_search,
|
25
30
|
q: query,
|
26
31
|
v: "1.0"
|
27
32
|
)
|
@@ -43,15 +48,6 @@ module Lita
|
|
43
48
|
)
|
44
49
|
end
|
45
50
|
end
|
46
|
-
|
47
|
-
private
|
48
|
-
|
49
|
-
def safe_value
|
50
|
-
safe = Lita.config.handlers.google.safe_search || "active"
|
51
|
-
safe = safe.to_s.downcase
|
52
|
-
safe = "active" unless ["active", "moderate", "off"].include?(safe)
|
53
|
-
safe
|
54
|
-
end
|
55
51
|
end
|
56
52
|
|
57
53
|
Lita.register_handler(Google)
|
data/lita-google.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |spec|
|
2
2
|
spec.name = "lita-google"
|
3
|
-
spec.version = "
|
3
|
+
spec.version = "1.0.0"
|
4
4
|
spec.authors = ["Jimmy Cuadra"]
|
5
5
|
spec.email = ["jimmy@jimmycuadra.com"]
|
6
6
|
spec.description = %q{A Lita handler for returning Google search results.}
|
@@ -14,11 +14,11 @@ Gem::Specification.new do |spec|
|
|
14
14
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
15
15
|
spec.require_paths = ["lib"]
|
16
16
|
|
17
|
-
spec.add_runtime_dependency "lita", ">=
|
17
|
+
spec.add_runtime_dependency "lita", ">= 4.0"
|
18
18
|
|
19
19
|
spec.add_development_dependency "bundler", "~> 1.3"
|
20
20
|
spec.add_development_dependency "rake"
|
21
|
-
spec.add_development_dependency "rspec", ">= 3.0.0
|
21
|
+
spec.add_development_dependency "rspec", ">= 3.0.0"
|
22
22
|
spec.add_development_dependency "simplecov"
|
23
23
|
spec.add_development_dependency "coveralls"
|
24
24
|
end
|
@@ -1,9 +1,9 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
3
|
describe Lita::Handlers::Google, lita_handler: true do
|
4
|
-
it {
|
5
|
-
it {
|
6
|
-
it {
|
4
|
+
it { is_expected.to route_command("google ruby").to(:search) }
|
5
|
+
it { is_expected.to route_command("google me ruby").to(:search) }
|
6
|
+
it { is_expected.to route_command("g ruby").to(:search) }
|
7
7
|
|
8
8
|
describe "#search" do
|
9
9
|
let(:response) do
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lita-google
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jimmy Cuadra
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-10-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: lita
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '4.0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '4.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -58,14 +58,14 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 3.0.0
|
61
|
+
version: 3.0.0
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 3.0.0
|
68
|
+
version: 3.0.0
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: simplecov
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|