lita-onewheel-wolfram-alpha 0.2.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.travis.yml +1 -1
- data/lib/lita/handlers/onewheel_wolfram_alpha.rb +13 -0
- data/lita-onewheel-wolfram-alpha.gemspec +4 -4
- data/spec/lita/handlers/onewheel_wolfram_alpha_spec.rb +13 -0
- metadata +11 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 88bf71935b5fd25272b62419319e7001b9169eb852187daa9264ae58416be58c
|
4
|
+
data.tar.gz: a2d3bb639d7493d4d22918b8fb19231ac498de33e4d74dc777aea19c14e4e1aa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0527a1ab48820c2aeaffe4b41dad3f9d782f24df286f5d90b99c55239ad210b143bc170dbc3856cc808dd02df1a5dcff8d51ebe20cadf70dc1fe9ca264323da4
|
7
|
+
data.tar.gz: 5ddac53968363bdb1e352f652a67d19d04d4ff22c59d3bf5f2a4a2a8751992a12ba6e793c9e7508f29566cba5128e38c9ba33e9182601530db88981ff3b97355
|
data/.travis.yml
CHANGED
@@ -8,6 +8,12 @@ module Lita
|
|
8
8
|
config :api_uri
|
9
9
|
|
10
10
|
route(/^alpha\s*(.*)/i, :handle_wolfram_query, command: true)
|
11
|
+
route(/^quote\s*(.*)/i, :handle_wolfram_quote, command: true)
|
12
|
+
|
13
|
+
def handle_wolfram_quote(response)
|
14
|
+
response.matches[0][0] = "quote #{response.matches[0][0]}"
|
15
|
+
handle_wolfram_query(response)
|
16
|
+
end
|
11
17
|
|
12
18
|
def handle_wolfram_query(response)
|
13
19
|
unless config.app_id and config.api_uri
|
@@ -19,9 +25,15 @@ module Lita
|
|
19
25
|
post_script = ''
|
20
26
|
|
21
27
|
if matches = query.match(/\<(.*)\>/)
|
28
|
+
query.gsub! /\<#{matches[1]}\>/, ''
|
22
29
|
post_script = " #{matches[1]}"
|
23
30
|
end
|
24
31
|
|
32
|
+
# fraction hack
|
33
|
+
if query.match /\// and !query.match /\./
|
34
|
+
query += ".0"
|
35
|
+
end
|
36
|
+
|
25
37
|
api_response = make_api_call query
|
26
38
|
reply = parse_response api_response, query
|
27
39
|
reply += post_script
|
@@ -61,6 +73,7 @@ module Lita
|
|
61
73
|
def make_api_call(query)
|
62
74
|
Lita.logger.debug "lita-onewheel-wolfram-alpha: Making api call for #{query}"
|
63
75
|
uri = build_uri query
|
76
|
+
Lita.logger.debug "lita-onewheel-wolfram-alpha: #{uri}"
|
64
77
|
response = RestClient.get(uri)
|
65
78
|
Lita.logger.debug 'lita-onewheel-wolfram-alpha: ' + response.to_s
|
66
79
|
Nokogiri::XML response.to_s
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |spec|
|
2
2
|
spec.name = 'lita-onewheel-wolfram-alpha'
|
3
|
-
spec.version = '0.
|
3
|
+
spec.version = '0.4.0'
|
4
4
|
spec.authors = ['Andrew Kreps']
|
5
5
|
spec.email = ['andrew.kreps@gmail.com']
|
6
6
|
spec.description = %q{Lita interface to Wolfram Alpha.}
|
@@ -15,12 +15,12 @@ Gem::Specification.new do |spec|
|
|
15
15
|
spec.require_paths = ['lib']
|
16
16
|
|
17
17
|
spec.add_runtime_dependency 'lita', '~> 4'
|
18
|
-
spec.add_runtime_dependency 'rest-client', '~>
|
18
|
+
spec.add_runtime_dependency 'rest-client', '~> 2'
|
19
19
|
spec.add_runtime_dependency 'nokogiri', '~> 1'
|
20
20
|
|
21
|
-
spec.add_development_dependency 'bundler', '~>
|
21
|
+
spec.add_development_dependency 'bundler', '~> 2'
|
22
22
|
# spec.add_development_dependency 'pry-byebug', '~> 3.1'
|
23
|
-
spec.add_development_dependency 'rake'
|
23
|
+
spec.add_development_dependency 'rake', '~> 12'
|
24
24
|
spec.add_development_dependency 'rack-test', '~> 0'
|
25
25
|
spec.add_development_dependency 'rspec', '~> 3'
|
26
26
|
spec.add_development_dependency 'simplecov', '~> 0'
|
@@ -18,6 +18,7 @@ describe Lita::Handlers::OnewheelWolframAlpha, :lita_handler => true do
|
|
18
18
|
end
|
19
19
|
|
20
20
|
it { is_expected.to route_command('alpha') }
|
21
|
+
it { is_expected.to route_command('quote') }
|
21
22
|
|
22
23
|
it 'will work' do
|
23
24
|
mock_fixture('pi')
|
@@ -61,4 +62,16 @@ describe Lita::Handlers::OnewheelWolframAlpha, :lita_handler => true do
|
|
61
62
|
send_command 'alpha x^2 <as a service>'
|
62
63
|
expect(replies.last).to eq('http://www2.wolframalpha.com/Calculate/MSP/MSP8620hdi8ba18h005cd0000268f85ce36b8h331?MSPStoreType=image/gif&s=15 as a service')
|
63
64
|
end
|
65
|
+
|
66
|
+
it 'will add .0 to a fraction' do
|
67
|
+
mock_fixture('oneovertwo')
|
68
|
+
send_command 'alpha 1/2'
|
69
|
+
expect(replies.last).to eq('0.5')
|
70
|
+
end
|
71
|
+
|
72
|
+
it 'will quote' do
|
73
|
+
mock_fixture('quote')
|
74
|
+
send_command 'quote amzn'
|
75
|
+
expect(replies.last).to eq('x')
|
76
|
+
end
|
64
77
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lita-onewheel-wolfram-alpha
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Kreps
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-10-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: lita
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '2'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '2'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: nokogiri
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -58,28 +58,28 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '2'
|
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: '
|
68
|
+
version: '2'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rake
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - "
|
73
|
+
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
75
|
+
version: '12'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - "
|
80
|
+
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
82
|
+
version: '12'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: rack-test
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -180,8 +180,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
180
180
|
- !ruby/object:Gem::Version
|
181
181
|
version: '0'
|
182
182
|
requirements: []
|
183
|
-
|
184
|
-
rubygems_version: 2.6.11
|
183
|
+
rubygems_version: 3.0.3
|
185
184
|
signing_key:
|
186
185
|
specification_version: 4
|
187
186
|
summary: Summarize THIS!
|