lita-ping-me 0.0.2 → 0.0.3
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/ping-me.rb +13 -3
- data/lita-ping-me.gemspec +2 -1
- data/spec/lib/handlers/ping-me_spec.rb +17 -1
- data/spec/spec_helper.rb +1 -2
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5634f70a83b8256e0411d384b9af6425d7805656
|
4
|
+
data.tar.gz: e6af0a61a28a859a3ce91b76c5b7d77cfe46d544
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55f94679ca8c27028357c2e986e5f9fec27f522011a36af3c31ad8b672fa55cb08017beaa2969a04cefdb997f9724aa3e05b2f4d1cde9175194bf892511edfbb
|
7
|
+
data.tar.gz: 6dbf15089de9fcb6b9079528bd1546dc8c461c2761ac4bfa0948da1d72e0bbd999e21c6be1288db88f18ded7e283c43c1b869a8bc3d847b47667ff8b573b43f1
|
@@ -30,6 +30,7 @@ module Lita
|
|
30
30
|
end
|
31
31
|
|
32
32
|
route(/^sleep[\s+]?(\d+)?/, :sleep)
|
33
|
+
route(/^wake?/, :wake)
|
33
34
|
|
34
35
|
route(/^any errors\?/, :check_for_errors)
|
35
36
|
|
@@ -50,9 +51,13 @@ module Lita
|
|
50
51
|
end
|
51
52
|
|
52
53
|
def sleep(response)
|
54
|
+
@sleeping = true
|
53
55
|
time = parse_time(response.args.first.to_i)
|
54
56
|
timer.stop
|
55
|
-
after(time)
|
57
|
+
after(time) do
|
58
|
+
@sleeping = false
|
59
|
+
start_pinging
|
60
|
+
end
|
56
61
|
response.reply("Sure, will sleep for #{seconds_to_minutes(time)} minutes")
|
57
62
|
end
|
58
63
|
|
@@ -63,10 +68,15 @@ module Lita
|
|
63
68
|
end
|
64
69
|
|
65
70
|
def notify(request, response)
|
71
|
+
return if @sleeping
|
66
72
|
id = request.env["router.params"][:id]
|
67
73
|
msg = id.split('_').join(" ")
|
68
74
|
send_message("#{msg}")
|
69
|
-
response.body << "#{msg}
|
75
|
+
response.body << "#{msg}"
|
76
|
+
end
|
77
|
+
|
78
|
+
def wake(_)
|
79
|
+
@sleeping = false
|
70
80
|
end
|
71
81
|
|
72
82
|
private
|
@@ -100,7 +110,7 @@ module Lita
|
|
100
110
|
end
|
101
111
|
|
102
112
|
def target(payload = {})
|
103
|
-
@target ||= Source.new(room: config.room)
|
113
|
+
@target ||= Source.new(room: config.room || '')
|
104
114
|
end
|
105
115
|
|
106
116
|
def send_message(msg)
|
data/lita-ping-me.gemspec
CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
6
|
spec.name = "lita-ping-me"
|
7
|
-
spec.version = '0.0.
|
7
|
+
spec.version = '0.0.3'
|
8
8
|
spec.authors = ["Douglas Roper"]
|
9
9
|
spec.email = ["dougdroper@gmail.com"]
|
10
10
|
spec.summary = %q{Lita plugin for periodically checking statuses of websites}
|
@@ -25,4 +25,5 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.add_development_dependency "bundler", "~> 1.7"
|
26
26
|
spec.add_development_dependency "rake", "~> 10.0"
|
27
27
|
spec.add_development_dependency "rspec", "~> 3.3"
|
28
|
+
spec.add_development_dependency "rack-test", '~> 0.6'
|
28
29
|
end
|
@@ -59,10 +59,26 @@ RSpec.describe Lita::Handlers::PingMe, lita_handler: true do
|
|
59
59
|
let(:current_status) { {'http://test.com' => { code: 200, time: 4.882903 }} }
|
60
60
|
|
61
61
|
it 'responds with the correct status' do
|
62
|
-
expect(Lita::Handlers::Connection).to receive(:new).
|
62
|
+
expect(Lita::Handlers::Connection).to receive(:new).and_return(response)
|
63
63
|
send_message("status <http://test.com|test.com>")
|
64
64
|
expect(replies.last).to eq("http://test.com: code 200, time: 4.882903")
|
65
65
|
end
|
66
66
|
end
|
67
|
+
|
68
|
+
context 'notify' do
|
69
|
+
it 'notifies when something goes wrong' do
|
70
|
+
response = http.get("/notify/something_has_gone_wrong")
|
71
|
+
expect(response.body).to eq("something has gone wrong")
|
72
|
+
end
|
73
|
+
|
74
|
+
it 'doesn\'t notify when it is sleeping' do
|
75
|
+
send_message('sleep')
|
76
|
+
response = http.get("/notify/something_has_gone_wrong")
|
77
|
+
expect(response.body).to eq("")
|
78
|
+
send_message('wake')
|
79
|
+
response = http.get("/notify/something_has_gone_wrong")
|
80
|
+
expect(response.body).to eq('something has gone wrong')
|
81
|
+
end
|
82
|
+
end
|
67
83
|
end
|
68
84
|
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lita-ping-me
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Douglas Roper
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-06-
|
11
|
+
date: 2015-06-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: lita
|
@@ -80,6 +80,20 @@ dependencies:
|
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '3.3'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rack-test
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0.6'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0.6'
|
83
97
|
description: "\n periodically checks status of website and alerts chat room if
|
84
98
|
response error\n "
|
85
99
|
email:
|