lita-alexa-news-publisher 0.1.4 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c6d58a97422ac6e7254b6598f156b98edee3b0bd
|
4
|
+
data.tar.gz: 025fa934d5de3f245532092334b9e68beba9c603
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dd30a0e9f500054009051fc47704cb74a82e179c47ff4d0fde933c16521b49936b57f9a7ddcf39c36628f83e08460e46c125faa6bb61e3081b6396ace4db2344
|
7
|
+
data.tar.gz: f765418835fd998bce786b9ba843499cb3b748c3cda32ce27d36f1fad6ea80b75f98979e01ea3398119ac45a7bdefcf8f8e561ea2b2e693f4554ff02e60cb53a
|
data/.travis.yml
CHANGED
@@ -15,19 +15,18 @@ module Lita
|
|
15
15
|
|
16
16
|
messages = Lita.redis.lrange(STORE_KEY, 0, MAX_MESSAGE_COUNT)
|
17
17
|
|
18
|
-
formatted_messages = messages.map { |m| alexify m }
|
18
|
+
formatted_messages = messages.map { |m| alexify JSON.parse(m, symbolize_keys: true) }
|
19
19
|
|
20
20
|
response.headers["Content-Type"] = "application/json"
|
21
21
|
response.write(MultiJson.dump(formatted_messages))
|
22
22
|
end
|
23
23
|
|
24
24
|
def alexify(message)
|
25
|
-
|
26
|
-
main_text = parsed.fetch('message')
|
25
|
+
main_text = message.fetch(:message)
|
27
26
|
|
28
27
|
{
|
29
|
-
"uid":
|
30
|
-
"updateDate":
|
28
|
+
"uid": message.fetch(:uuid),
|
29
|
+
"updateDate": message.fetch(:timestamp),
|
31
30
|
"titleText": "Lita update",
|
32
31
|
"mainText": main_text,
|
33
32
|
"redirectionUrl": "https://github.com/dpritchett/lita-alexa-news-publisher"
|
@@ -50,6 +49,7 @@ module Lita
|
|
50
49
|
Lita.redis.rpush(STORE_KEY, JSON.dump(payload))
|
51
50
|
|
52
51
|
prune_message_list!
|
52
|
+
payload
|
53
53
|
rescue Redis::CommandError
|
54
54
|
@retries ||= 0
|
55
55
|
@retries += 1
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |spec|
|
2
2
|
spec.name = "lita-alexa-news-publisher"
|
3
|
-
spec.version = "0.1.
|
3
|
+
spec.version = "0.1.5"
|
4
4
|
spec.authors = ["Daniel J. Pritchett"]
|
5
5
|
spec.email = ["dpritchett@gmail.com"]
|
6
6
|
spec.description = "Allows Lita users to publish a .plan-style personal news feed for consumption as an Alexa Flash Briefing source"
|
@@ -4,8 +4,6 @@ require 'date'
|
|
4
4
|
|
5
5
|
describe Lita::Handlers::AlexaNewsPublisher, lita_handler: true do
|
6
6
|
let(:robot) { Lita::Robot.new(registry) }
|
7
|
-
let(:jpeg_url_match) { /http.*\.jpg/i }
|
8
|
-
let(:aliens_template_id) { 101470 }
|
9
7
|
|
10
8
|
subject { described_class.new(robot) }
|
11
9
|
|
@@ -14,12 +12,23 @@ describe Lita::Handlers::AlexaNewsPublisher, lita_handler: true do
|
|
14
12
|
end
|
15
13
|
|
16
14
|
describe ':save_message' do
|
17
|
-
|
18
|
-
|
15
|
+
let(:body) { 'hello, alexa!' }
|
16
|
+
it 'saves a message and acknowledges' do
|
17
|
+
result = subject.save_message(username: 'dpritchett', message: body)
|
18
|
+
|
19
|
+
expect(result.fetch(:message)).to eq body
|
19
20
|
end
|
21
|
+
|
22
|
+
it { is_expected.to route_event(:save_alexa_message).to(:save_message) }
|
20
23
|
end
|
21
24
|
|
22
|
-
describe ':
|
25
|
+
describe ':alexify' do
|
26
|
+
let(:message) { subject.save_message username: 'daniel', message: 'test message'}
|
27
|
+
|
28
|
+
it 'should return a hash with an alexa-specific shape' do
|
29
|
+
result = subject.alexify(message)
|
30
|
+
expect(result.fetch(:mainText)).to eq('test message')
|
31
|
+
end
|
23
32
|
end
|
24
33
|
|
25
34
|
it 'can grab a message from chat and store it' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lita-alexa-news-publisher
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel J. Pritchett
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-08-
|
11
|
+
date: 2017-08-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: lita
|