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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0259d44e42bd8fc86a0d99612041c1b9b2b760a8
4
- data.tar.gz: 1218348d94e41efc33990fe40af55bbab64c820b
3
+ metadata.gz: 1f19f65da31559dfeb4b01b1e02e1565ddbffd31
4
+ data.tar.gz: a8bca454e096830f91cf19d76a42a33ff57325d2
5
5
  SHA512:
6
- metadata.gz: c1c330c3b805c2723d508c3f74c964d0f6324eb077122c94ecc4f64a741493911d984caa2267969740ddc7887a7cad8a10d287a4fe6b06802827505567f3b41c
7
- data.tar.gz: 573dff2c07ebcf0193bcc7624ae9fac7773205be8e2c0fe121b04de3630ed8dc679a9d719ab25363b97fb57c82bf2c3c44711b273da9d2faa2a5635e915d86a8
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.new_review(1, "davy22", "123ABC", :female, "davy22", 55)
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
@@ -5,7 +5,10 @@ require 'uri'
5
5
 
6
6
  module CRP
7
7
  class ReviewPoster
8
- NEW_REVIEW_PATH = "/api/v1/Review/newReview"
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 profile review to CRP.
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
@@ -1,3 +1,3 @@
1
1
  module CRP
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -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.2
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-15 00:00:00.000000000 Z
11
+ date: 2013-10-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: webmock