guard-pushover 0.1.0 → 0.2.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 +15 -0
- data/Gemfile +2 -2
- data/README.md +24 -8
- data/lib/guard/pushover.rb +8 -7
- data/lib/guard/pushover/version.rb +1 -1
- data/spec/guard/pushover_spec.rb +12 -0
- metadata +4 -19
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
M2ZjZGMyODUzOWEwZDllMDc3MjE4NjNlMWY5ZThjNDJmZjQ5MjBlNg==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
ZDAzYzViNTI1YmJmMDA4MmZlZTczMmU4NmRmZDU5MmFiMjNlYTE1Ng==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
YTA5ODYzZTk5Y2ZkZWIzOWU5MzBjN2M5ZGYzOTY0MjA4Mzg3N2YyYTY1YmVm
|
10
|
+
MWFlNGUwNTBiOTE3Njk3M2FmNzc1NGZkYTQ0NGIxYjYxNTZlODEwMzZkNDUy
|
11
|
+
M2ZkNzgyYjFiMDg2ZjQzMGI5NmQ3NWRhMDVhMWVhZWQ4MmEwODQ=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
MjFlMGZlMTI4ZjY2NGU3NmQ2ZDhhOWM1NDM4NzAyZTNmMmZlNGYwZDY3OGFj
|
14
|
+
M2FmYWZjNWM3ZTFiYjJlZDMxNzc3OGFmNmFjNjkyOTZkYzU1MTQ4Y2MyYmVj
|
15
|
+
MmVlNDY4YmU3ZjdhNjI0Y2RmMDVjMzE1M2RkZWM0MTQ1YTZkNDg=
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -8,25 +8,41 @@ Send [Pushover](https://pushover.net/) notifications with Guard!
|
|
8
8
|
|
9
9
|
## Installation
|
10
10
|
|
11
|
-
|
11
|
+
$ gem install guard-pushover
|
12
|
+
|
13
|
+
or
|
12
14
|
|
13
|
-
|
15
|
+
# Add to Gemfile
|
16
|
+
gem 'guard/pushover
|
14
17
|
|
15
|
-
|
18
|
+
or install it yourself
|
16
19
|
|
20
|
+
$ git clone git@github.com:joenas/guard-pushover.git
|
21
|
+
$ cd guard-pushover
|
17
22
|
$ rake install
|
18
23
|
|
19
|
-
Gem will be available soon.
|
20
24
|
|
21
25
|
## Usage
|
22
26
|
|
23
|
-
To generate template:
|
27
|
+
To generate template:
|
28
|
+
|
29
|
+
$ guard init pushover
|
24
30
|
|
25
31
|
### Example
|
32
|
+
```ruby
|
33
|
+
guard :pushover, :api_key => '', :user_key => '' do
|
34
|
+
watch(/lib\/(.*).rb/)
|
35
|
+
end
|
36
|
+
```
|
37
|
+
|
38
|
+
### Available options
|
39
|
+
|
40
|
+
``` ruby
|
41
|
+
:title => 'Title' # Custom title, default is 'Guard'
|
42
|
+
:priority => 1 # Priority, default is 0
|
43
|
+
```
|
26
44
|
|
27
|
-
|
28
|
-
watch(/lib\/(.*).rb/)
|
29
|
-
end
|
45
|
+
Read more on [Pushover API](https://pushover.net/api).
|
30
46
|
|
31
47
|
Guard::Pushover will send a message like "[filename] was changed/removed/added".
|
32
48
|
Support will be added for custom messages.
|
data/lib/guard/pushover.rb
CHANGED
@@ -16,19 +16,19 @@ module Guard
|
|
16
16
|
options = DEFAULTS.merge(options)
|
17
17
|
@user_key = options.delete(:user_key)
|
18
18
|
@api_key = options.delete(:api_key)
|
19
|
-
super
|
19
|
+
super watchers, options
|
20
20
|
end
|
21
21
|
|
22
22
|
def run_on_changes(paths)
|
23
|
-
send_notification "
|
23
|
+
send_notification "%s was changed.", paths.first
|
24
24
|
end
|
25
25
|
|
26
26
|
def run_on_removals(paths)
|
27
|
-
send_notification "
|
27
|
+
send_notification "%s was removed.", paths.first
|
28
28
|
end
|
29
29
|
|
30
30
|
def run_on_additions(paths)
|
31
|
-
send_notification "
|
31
|
+
send_notification "%s was added.", paths.first
|
32
32
|
end
|
33
33
|
|
34
34
|
private
|
@@ -37,8 +37,9 @@ module Guard
|
|
37
37
|
@client = options.delete(:client) || Rushover::Client.new(@api_key)
|
38
38
|
end
|
39
39
|
|
40
|
-
def send_notification(msg)
|
41
|
-
return unless
|
40
|
+
def send_notification(msg, file)
|
41
|
+
return unless api_keys_present?
|
42
|
+
msg = (options.delete(:message) || msg) % file
|
42
43
|
@resp = client.notify(@user_key, msg, options)
|
43
44
|
if @resp.ok?
|
44
45
|
UI.info "Pushover: message sent"
|
@@ -47,7 +48,7 @@ module Guard
|
|
47
48
|
end
|
48
49
|
end
|
49
50
|
|
50
|
-
def
|
51
|
+
def api_keys_present?
|
51
52
|
return UI.error "No API key given." unless @api_key
|
52
53
|
return UI.error "No User key given." unless @user_key
|
53
54
|
true
|
data/spec/guard/pushover_spec.rb
CHANGED
@@ -83,6 +83,18 @@ describe Guard::Pushover do
|
|
83
83
|
run_on_changes
|
84
84
|
end
|
85
85
|
end
|
86
|
+
|
87
|
+
context "with option :message => 'lets sprint the %s'" do
|
88
|
+
let(:expected_options){ { :title => 'Guard', :priority => 0 } }
|
89
|
+
it "sends a notification to client with correct parameters" do
|
90
|
+
options[:message] = 'lets sprint the %s'
|
91
|
+
message = "lets sprint the #{paths.first}"
|
92
|
+
client.should_receive(:notify).with(user_key, message, expected_options)
|
93
|
+
Guard::UI.should_receive(:info).with(/Pushover: message sent/)
|
94
|
+
run_on_changes
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
86
98
|
end
|
87
99
|
|
88
100
|
context "and invalid credentials" do
|
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: guard-pushover
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.2.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Jon Neverland
|
@@ -14,7 +13,6 @@ dependencies:
|
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: rushover
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ! '>='
|
20
18
|
- !ruby/object:Gem::Version
|
@@ -22,7 +20,6 @@ dependencies:
|
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
24
|
- - ! '>='
|
28
25
|
- !ruby/object:Gem::Version
|
@@ -30,7 +27,6 @@ dependencies:
|
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: guard
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
31
|
- - ! '>='
|
36
32
|
- !ruby/object:Gem::Version
|
@@ -38,7 +34,6 @@ dependencies:
|
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
38
|
- - ! '>='
|
44
39
|
- !ruby/object:Gem::Version
|
@@ -46,7 +41,6 @@ dependencies:
|
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: guard
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
45
|
- - ! '>='
|
52
46
|
- !ruby/object:Gem::Version
|
@@ -54,7 +48,6 @@ dependencies:
|
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
52
|
- - ! '>='
|
60
53
|
- !ruby/object:Gem::Version
|
@@ -62,7 +55,6 @@ dependencies:
|
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: guard-rspec
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
59
|
- - ! '>='
|
68
60
|
- !ruby/object:Gem::Version
|
@@ -70,7 +62,6 @@ dependencies:
|
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
66
|
- - ! '>='
|
76
67
|
- !ruby/object:Gem::Version
|
@@ -78,7 +69,6 @@ dependencies:
|
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: rspec
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
73
|
- - ! '>='
|
84
74
|
- !ruby/object:Gem::Version
|
@@ -86,7 +76,6 @@ dependencies:
|
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
80
|
- - ! '>='
|
92
81
|
- !ruby/object:Gem::Version
|
@@ -94,7 +83,6 @@ dependencies:
|
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
84
|
name: coveralls
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
87
|
- - ! '>='
|
100
88
|
- !ruby/object:Gem::Version
|
@@ -102,7 +90,6 @@ dependencies:
|
|
102
90
|
type: :development
|
103
91
|
prerelease: false
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
94
|
- - ! '>='
|
108
95
|
- !ruby/object:Gem::Version
|
@@ -131,29 +118,27 @@ files:
|
|
131
118
|
homepage: https://github.com/joenas/guard-pushover/
|
132
119
|
licenses:
|
133
120
|
- MIT
|
121
|
+
metadata: {}
|
134
122
|
post_install_message:
|
135
123
|
rdoc_options: []
|
136
124
|
require_paths:
|
137
125
|
- lib
|
138
126
|
required_ruby_version: !ruby/object:Gem::Requirement
|
139
|
-
none: false
|
140
127
|
requirements:
|
141
128
|
- - ! '>='
|
142
129
|
- !ruby/object:Gem::Version
|
143
130
|
version: '0'
|
144
131
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
145
|
-
none: false
|
146
132
|
requirements:
|
147
133
|
- - ! '>='
|
148
134
|
- !ruby/object:Gem::Version
|
149
135
|
version: '0'
|
150
136
|
requirements: []
|
151
137
|
rubyforge_project:
|
152
|
-
rubygems_version:
|
138
|
+
rubygems_version: 2.0.0
|
153
139
|
signing_key:
|
154
|
-
specification_version:
|
140
|
+
specification_version: 4
|
155
141
|
summary: ''
|
156
142
|
test_files:
|
157
143
|
- spec/guard/pushover_spec.rb
|
158
144
|
- spec/spec_helper.rb
|
159
|
-
has_rdoc:
|