crp 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/README.md +1 -1
- data/lib/crp/review_poster.rb +20 -2
- data/lib/crp/version.rb +1 -1
- data/test/review_poster_test.rb +65 -4
- data/test/test_helper.rb +1 -5
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1f19f65da31559dfeb4b01b1e02e1565ddbffd31
|
4
|
+
data.tar.gz: a8bca454e096830f91cf19d76a42a33ff57325d2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b8e1fbb78131298b5270818269330db9e8b6d6abb34c9643c7a23f1530ee0d578899f46f5fee41c1954e484cfe7442e049526ad01e02de3ebcb37b2bb4a8c6c6
|
7
|
+
data.tar.gz: 67f3bbdb21c2233f466743dd1a04700042727df80916a201637f8dc3d1ffacfa321ffc29d80ede25862a398a16d983d76f52caad20886518b103f4c5ee6bed76
|
data/README.md
CHANGED
@@ -27,7 +27,7 @@ require "crp"
|
|
27
27
|
=> true
|
28
28
|
review_poster = CRP::ReviewPoster.new("crp.example.com", "client", "key")
|
29
29
|
=> #<CRP::ReviewPoster:0x007fa2c1119110 @host="crp.example.com", @client="client", @key="key">
|
30
|
-
review_response = review_poster.
|
30
|
+
review_response = review_poster.new_description_review("I'm looking for that special someone.", "123ABC", :male, "davy22", 55)
|
31
31
|
=> #<CRP::ReviewResponse:0x007fa87c1fd020 @response=#<Net::HTTPOK 200 OK readbody=true>>
|
32
32
|
review_response.successful?
|
33
33
|
=> true
|
data/lib/crp/review_poster.rb
CHANGED
@@ -5,7 +5,10 @@ require 'uri'
|
|
5
5
|
|
6
6
|
module CRP
|
7
7
|
class ReviewPoster
|
8
|
-
NEW_REVIEW_PATH
|
8
|
+
NEW_REVIEW_PATH = "/api/v1/Review/newReview"
|
9
|
+
USERNAME_REVIEW_CODE = 1
|
10
|
+
DESCRIPTION_REVIEW_CODE = 2
|
11
|
+
IMAGE_REVIEW_CODE = 3
|
9
12
|
|
10
13
|
def initialize(host = ENV['CRP_HOST'], client = ENV['CRP_CLIENT'], key = ENV['CRP_KEY'])
|
11
14
|
raise ArgumentError, "Missing CRP host" if host.nil? || host.strip.empty?
|
@@ -16,7 +19,22 @@ module CRP
|
|
16
19
|
@key = key
|
17
20
|
end
|
18
21
|
|
19
|
-
# Submits a new
|
22
|
+
# Submits a new username review to CRP.
|
23
|
+
def new_username_review(internal_review_id, gender, username, age)
|
24
|
+
new_review(USERNAME_REVIEW_CODE, username, internal_review_id, gender, username, age)
|
25
|
+
end
|
26
|
+
|
27
|
+
# Submits a new description review to CRP.
|
28
|
+
def new_description_review(description, internal_review_id, gender, username, age)
|
29
|
+
new_review(DESCRIPTION_REVIEW_CODE, description, internal_review_id, gender, username, age)
|
30
|
+
end
|
31
|
+
|
32
|
+
# Submits a new image review to CRP.
|
33
|
+
def new_image_review(image_url, internal_review_id, gender, username, age)
|
34
|
+
new_review(IMAGE_REVIEW_CODE, image_url, internal_review_id, gender, username, age)
|
35
|
+
end
|
36
|
+
|
37
|
+
# Submits a new review to CRP.
|
20
38
|
def new_review(review_type, review_content, internal_review_id, gender, username, age)
|
21
39
|
uri = new_review_url(review_type, review_content, internal_review_id, gender, username, age)
|
22
40
|
http = Net::HTTP.new(uri.host, uri.port)
|
data/lib/crp/version.rb
CHANGED
data/test/review_poster_test.rb
CHANGED
@@ -7,15 +7,13 @@ module CRP
|
|
7
7
|
KEY = "A1B2c3DeFGhi"
|
8
8
|
REVIEW_TYPE = 1
|
9
9
|
REVIEW_CONTENT = "I am a very cheerful and good-humored."
|
10
|
+
DESCRIPTION = REVIEW_CONTENT
|
11
|
+
IMAGE_URL = "http://example.com/image.jpg"
|
10
12
|
INTERNAL_REVIEW_ID = "ABCDE12345"
|
11
13
|
GENDER = :female
|
12
14
|
USERNAME = "starryheart28"
|
13
15
|
AGE = 28
|
14
16
|
|
15
|
-
before do
|
16
|
-
@new_review_request = stub_new_review_request
|
17
|
-
end
|
18
|
-
|
19
17
|
it "accepts a host" do
|
20
18
|
review_poster = ReviewPoster.new(HOST, CLIENT, KEY)
|
21
19
|
review_poster.instance_variable_get(:@host).must_equal(HOST)
|
@@ -71,7 +69,70 @@ module CRP
|
|
71
69
|
ENV['CRP_KEY'] = nil
|
72
70
|
end
|
73
71
|
|
72
|
+
describe :new_username_review do
|
73
|
+
let(:new_username_review_url) { "https://crp.example.com/api/v1/Review/newReview?arguments=%5B%7B%22reviewType%22:1,%22reviewContent%22:%22starryheart28%22,%22internalReviewId%22:%22ABCDE12345%22,%22gender%22:1,%22username%22:%22starryheart28%22,%22age%22:28%7D%5D&client=client&signature=057bbe8cea1047c6173af865a78f1fbed75ca270" }
|
74
|
+
|
75
|
+
before do
|
76
|
+
@new_review_request = stub_new_review_request(new_username_review_url)
|
77
|
+
end
|
78
|
+
|
79
|
+
it "sends the review to CRP" do
|
80
|
+
review_poster = ReviewPoster.new(HOST, CLIENT, KEY)
|
81
|
+
review_poster.new_username_review(INTERNAL_REVIEW_ID, GENDER, USERNAME, AGE)
|
82
|
+
assert_requested(@new_review_request)
|
83
|
+
end
|
84
|
+
|
85
|
+
it "returns a review response" do
|
86
|
+
review_poster = ReviewPoster.new(HOST, CLIENT, KEY)
|
87
|
+
review_poster.new_username_review(INTERNAL_REVIEW_ID, GENDER, USERNAME, AGE).must_be_instance_of(ReviewResponse)
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
describe :new_description_review do
|
92
|
+
let(:new_description_review_url) { "https://crp.example.com/api/v1/Review/newReview?arguments=%5B%7B%22reviewType%22:2,%22reviewContent%22:%22I%20am%20a%20very%20cheerful%20and%20good-humored.%22,%22internalReviewId%22:%22ABCDE12345%22,%22gender%22:1,%22username%22:%22starryheart28%22,%22age%22:28%7D%5D&client=client&signature=863c18a8b6c538f29771568dcc0b82453d110f07" }
|
93
|
+
|
94
|
+
before do
|
95
|
+
@new_review_request = stub_new_review_request(new_description_review_url)
|
96
|
+
end
|
97
|
+
|
98
|
+
it "sends the review to CRP" do
|
99
|
+
review_poster = ReviewPoster.new(HOST, CLIENT, KEY)
|
100
|
+
review_poster.new_description_review(DESCRIPTION, INTERNAL_REVIEW_ID, GENDER, USERNAME, AGE)
|
101
|
+
assert_requested(@new_review_request)
|
102
|
+
end
|
103
|
+
|
104
|
+
it "returns a review response" do
|
105
|
+
review_poster = ReviewPoster.new(HOST, CLIENT, KEY)
|
106
|
+
review_poster.new_description_review(DESCRIPTION, INTERNAL_REVIEW_ID, GENDER, USERNAME, AGE).must_be_instance_of(ReviewResponse)
|
107
|
+
end
|
108
|
+
end
|
109
|
+
|
110
|
+
describe :new_image_review do
|
111
|
+
let(:new_image_review_url) { "https://crp.example.com/api/v1/Review/newReview?arguments=%5B%7B%22reviewType%22:3,%22reviewContent%22:%22http://example.com/image.jpg%22,%22internalReviewId%22:%22ABCDE12345%22,%22gender%22:1,%22username%22:%22starryheart28%22,%22age%22:28%7D%5D&client=client&signature=3cc4b50fc6734d02506b8778df8c971c8bdafead" }
|
112
|
+
|
113
|
+
before do
|
114
|
+
@new_review_request = stub_new_review_request(new_image_review_url)
|
115
|
+
end
|
116
|
+
|
117
|
+
it "sends the review to CRP" do
|
118
|
+
review_poster = ReviewPoster.new(HOST, CLIENT, KEY)
|
119
|
+
review_poster.new_image_review(IMAGE_URL, INTERNAL_REVIEW_ID, GENDER, USERNAME, AGE)
|
120
|
+
assert_requested(@new_review_request)
|
121
|
+
end
|
122
|
+
|
123
|
+
it "returns a review response" do
|
124
|
+
review_poster = ReviewPoster.new(HOST, CLIENT, KEY)
|
125
|
+
review_poster.new_image_review(IMAGE_URL, INTERNAL_REVIEW_ID, GENDER, USERNAME, AGE).must_be_instance_of(ReviewResponse)
|
126
|
+
end
|
127
|
+
end
|
128
|
+
|
74
129
|
describe :new_review do
|
130
|
+
let(:new_review_url) { "https://crp.example.com/api/v1/Review/newReview?client=client&arguments=%5B%7B%22reviewType%22%3A1%2C%22reviewContent%22%3A%22I+am+a+very+cheerful+and+good-humored.%22%2C%22internalReviewId%22%3A%22ABCDE12345%22%2C%22gender%22%3A1%2C%22username%22%3A%22starryheart28%22%2C%22age%22%3A28%7D%5D&signature=77ce496ea7f78ae7b6deab0d492b265a81276cb6" }
|
131
|
+
|
132
|
+
before do
|
133
|
+
@new_review_request = stub_new_review_request(new_review_url)
|
134
|
+
end
|
135
|
+
|
75
136
|
it "sends the review to CRP" do
|
76
137
|
review_poster = ReviewPoster.new(HOST, CLIENT, KEY)
|
77
138
|
review_poster.new_review(REVIEW_TYPE, REVIEW_CONTENT, INTERNAL_REVIEW_ID, GENDER, USERNAME, AGE)
|
data/test/test_helper.rb
CHANGED
@@ -18,12 +18,8 @@ def valid_callback_review_body
|
|
18
18
|
@valid_callback_review_body ||= File.read(File.join(FIXTURES_PATH, 'valid_callback_review.txt')).chomp
|
19
19
|
end
|
20
20
|
|
21
|
-
def stub_new_review_request
|
21
|
+
def stub_new_review_request(new_review_url)
|
22
22
|
request = { :headers => {'Accept' => '*/*', 'User-Agent' => 'Ruby'} }
|
23
23
|
response = { :status => 200, :body => {}, :headers => {} }
|
24
24
|
stub_request(:get, new_review_url).with(request).to_return(response)
|
25
25
|
end
|
26
|
-
|
27
|
-
def new_review_url
|
28
|
-
"https://crp.example.com/api/v1/Review/newReview?client=client&arguments=%5B%7B%22reviewType%22%3A1%2C%22reviewContent%22%3A%22I+am+a+very+cheerful+and+good-humored.%22%2C%22internalReviewId%22%3A%22ABCDE12345%22%2C%22gender%22%3A1%2C%22username%22%3A%22starryheart28%22%2C%22age%22%3A28%7D%5D&signature=77ce496ea7f78ae7b6deab0d492b265a81276cb6"
|
29
|
-
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: crp
|
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
|
- Agile Wings
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-10-
|
11
|
+
date: 2013-10-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: webmock
|