usaidwat 0.1.4 → 0.1.5
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/.gitignore +1 -0
- data/LICENSE.txt +1 -1
- data/README.textile +1 -4
- data/Rakefile +0 -7
- data/features/browse.feature +31 -0
- data/features/fixtures/palorchild.json +1 -0
- data/features/step_definitions/reddit_steps.rb +4 -0
- data/lib/usaidwat/application.rb +12 -6
- data/lib/usaidwat/client.rb +4 -0
- data/lib/usaidwat/ext/string.rb +5 -0
- data/lib/usaidwat/formatter.rb +4 -3
- data/lib/usaidwat/service.rb +7 -3
- data/lib/usaidwat/version.rb +1 -1
- data/spec/usaidwat/client_spec.rb +19 -3
- data/spec/usaidwat/formatter_spec.rb +21 -21
- data/spec/usaidwat/service_spec.rb +10 -10
- data/spec/usaidwat/string_spec.rb +30 -0
- data/usaidwat.gemspec +6 -5
- metadata +44 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 40cfe670a21fe2f65549c77c5ac84f06e1114b2b
|
4
|
+
data.tar.gz: ffe351f3831ca31ad960b148c630ca442c1b9ea7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 68be66ec279c06be4c8c56a009eb2ae4bc1b3f8aa2e0c12d84f83d5e81198f7468bc350f403dd3eedfca119c98255ec6e4637df68b7d3b9495822231c95a72cb
|
7
|
+
data.tar.gz: b5636dd3f2d95e734c3684054fa0919e750696d366a792be832778c0a42833e920c96a3512b4fb97fbfa070491c6b9f346055282b2b3a9d092ef1e476806cce7
|
data/LICENSE.txt
CHANGED
data/README.textile
CHANGED
@@ -54,7 +54,4 @@ All the comments for the given subreddit will be printed.
|
|
54
54
|
|
55
55
|
h2(#testing). Testing
|
56
56
|
|
57
|
-
Test suites can be run with RSpec and Cucumber.
|
58
|
-
|
59
|
-
bc. $ ruby features/server/reddit.rb
|
60
|
-
$ cucumber
|
57
|
+
Test suites can be run with RSpec and Cucumber.
|
data/Rakefile
CHANGED
data/features/browse.feature
CHANGED
@@ -26,6 +26,14 @@ Feature: Browse comments
|
|
26
26
|
|
27
27
|
The Judgment of Solomon Accords.
|
28
28
|
"""
|
29
|
+
|
30
|
+
Scenario: List all comments for a user that does not exist
|
31
|
+
Given the Reddit service does not have a user "palorchild"
|
32
|
+
When I run `usaidwat palorchild`
|
33
|
+
Then it should fail with:
|
34
|
+
"""
|
35
|
+
No such user: palorchild
|
36
|
+
"""
|
29
37
|
|
30
38
|
Scenario: List all comments when user has no comments
|
31
39
|
Given the Reddit service returns comments for the user "blank"
|
@@ -86,6 +94,29 @@ Feature: Browse comments
|
|
86
94
|
You didn't slow down for very long though, did you?
|
87
95
|
"""
|
88
96
|
|
97
|
+
Scenario: List comments for a particular subreddit specified with the wrong case
|
98
|
+
Given the Reddit service returns comments for the user "mipadi"
|
99
|
+
When I run `usaidwat mipadi askreddit | head -n 16`
|
100
|
+
Then it should pass with:
|
101
|
+
"""
|
102
|
+
AskReddit
|
103
|
+
http://www.reddit.com/r/AskReddit/comments/141kt9/z/c795rwz
|
104
|
+
|
105
|
+
I think it depends on where you go and what you study, but yes, I think they do teach you to think critically, especially in humanities courses and seminars. Maybe it's just because I went to a small, private liberal arts college rather than a huge school, but critical thinking was definitely a part of my education.
|
106
|
+
|
107
|
+
|
108
|
+
AskReddit
|
109
|
+
http://www.reddit.com/r/AskReddit/comments/140t5c/z/c795nw3
|
110
|
+
|
111
|
+
You're from New Jersey? Which exit?
|
112
|
+
|
113
|
+
|
114
|
+
AskReddit
|
115
|
+
http://www.reddit.com/r/AskReddit/comments/140h3z/z/c795muo
|
116
|
+
|
117
|
+
You didn't slow down for very long though, did you?
|
118
|
+
"""
|
119
|
+
|
89
120
|
Scenario: List comments for a subreddit with no comments
|
90
121
|
Given the Reddit service returns comments for the user "mipadi"
|
91
122
|
When I run `usaidwat mipadi nsfw`
|
@@ -0,0 +1 @@
|
|
1
|
+
{"error": 404}
|
data/lib/usaidwat/application.rb
CHANGED
@@ -14,10 +14,15 @@ module USaidWat
|
|
14
14
|
def run(argv)
|
15
15
|
trap("INT") { puts; exit 0 }
|
16
16
|
opts, args = handle_arguments(argv)
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
17
|
+
username = args.first
|
18
|
+
@redditor = @client.new(username)
|
19
|
+
begin
|
20
|
+
return tally_comments if opts[:tally]
|
21
|
+
return list_comments_for_subreddit(args[1]) if args.length == 2
|
22
|
+
return list_all_comments
|
23
|
+
rescue USaidWat::Client::NoSuchUserError
|
24
|
+
quit "No such user: #{username}", 3
|
25
|
+
end
|
21
26
|
end
|
22
27
|
|
23
28
|
def usage(code=0)
|
@@ -43,8 +48,9 @@ module USaidWat
|
|
43
48
|
|
44
49
|
def list_comments_for_subreddit(subreddit)
|
45
50
|
comments = @redditor.comments
|
46
|
-
comments = comments.
|
47
|
-
|
51
|
+
comments = comments.group_by { |c| c.subreddit.downcase }
|
52
|
+
comments = comments[subreddit.downcase]
|
53
|
+
quit "No comments by #{@redditor.username} for #{subreddit}." if comments.nil?
|
48
54
|
formatter = USaidWat::CLI::CommentFormatter.new
|
49
55
|
comments.each { |c| print formatter.format(c) }
|
50
56
|
end
|
data/lib/usaidwat/client.rb
CHANGED
@@ -5,6 +5,8 @@ module USaidWat
|
|
5
5
|
module Client
|
6
6
|
class ReachabilityError < RuntimeError; end
|
7
7
|
|
8
|
+
class NoSuchUserError < StandardError; end
|
9
|
+
|
8
10
|
class BaseRedditor
|
9
11
|
attr_reader :username
|
10
12
|
|
@@ -14,6 +16,8 @@ module USaidWat
|
|
14
16
|
|
15
17
|
def comments
|
16
18
|
@service.user(username).comments(100)
|
19
|
+
rescue NoMethodError
|
20
|
+
raise NoSuchUserError, username
|
17
21
|
rescue TypeError
|
18
22
|
raise ReachabilityError, "Reddit unreachable"
|
19
23
|
end
|
data/lib/usaidwat/formatter.rb
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
require 'stringio'
|
2
|
-
require 'rainbow'
|
2
|
+
require 'rainbow/ext/string'
|
3
|
+
require 'usaidwat/ext/string'
|
3
4
|
|
4
|
-
|
5
|
+
Rainbow.enabled = true unless ENV['USAIDWAT_ENV'] == 'cucumber'
|
5
6
|
|
6
7
|
module USaidWat
|
7
8
|
module CLI
|
@@ -16,7 +17,7 @@ module USaidWat
|
|
16
17
|
out.write("#{comment.subreddit}\n".color(:green))
|
17
18
|
out.write("#{comment_link(comment)}\n".color(:yellow))
|
18
19
|
out.write("\n")
|
19
|
-
out.write("#{comment.body.strip}\n")
|
20
|
+
out.write("#{comment.body.strip.convert_entities}\n")
|
20
21
|
@count += 1
|
21
22
|
out.rewind
|
22
23
|
out.read
|
data/lib/usaidwat/service.rb
CHANGED
@@ -19,9 +19,13 @@ module USaidWat
|
|
19
19
|
|
20
20
|
def comments(n)
|
21
21
|
path = File.join(File.dirname(__FILE__), "..", "..", "features", "fixtures", "#{@username}.json")
|
22
|
-
|
23
|
-
|
24
|
-
|
22
|
+
if File.exists?(path)
|
23
|
+
json = IO.read(path)
|
24
|
+
json = JSON.parse(json)
|
25
|
+
json['data']['children'].map { |d| MockComment.new(d) }
|
26
|
+
else
|
27
|
+
raise USaidWat::Client::NoSuchUserError, @username
|
28
|
+
end
|
25
29
|
end
|
26
30
|
end
|
27
31
|
|
data/lib/usaidwat/version.rb
CHANGED
@@ -7,13 +7,13 @@ module USaidWat
|
|
7
7
|
|
8
8
|
describe "#username" do
|
9
9
|
it "returns the Redditor's username" do
|
10
|
-
redditor.username.
|
10
|
+
expect(redditor.username).to eq("mipadi")
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
14
14
|
describe "#to_s" do
|
15
15
|
it "returns a string representing the Redditor" do
|
16
|
-
"#{redditor}".
|
16
|
+
expect("#{redditor}").to eq("mipadi")
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
@@ -28,7 +28,23 @@ module USaidWat
|
|
28
28
|
|
29
29
|
describe "#comments" do
|
30
30
|
it "retrieves 100 comments" do
|
31
|
-
redditor.comments.count.
|
31
|
+
expect(redditor.comments.count).to eq(100)
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
context "when a Reddit user does not exist" do
|
37
|
+
before(:each) do
|
38
|
+
WebMock.disable_net_connect!
|
39
|
+
WebMock.reset!
|
40
|
+
root = File.expand_path("../../../features/fixtures", __FILE__)
|
41
|
+
stub_request(:get, "http://www.reddit.com/user/palorchild/comments.json?after=&limit=100").
|
42
|
+
to_return(:status => 404, :body => IO.read(File.join(root, "palorchild.json")))
|
43
|
+
end
|
44
|
+
|
45
|
+
describe "#comments" do
|
46
|
+
it "raises an exception if the user does not exist" do
|
47
|
+
expect { Redditor.new("palorchild").comments }.to raise_error(NoSuchUserError, /palorchild/)
|
32
48
|
end
|
33
49
|
end
|
34
50
|
end
|
@@ -8,10 +8,10 @@ module USaidWat
|
|
8
8
|
describe "#format" do
|
9
9
|
it "should return a string containing the formatted comment" do
|
10
10
|
comment = double("comment")
|
11
|
-
comment.
|
12
|
-
comment.
|
13
|
-
comment.
|
14
|
-
comment.
|
11
|
+
expect(comment).to receive(:subreddit).twice.and_return("programming")
|
12
|
+
expect(comment).to receive(:link_id).and_return("t3_13f783")
|
13
|
+
expect(comment).to receive(:id).and_return("c73qhxi")
|
14
|
+
expect(comment).to receive(:body).and_return("Welcome to the wonderful world of Python drama!")
|
15
15
|
expected = <<-EXPECTED
|
16
16
|
programming
|
17
17
|
http://www.reddit.com/r/programming/comments/13f783/z/c73qhxi
|
@@ -19,37 +19,37 @@ http://www.reddit.com/r/programming/comments/13f783/z/c73qhxi
|
|
19
19
|
Welcome to the wonderful world of Python drama!
|
20
20
|
EXPECTED
|
21
21
|
actual = formatter.format(comment).delete_ansi_color_codes
|
22
|
-
actual.
|
22
|
+
expect(actual).to eq(expected)
|
23
23
|
end
|
24
24
|
|
25
25
|
it "should print two spaces between comments" do
|
26
26
|
comment1 = double("first comment")
|
27
|
-
comment1.
|
28
|
-
comment1.
|
29
|
-
comment1.
|
30
|
-
comment1.
|
27
|
+
expect(comment1).to receive(:subreddit).twice.and_return("programming")
|
28
|
+
expect(comment1).to receive(:link_id).and_return("t3_13f783")
|
29
|
+
expect(comment1).to receive(:id).and_return("c73qhxi")
|
30
|
+
expect(comment1).to receive(:body).and_return("Welcome to the wonderful world of Python drama!")
|
31
31
|
comment2 = double("second comment")
|
32
|
-
comment2.
|
33
|
-
comment2.
|
34
|
-
comment2.
|
35
|
-
comment2.
|
32
|
+
expect(comment2).to receive(:subreddit).twice.and_return("programming")
|
33
|
+
expect(comment2).to receive(:link_id).and_return("t3_13f783")
|
34
|
+
expect(comment2).to receive(:id).and_return("c73qhxi")
|
35
|
+
expect(comment2).to receive(:body).and_return("Welcome to the wonderful world of Python drama!")
|
36
36
|
s = formatter.format(comment1)
|
37
37
|
s = formatter.format(comment2)
|
38
38
|
lines = s.split("\n")
|
39
|
-
lines[0].
|
40
|
-
lines[1].
|
41
|
-
lines[2].
|
39
|
+
expect(lines[0]).to eq('')
|
40
|
+
expect(lines[1]).to eq('')
|
41
|
+
expect(lines[2]).not_to eq('')
|
42
42
|
end
|
43
43
|
|
44
44
|
it "should strip leading and trailing whitespace from comments" do
|
45
45
|
comment = double(comment)
|
46
|
-
comment.
|
47
|
-
comment.
|
48
|
-
comment.
|
49
|
-
comment.
|
46
|
+
expect(comment).to receive(:subreddit).twice.and_return("test")
|
47
|
+
expect(comment).to receive(:link_id).and_return("t3_13f783")
|
48
|
+
expect(comment).to receive(:id).and_return("c73qhxi")
|
49
|
+
expect(comment).to receive(:body).and_return("This is a comment.\n\nIt has two lines.\n\n\n")
|
50
50
|
s = formatter.format(comment)
|
51
51
|
lines = s.split("\n")
|
52
|
-
lines[-1].
|
52
|
+
expect(lines[-1]).to eq("It has two lines.")
|
53
53
|
end
|
54
54
|
end
|
55
55
|
end
|
@@ -7,7 +7,7 @@ module USaidWat
|
|
7
7
|
|
8
8
|
describe "#user" do
|
9
9
|
it "returns a mock user" do
|
10
|
-
service.user("mipadi").
|
10
|
+
expect(service.user("mipadi")).to respond_to(:comments)
|
11
11
|
end
|
12
12
|
end
|
13
13
|
end
|
@@ -17,11 +17,11 @@ module USaidWat
|
|
17
17
|
|
18
18
|
describe "#comments" do
|
19
19
|
it "should return an array of comments" do
|
20
|
-
user.comments(100).
|
21
|
-
user.comments(100).
|
22
|
-
user.comments(100).
|
23
|
-
user.comments(100).
|
24
|
-
user.comments(100).count.
|
20
|
+
expect(user.comments(100)).to respond_to(:count)
|
21
|
+
expect(user.comments(100)).to respond_to(:reject)
|
22
|
+
expect(user.comments(100)).to respond_to(:empty?)
|
23
|
+
expect(user.comments(100)).to respond_to(:each)
|
24
|
+
expect(user.comments(100).count).to eq(100)
|
25
25
|
end
|
26
26
|
end
|
27
27
|
end
|
@@ -31,25 +31,25 @@ module USaidWat
|
|
31
31
|
|
32
32
|
describe "#subreddit" do
|
33
33
|
it "should return a string denoting what subreddit it belongs to" do
|
34
|
-
comment.subreddit.
|
34
|
+
expect(comment.subreddit).to eq("wikipedia")
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
38
38
|
describe "#body" do
|
39
39
|
it "should return the comment's body" do
|
40
|
-
comment.body.
|
40
|
+
expect(comment.body).to eq("Yep. My first experience with a Heisenbug occurred in a C++ program, and disappeared when I tried to print a variable with printf (only to reappear when that call was removed).")
|
41
41
|
end
|
42
42
|
end
|
43
43
|
|
44
44
|
describe "#id" do
|
45
45
|
it "should return an ID" do
|
46
|
-
comment.id.
|
46
|
+
expect(comment.id).to eq("c79peed")
|
47
47
|
end
|
48
48
|
end
|
49
49
|
|
50
50
|
describe "#link_id" do
|
51
51
|
it "should return a link ID" do
|
52
|
-
comment.link_id.
|
52
|
+
expect(comment.link_id).to eq("t3_142t4w")
|
53
53
|
end
|
54
54
|
end
|
55
55
|
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
module USaidWat
|
4
|
+
module Ext
|
5
|
+
describe String do
|
6
|
+
describe "#convert_entities" do
|
7
|
+
it "converts > to >" do
|
8
|
+
s = "-> look at this!"
|
9
|
+
expected = "-> look at this!"
|
10
|
+
actual = s.convert_entities
|
11
|
+
expect(actual).to eq(expected)
|
12
|
+
end
|
13
|
+
|
14
|
+
it "converts < to <" do
|
15
|
+
s = "left << shift!"
|
16
|
+
expected = "left << shift!"
|
17
|
+
actual = s.convert_entities
|
18
|
+
expect(actual).to eq(expected)
|
19
|
+
end
|
20
|
+
|
21
|
+
it "converts both > and < to <" do
|
22
|
+
s = "look -> this string has both <- awesome, huh?"
|
23
|
+
expected = "look -> this string has both <- awesome, huh?"
|
24
|
+
actual = s.convert_entities
|
25
|
+
expect(actual).to eq(expected)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
data/usaidwat.gemspec
CHANGED
@@ -6,6 +6,7 @@ require 'usaidwat/version'
|
|
6
6
|
Gem::Specification.new do |gem|
|
7
7
|
gem.name = "usaidwat"
|
8
8
|
gem.version = USaidWat::VERSION
|
9
|
+
gem.licenses = ["MIT"]
|
9
10
|
gem.authors = ["Michael Dippery"]
|
10
11
|
gem.email = ["michael@monkey-robot.com"]
|
11
12
|
gem.homepage = "https://github.com/mdippery/usaidwat"
|
@@ -18,10 +19,10 @@ Gem::Specification.new do |gem|
|
|
18
19
|
gem.require_paths = ["lib"]
|
19
20
|
|
20
21
|
gem.add_dependency('snooby', '~> 0.1.5')
|
21
|
-
gem.add_dependency('rainbow', '~>
|
22
|
+
gem.add_dependency('rainbow', '~> 2.0', '>= 2.0.0')
|
22
23
|
|
23
|
-
gem.add_development_dependency('rspec', '~> 2.
|
24
|
-
gem.add_development_dependency('cucumber', '~>
|
25
|
-
gem.add_development_dependency('aruba', '~> 0.
|
26
|
-
gem.add_development_dependency('webmock', '~> 1.
|
24
|
+
gem.add_development_dependency('rspec', '~> 3.2', '>= 3.2.0')
|
25
|
+
gem.add_development_dependency('cucumber', '~> 2.0', '>= 2.0.0')
|
26
|
+
gem.add_development_dependency('aruba', '~> 0.6.2')
|
27
|
+
gem.add_development_dependency('webmock', '~> 1.21', '>= 1.21.0')
|
27
28
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: usaidwat
|
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
|
- Michael Dippery
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-05-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: snooby
|
@@ -30,70 +30,94 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: '2.0'
|
34
|
+
- - ">="
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: 2.0.0
|
34
37
|
type: :runtime
|
35
38
|
prerelease: false
|
36
39
|
version_requirements: !ruby/object:Gem::Requirement
|
37
40
|
requirements:
|
38
41
|
- - "~>"
|
39
42
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
43
|
+
version: '2.0'
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: 2.0.0
|
41
47
|
- !ruby/object:Gem::Dependency
|
42
48
|
name: rspec
|
43
49
|
requirement: !ruby/object:Gem::Requirement
|
44
50
|
requirements:
|
45
51
|
- - "~>"
|
46
52
|
- !ruby/object:Gem::Version
|
47
|
-
version: 2
|
53
|
+
version: '3.2'
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: 3.2.0
|
48
57
|
type: :development
|
49
58
|
prerelease: false
|
50
59
|
version_requirements: !ruby/object:Gem::Requirement
|
51
60
|
requirements:
|
52
61
|
- - "~>"
|
53
62
|
- !ruby/object:Gem::Version
|
54
|
-
version: 2
|
63
|
+
version: '3.2'
|
64
|
+
- - ">="
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: 3.2.0
|
55
67
|
- !ruby/object:Gem::Dependency
|
56
68
|
name: cucumber
|
57
69
|
requirement: !ruby/object:Gem::Requirement
|
58
70
|
requirements:
|
59
71
|
- - "~>"
|
60
72
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
73
|
+
version: '2.0'
|
74
|
+
- - ">="
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: 2.0.0
|
62
77
|
type: :development
|
63
78
|
prerelease: false
|
64
79
|
version_requirements: !ruby/object:Gem::Requirement
|
65
80
|
requirements:
|
66
81
|
- - "~>"
|
67
82
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
83
|
+
version: '2.0'
|
84
|
+
- - ">="
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: 2.0.0
|
69
87
|
- !ruby/object:Gem::Dependency
|
70
88
|
name: aruba
|
71
89
|
requirement: !ruby/object:Gem::Requirement
|
72
90
|
requirements:
|
73
91
|
- - "~>"
|
74
92
|
- !ruby/object:Gem::Version
|
75
|
-
version: 0.
|
93
|
+
version: 0.6.2
|
76
94
|
type: :development
|
77
95
|
prerelease: false
|
78
96
|
version_requirements: !ruby/object:Gem::Requirement
|
79
97
|
requirements:
|
80
98
|
- - "~>"
|
81
99
|
- !ruby/object:Gem::Version
|
82
|
-
version: 0.
|
100
|
+
version: 0.6.2
|
83
101
|
- !ruby/object:Gem::Dependency
|
84
102
|
name: webmock
|
85
103
|
requirement: !ruby/object:Gem::Requirement
|
86
104
|
requirements:
|
87
105
|
- - "~>"
|
88
106
|
- !ruby/object:Gem::Version
|
89
|
-
version: 1.
|
107
|
+
version: '1.21'
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 1.21.0
|
90
111
|
type: :development
|
91
112
|
prerelease: false
|
92
113
|
version_requirements: !ruby/object:Gem::Requirement
|
93
114
|
requirements:
|
94
115
|
- - "~>"
|
95
116
|
- !ruby/object:Gem::Version
|
96
|
-
version: 1.
|
117
|
+
version: '1.21'
|
118
|
+
- - ">="
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: 1.21.0
|
97
121
|
description: View a user's last 100 Reddit comments, organized by subreddit.
|
98
122
|
email:
|
99
123
|
- michael@monkey-robot.com
|
@@ -111,12 +135,14 @@ files:
|
|
111
135
|
- features/browse.feature
|
112
136
|
- features/fixtures/blank.json
|
113
137
|
- features/fixtures/mipadi.json
|
138
|
+
- features/fixtures/palorchild.json
|
114
139
|
- features/help.feature
|
115
140
|
- features/step_definitions/reddit_steps.rb
|
116
141
|
- features/support/aruba.rb
|
117
142
|
- lib/usaidwat.rb
|
118
143
|
- lib/usaidwat/application.rb
|
119
144
|
- lib/usaidwat/client.rb
|
145
|
+
- lib/usaidwat/ext/string.rb
|
120
146
|
- lib/usaidwat/formatter.rb
|
121
147
|
- lib/usaidwat/service.rb
|
122
148
|
- lib/usaidwat/version.rb
|
@@ -124,9 +150,11 @@ files:
|
|
124
150
|
- spec/usaidwat/client_spec.rb
|
125
151
|
- spec/usaidwat/formatter_spec.rb
|
126
152
|
- spec/usaidwat/service_spec.rb
|
153
|
+
- spec/usaidwat/string_spec.rb
|
127
154
|
- usaidwat.gemspec
|
128
155
|
homepage: https://github.com/mdippery/usaidwat
|
129
|
-
licenses:
|
156
|
+
licenses:
|
157
|
+
- MIT
|
130
158
|
metadata: {}
|
131
159
|
post_install_message:
|
132
160
|
rdoc_options: []
|
@@ -144,7 +172,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
144
172
|
version: '0'
|
145
173
|
requirements: []
|
146
174
|
rubyforge_project:
|
147
|
-
rubygems_version: 2.
|
175
|
+
rubygems_version: 2.4.5
|
148
176
|
signing_key:
|
149
177
|
specification_version: 4
|
150
178
|
summary: Answers the age-old question, "Where does a Redditor comment the most?"
|
@@ -152,6 +180,7 @@ test_files:
|
|
152
180
|
- features/browse.feature
|
153
181
|
- features/fixtures/blank.json
|
154
182
|
- features/fixtures/mipadi.json
|
183
|
+
- features/fixtures/palorchild.json
|
155
184
|
- features/help.feature
|
156
185
|
- features/step_definitions/reddit_steps.rb
|
157
186
|
- features/support/aruba.rb
|
@@ -159,3 +188,4 @@ test_files:
|
|
159
188
|
- spec/usaidwat/client_spec.rb
|
160
189
|
- spec/usaidwat/formatter_spec.rb
|
161
190
|
- spec/usaidwat/service_spec.rb
|
191
|
+
- spec/usaidwat/string_spec.rb
|