usaidwat 0.1.7 → 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/README.textile +22 -29
- data/Rakefile +24 -2
- data/bin/usaidwat +1 -1
- data/features/browse.feature +24 -20
- data/features/help.feature +1 -1
- data/features/step_definitions/reddit_steps.rb +2 -2
- data/lib/usaidwat/application.rb +57 -72
- data/lib/usaidwat/ext/string.rb +1 -1
- data/lib/usaidwat/pager.rb +28 -0
- data/lib/usaidwat/version.rb +1 -1
- data/spec/usaidwat/string_spec.rb +8 -1
- data/usaidwat.gemspec +5 -3
- metadata +37 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 879e08c770c49388f73103250f6d6b34dd996afe
|
4
|
+
data.tar.gz: 09bc9f9c9c48498de136ab08d61092760ee16d0b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0cd18092af983b5368707fa4198fdb57c934f7e8fd1b56acabc17db2297dca2ec356a99fcf95975318d4f19a4913e3cee57e11b2bed44c16a1066b36cf91863f
|
7
|
+
data.tar.gz: 3b8b25c190b2b5919bf30c7f6972624ee093637c7b4b4aac7e63570f7a64ecf76df612eca1dccd8c843c0bfbaec55f26bebe6dc0a1bdee93bddc70d3ae2da9fb
|
data/README.textile
CHANGED
@@ -12,46 +12,39 @@ h2(#usage). Usage
|
|
12
12
|
|
13
13
|
A @usaidwat@ binary is installed with the gem. @usaidwat@ will analyze a user's last 100 comments and provide statistics.
|
14
14
|
|
15
|
-
To list a Redditor's comments,
|
15
|
+
To list a Redditor's comments, use the @log@ subcommand:
|
16
16
|
|
17
|
-
bc. $ usaidwat
|
17
|
+
bc. $ usaidwat log mipadi
|
18
18
|
|
19
|
-
To list a count of subreddits in which a user has posted,
|
19
|
+
To list a count of subreddits in which a user has posted, use the @tally@
|
20
|
+
subcommand:
|
20
21
|
|
21
|
-
bc. $ usaidwat
|
22
|
+
bc. $ usaidwat tally mipadi
|
22
23
|
|
23
24
|
You will see output like the following:
|
24
25
|
|
25
|
-
bc.
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
wikipedia
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
space 1
|
41
|
-
movies 1
|
42
|
-
geek 1
|
43
|
-
comics 1
|
44
|
-
videos 1
|
45
|
-
apple 1
|
46
|
-
|
47
|
-
Which indicates that jedberg has commented in @/r/funny@ 15 times (out of his last 100 comments).
|
26
|
+
bc. apple 6
|
27
|
+
AskReddit 61
|
28
|
+
battlefield3 2
|
29
|
+
books 2
|
30
|
+
django 1
|
31
|
+
Games 1
|
32
|
+
nyc 1
|
33
|
+
personalfinance 1
|
34
|
+
photography 1
|
35
|
+
programming 20
|
36
|
+
redditcasual 1
|
37
|
+
wikipedia 1
|
38
|
+
worldnews 2
|
39
|
+
|
40
|
+
Which indicates that mipadi has commented in @/r/AskReddit@ 61 times (out of his last 100 comments).
|
48
41
|
|
49
42
|
To see the comments for a specific subreddit, tack on that subreddit:
|
50
43
|
|
51
|
-
bc. $ usaidwat
|
44
|
+
bc. $ usaidwat log mipadi AskReddit
|
52
45
|
|
53
46
|
All the comments for the given subreddit will be printed.
|
54
47
|
|
55
48
|
h2(#testing). Testing
|
56
49
|
|
57
|
-
Test suites can be run with RSpec and Cucumber.
|
50
|
+
Test suites can be run with RSpec and Cucumber.
|
data/Rakefile
CHANGED
@@ -1,7 +1,29 @@
|
|
1
|
-
|
1
|
+
lib = File.expand_path('../lib', __FILE__)
|
2
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
3
|
+
require 'usaidwat/version'
|
4
|
+
|
5
|
+
GEMSPEC = `git ls-files | grep gemspec`.chomp
|
6
|
+
GEM = "usaidwat-#{USaidWat::VERSION}.gem"
|
7
|
+
|
8
|
+
desc "Build usaidwat.gem"
|
9
|
+
task :build do
|
10
|
+
system "gem", "build", GEMSPEC
|
11
|
+
end
|
12
|
+
|
13
|
+
desc "Install usaidwat.gem"
|
14
|
+
task :install => :build do
|
15
|
+
system "gem", "install", GEM
|
16
|
+
end
|
17
|
+
|
18
|
+
desc "Push gem to RubyGems"
|
19
|
+
task :release => :build do
|
20
|
+
system "git", "tag", "-s", "-m", "usaidwat v#{USaidWat::VERSION}", "v#{USaidWat::VERSION}"
|
21
|
+
system "gem", "push", GEM
|
22
|
+
end
|
2
23
|
|
3
24
|
desc "Clean built products"
|
4
25
|
task :clean do
|
5
|
-
rm_rf "pkg", :verbose => true
|
6
26
|
rm Dir.glob("*.gem"), :verbose => true
|
7
27
|
end
|
28
|
+
|
29
|
+
task :default => :build
|
data/bin/usaidwat
CHANGED
data/features/browse.feature
CHANGED
@@ -7,7 +7,7 @@ Feature: Browse comments
|
|
7
7
|
Scenario: List all comments
|
8
8
|
Given the Reddit service returns comments for the user "mipadi"
|
9
9
|
And time is frozen at Jun 24, 2015 11:05 AM
|
10
|
-
When I run `usaidwat mipadi`
|
10
|
+
When I run `usaidwat log mipadi`
|
11
11
|
Then it should pass with:
|
12
12
|
"""
|
13
13
|
wikipedia
|
@@ -36,7 +36,7 @@ Feature: Browse comments
|
|
36
36
|
|
37
37
|
Scenario: List all comments for a user that does not exist
|
38
38
|
Given the Reddit service does not have a user "testuser"
|
39
|
-
When I run `usaidwat testuser`
|
39
|
+
When I run `usaidwat log testuser`
|
40
40
|
Then it should fail with:
|
41
41
|
"""
|
42
42
|
No such user: testuser
|
@@ -44,7 +44,7 @@ Feature: Browse comments
|
|
44
44
|
|
45
45
|
Scenario: List all comments when user has no comments
|
46
46
|
Given the Reddit service returns comments for the user "blank"
|
47
|
-
When I run `usaidwat blank`
|
47
|
+
When I run `usaidwat log blank`
|
48
48
|
Then it should pass with:
|
49
49
|
"""
|
50
50
|
blank has no comments.
|
@@ -52,7 +52,7 @@ Feature: Browse comments
|
|
52
52
|
|
53
53
|
Scenario: Tally comments
|
54
54
|
Given the Reddit service returns comments for the user "mipadi"
|
55
|
-
When I run `usaidwat
|
55
|
+
When I run `usaidwat tally mipadi`
|
56
56
|
Then it should pass with:
|
57
57
|
"""
|
58
58
|
apple 6
|
@@ -72,7 +72,7 @@ Feature: Browse comments
|
|
72
72
|
|
73
73
|
Scenario: Sort comments
|
74
74
|
Given the Reddit service returns comments for the user "mipadi"
|
75
|
-
When I run `usaidwat -
|
75
|
+
When I run `usaidwat tally -c mipadi`
|
76
76
|
Then it should pass with:
|
77
77
|
"""
|
78
78
|
AskReddit 61
|
@@ -92,7 +92,7 @@ Feature: Browse comments
|
|
92
92
|
|
93
93
|
Scenario: Tally comments when user has no comments
|
94
94
|
Given the Reddit service returns comments for the user "blank"
|
95
|
-
When I run `usaidwat -
|
95
|
+
When I run `usaidwat tally -c blank`
|
96
96
|
Then it should pass with:
|
97
97
|
"""
|
98
98
|
blank has no comments.
|
@@ -100,7 +100,7 @@ Feature: Browse comments
|
|
100
100
|
|
101
101
|
Scenario: Sort comments when user has no comments
|
102
102
|
Given the Reddit service returns comments for the user "blank"
|
103
|
-
When I run `usaidwat -
|
103
|
+
When I run `usaidwat tally -c blank`
|
104
104
|
Then it should pass with:
|
105
105
|
"""
|
106
106
|
blank has no comments.
|
@@ -109,7 +109,7 @@ Feature: Browse comments
|
|
109
109
|
Scenario: List comments for a particular subreddit
|
110
110
|
Given the Reddit service returns comments for the user "mipadi"
|
111
111
|
And time is frozen at Jun 24, 2015 11:05 AM
|
112
|
-
When I run `usaidwat mipadi AskReddit`
|
112
|
+
When I run `usaidwat log mipadi AskReddit`
|
113
113
|
Then it should pass with:
|
114
114
|
"""
|
115
115
|
AskReddit
|
@@ -139,7 +139,7 @@ Feature: Browse comments
|
|
139
139
|
Scenario: List comments for a particular subreddit specified with the wrong case
|
140
140
|
Given the Reddit service returns comments for the user "mipadi"
|
141
141
|
And time is frozen at Jun 24, 2015 11:05 AM
|
142
|
-
When I run `usaidwat mipadi askreddit`
|
142
|
+
When I run `usaidwat log mipadi askreddit`
|
143
143
|
Then it should pass with:
|
144
144
|
"""
|
145
145
|
AskReddit
|
@@ -168,7 +168,7 @@ Feature: Browse comments
|
|
168
168
|
|
169
169
|
Scenario: List comments for a subreddit with no comments
|
170
170
|
Given the Reddit service returns comments for the user "mipadi"
|
171
|
-
When I run `usaidwat mipadi nsfw`
|
171
|
+
When I run `usaidwat log mipadi nsfw`
|
172
172
|
Then it should pass with:
|
173
173
|
"""
|
174
174
|
No comments by mipadi for nsfw.
|
@@ -176,40 +176,44 @@ Feature: Browse comments
|
|
176
176
|
|
177
177
|
Scenario: Tally comments with subreddit
|
178
178
|
Given the Reddit service returns comments for the user "mipadi"
|
179
|
-
When I run `usaidwat
|
179
|
+
When I run `usaidwat tally mipadi AskReddit`
|
180
180
|
Then it should fail with:
|
181
181
|
"""
|
182
|
-
|
182
|
+
ERROR: "usaidwat tally" was called with arguments ["mipadi", "AskReddit"]
|
183
|
+
Usage: "usaidwat tally USERNAME"
|
183
184
|
"""
|
184
185
|
|
185
186
|
Scenario: Sort comments with subreddit
|
186
187
|
Given the Reddit service returns comments for the user "mipadi"
|
187
|
-
When I run `usaidwat -
|
188
|
+
When I run `usaidwat tally -c mipadi AskReddit`
|
188
189
|
Then it should fail with:
|
189
190
|
"""
|
190
|
-
|
191
|
+
ERROR: "usaidwat tally" was called with arguments ["mipadi", "AskReddit"]
|
192
|
+
Usage: "usaidwat tally USERNAME"
|
191
193
|
"""
|
192
194
|
|
193
195
|
Scenario: Pass no arguments
|
194
196
|
Given the Reddit service returns comments for the user "mipadi"
|
195
197
|
When I run `usaidwat`
|
196
|
-
Then it should
|
198
|
+
Then it should pass with:
|
197
199
|
"""
|
198
|
-
|
200
|
+
Commands:
|
199
201
|
"""
|
200
202
|
|
201
203
|
Scenario: Pass no arguments when tallying
|
202
204
|
Given the Reddit service returns comments for the user "mipadi"
|
203
|
-
When I run `usaidwat
|
205
|
+
When I run `usaidwat tally`
|
204
206
|
Then it should fail with:
|
205
207
|
"""
|
206
|
-
|
208
|
+
ERROR: "usaidwat tally" was called with no arguments
|
209
|
+
Usage: "usaidwat tally USERNAME"
|
207
210
|
"""
|
208
211
|
|
209
212
|
Scenario: Pass no arguments when sorting
|
210
213
|
Given the Reddit service returns comments for the user "mipadi"
|
211
|
-
When I run `usaidwat -
|
214
|
+
When I run `usaidwat tally -c`
|
212
215
|
Then it should fail with:
|
213
216
|
"""
|
214
|
-
|
217
|
+
ERROR: "usaidwat tally" was called with no arguments
|
218
|
+
Usage: "usaidwat tally USERNAME"
|
215
219
|
"""
|
data/features/help.feature
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
Given /^the Reddit service returns comments for the user "(.*?)"$/ do |user|
|
2
|
-
|
2
|
+
set_environment_variable 'USAIDWAT_ENV', 'cucumber'
|
3
3
|
end
|
4
4
|
|
5
5
|
Given /^the Reddit service does not have a user "(.*?)"$/ do |user|
|
6
|
-
|
6
|
+
set_environment_variable 'USAIDWAT_ENV', 'cucumber'
|
7
7
|
end
|
data/lib/usaidwat/application.rb
CHANGED
@@ -1,98 +1,83 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
client = ENV['USAIDWAT_ENV'] == 'cucumber' ? USaidWat::Client::TestRedditor : USaidWat::Client::Redditor
|
5
|
-
@application ||= USaidWat::Application.new(client)
|
6
|
-
end
|
7
|
-
end
|
1
|
+
require 'sysexits'
|
2
|
+
require 'thor'
|
3
|
+
require 'usaidwat/pager'
|
8
4
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
end
|
5
|
+
module USaidWat
|
6
|
+
class Application < Thor
|
7
|
+
include Pager
|
8
|
+
include Sysexits
|
14
9
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
username = args.first
|
19
|
-
@redditor = @client.new(username)
|
20
|
-
@algo = opts.algorithm
|
21
|
-
begin
|
22
|
-
return tally_comments if opts.tally
|
23
|
-
return list_comments_for_subreddit(args[1]) if args.length == 2
|
24
|
-
return list_all_comments
|
25
|
-
rescue USaidWat::Client::NoSuchUserError
|
26
|
-
quit "No such user: #{username}", 3
|
10
|
+
class << self
|
11
|
+
def client
|
12
|
+
ENV['USAIDWAT_ENV'] == 'cucumber' ? USaidWat::Client::TestRedditor : USaidWat::Client::Redditor
|
27
13
|
end
|
28
|
-
end
|
29
|
-
|
30
|
-
def usage(code=0)
|
31
|
-
puts "Usage: usaidwat [-t | -T] <user> [<subreddit>]"
|
32
|
-
exit code
|
33
|
-
end
|
34
|
-
|
35
|
-
def version(code=0)
|
36
|
-
puts "usaidwat v#{USaidWat::VERSION}"
|
37
|
-
exit 0
|
38
|
-
end
|
39
|
-
|
40
|
-
def quit(message, code=0)
|
41
|
-
puts message
|
42
|
-
exit code
|
43
|
-
end
|
44
14
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
@redditor.comments.each { |c| print formatter.format(c) }
|
15
|
+
def exit_on_failure?
|
16
|
+
true
|
17
|
+
end
|
49
18
|
end
|
50
19
|
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
comments = comments[subreddit.downcase]
|
55
|
-
quit "No comments by #{@redditor.username} for #{subreddit}." if comments.nil?
|
56
|
-
formatter = USaidWat::CLI::CommentFormatter.new
|
57
|
-
comments.each { |c| print formatter.format(c) }
|
58
|
-
end
|
20
|
+
map '--version' => :version
|
21
|
+
map 't' => :tally
|
22
|
+
map 'l' => :log
|
59
23
|
|
60
|
-
|
61
|
-
|
24
|
+
desc 'tally USERNAME', 'Count comments by subreddit'
|
25
|
+
option :count, :aliases => '-c', :type => :boolean, :desc => 'Sort output by number of comments'
|
26
|
+
def tally(username)
|
27
|
+
redditor = Application.client.new(username)
|
28
|
+
algo_cls = options[:count] ? USaidWat::Algorithms::CountAlgorithm : USaidWat::Algorithms::LexicographicalAlgorithm
|
29
|
+
quit "#{redditor.username} has no comments." if redditor.comments.empty?
|
62
30
|
# Unfortunately Snooby cannot return comments for a specific
|
63
31
|
# user in a specific subreddit, so for now we have to sort them
|
64
32
|
# ourself.
|
65
33
|
longest_subreddit = 0
|
66
34
|
buckets = Hash.new { |hash, key| hash[key] = 0 }
|
67
|
-
|
35
|
+
redditor.comments.each do |comment|
|
68
36
|
subreddit = comment.subreddit
|
69
37
|
longest_subreddit = subreddit.length if subreddit.length > longest_subreddit
|
70
38
|
buckets[subreddit] += 1
|
71
39
|
end
|
72
|
-
algo =
|
40
|
+
algo = algo_cls.new(buckets)
|
73
41
|
subreddits = buckets.keys.sort { |a,b| algo.sort(a, b) }
|
74
42
|
subreddits.each do |subreddit|
|
75
43
|
tally = buckets[subreddit]
|
76
44
|
printf "%-*s %3d\n", longest_subreddit, subreddit, tally
|
77
45
|
end
|
78
|
-
exit 0
|
79
46
|
end
|
80
47
|
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
48
|
+
desc 'log USERNAME [SUBREDDIT]', 'Show comments by a user'
|
49
|
+
def log(username, subreddit = nil)
|
50
|
+
redditor = Application.client.new(username)
|
51
|
+
if subreddit
|
52
|
+
comments = redditor.comments
|
53
|
+
comments = comments.group_by { |c| c.subreddit.downcase }
|
54
|
+
comments = comments[subreddit.downcase]
|
55
|
+
quit "No comments by #{redditor.username} for #{subreddit}." if comments.nil?
|
56
|
+
list_comments(comments)
|
57
|
+
else
|
58
|
+
quit "#{redditor.username} has no comments." if redditor.comments.empty?
|
59
|
+
list_comments(redditor.comments)
|
60
|
+
end
|
61
|
+
rescue USaidWat::Client::NoSuchUserError
|
62
|
+
quit "No such user: #{username}", :no_such_user
|
63
|
+
end
|
64
|
+
|
65
|
+
desc 'version', 'Show version info and exit'
|
66
|
+
def version
|
67
|
+
puts "usaidwat v#{USaidWat::VERSION}"
|
68
|
+
end
|
69
|
+
|
70
|
+
no_commands do
|
71
|
+
def list_comments(comments)
|
72
|
+
formatter = USaidWat::CLI::CommentFormatter.new
|
73
|
+
page
|
74
|
+
comments.each { |c| print formatter.format(c) }
|
96
75
|
end
|
76
|
+
|
77
|
+
def quit(message, code=:ok)
|
78
|
+
puts message
|
79
|
+
exit code
|
80
|
+
end
|
81
|
+
end
|
97
82
|
end
|
98
83
|
end
|
data/lib/usaidwat/ext/string.rb
CHANGED
@@ -0,0 +1,28 @@
|
|
1
|
+
module Pager
|
2
|
+
def page
|
3
|
+
return if RUBY_PLATFORM =~ /win32/
|
4
|
+
return unless STDOUT.tty?
|
5
|
+
|
6
|
+
read, write = IO.pipe
|
7
|
+
|
8
|
+
unless Kernel.fork # Child process
|
9
|
+
STDOUT.reopen(write)
|
10
|
+
STDERR.reopen(write) if STDERR.tty?
|
11
|
+
read.close
|
12
|
+
write.close
|
13
|
+
return
|
14
|
+
end
|
15
|
+
|
16
|
+
# Parent process, become pager
|
17
|
+
STDIN.reopen(read)
|
18
|
+
read.close
|
19
|
+
write.close
|
20
|
+
|
21
|
+
ENV['LESS'] = 'FSRX' unless ENV['LESS']
|
22
|
+
|
23
|
+
Kernel.select [STDIN] # Wait until we have input before we start the pager
|
24
|
+
pager = ENV['PAGER'] || 'less'
|
25
|
+
exec pager rescue exec "/bin/sh", "-c", pager
|
26
|
+
rescue StandardError
|
27
|
+
end
|
28
|
+
end
|
data/lib/usaidwat/version.rb
CHANGED
@@ -18,12 +18,19 @@ module USaidWat
|
|
18
18
|
expect(actual).to eq(expected)
|
19
19
|
end
|
20
20
|
|
21
|
-
it "converts both > and < to <" do
|
21
|
+
it "converts both > and < to > and <" do
|
22
22
|
s = "look -> this string has both <- awesome, huh?"
|
23
23
|
expected = "look -> this string has both <- awesome, huh?"
|
24
24
|
actual = s.convert_entities
|
25
25
|
expect(actual).to eq(expected)
|
26
26
|
end
|
27
|
+
|
28
|
+
it "converts & to &" do
|
29
|
+
s = "i like cake & ice cream"
|
30
|
+
expected = "i like cake & ice cream"
|
31
|
+
actual = s.convert_entities
|
32
|
+
expect(actual).to eq(expected)
|
33
|
+
end
|
27
34
|
end
|
28
35
|
|
29
36
|
describe "#truncate" do
|
data/usaidwat.gemspec
CHANGED
@@ -18,11 +18,13 @@ Gem::Specification.new do |gem|
|
|
18
18
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
19
19
|
gem.require_paths = ["lib"]
|
20
20
|
|
21
|
-
gem.add_runtime_dependency('
|
21
|
+
gem.add_runtime_dependency('highline', '~> 1.7')
|
22
22
|
gem.add_runtime_dependency('rainbow', '~> 2.0')
|
23
|
-
gem.add_runtime_dependency('
|
23
|
+
gem.add_runtime_dependency('snooby', '~> 0.1.5')
|
24
|
+
gem.add_runtime_dependency('sysexits', '~> 1.2')
|
25
|
+
gem.add_runtime_dependency('thor', '~> 0.19.1')
|
24
26
|
|
25
|
-
gem.add_development_dependency('aruba', '~> 0.
|
27
|
+
gem.add_development_dependency('aruba', '~> 0.8.1')
|
26
28
|
gem.add_development_dependency('cucumber', '~> 2.0')
|
27
29
|
gem.add_development_dependency('rspec', '~> 3.2')
|
28
30
|
gem.add_development_dependency('timecop', '~> 0.7.4')
|
metadata
CHANGED
@@ -1,29 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: usaidwat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Dippery
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-08-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: highline
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: '1.7'
|
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: '1.7'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rainbow
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -39,39 +39,61 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '2.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: snooby
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
48
|
-
|
47
|
+
version: 0.1.5
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 0.1.5
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: sysexits
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
49
60
|
- !ruby/object:Gem::Version
|
50
|
-
version: 1.
|
61
|
+
version: '1.2'
|
51
62
|
type: :runtime
|
52
63
|
prerelease: false
|
53
64
|
version_requirements: !ruby/object:Gem::Requirement
|
54
65
|
requirements:
|
55
66
|
- - "~>"
|
56
67
|
- !ruby/object:Gem::Version
|
57
|
-
version: '1.
|
58
|
-
|
68
|
+
version: '1.2'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: thor
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 0.19.1
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
59
81
|
- !ruby/object:Gem::Version
|
60
|
-
version:
|
82
|
+
version: 0.19.1
|
61
83
|
- !ruby/object:Gem::Dependency
|
62
84
|
name: aruba
|
63
85
|
requirement: !ruby/object:Gem::Requirement
|
64
86
|
requirements:
|
65
87
|
- - "~>"
|
66
88
|
- !ruby/object:Gem::Version
|
67
|
-
version: 0.
|
89
|
+
version: 0.8.1
|
68
90
|
type: :development
|
69
91
|
prerelease: false
|
70
92
|
version_requirements: !ruby/object:Gem::Requirement
|
71
93
|
requirements:
|
72
94
|
- - "~>"
|
73
95
|
- !ruby/object:Gem::Version
|
74
|
-
version: 0.
|
96
|
+
version: 0.8.1
|
75
97
|
- !ruby/object:Gem::Dependency
|
76
98
|
name: cucumber
|
77
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -158,6 +180,7 @@ files:
|
|
158
180
|
- lib/usaidwat/ext/string.rb
|
159
181
|
- lib/usaidwat/ext/time.rb
|
160
182
|
- lib/usaidwat/formatter.rb
|
183
|
+
- lib/usaidwat/pager.rb
|
161
184
|
- lib/usaidwat/service.rb
|
162
185
|
- lib/usaidwat/version.rb
|
163
186
|
- spec/spec_helper.rb
|