user_reviews 0.0.8 → 0.0.9

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.
data/.pairs ADDED
@@ -0,0 +1,8 @@
1
+ pairs:
2
+ et: Elie Toubiana; elie
3
+ rn: Richard Nuno; richard
4
+ jn: John Negron; john.negron
5
+ pt: Paul Tower; paul.towere
6
+ email:
7
+ prefix: dev
8
+ domain: unpakt.com
data/Gemfile.lock CHANGED
@@ -11,8 +11,8 @@ PATH
11
11
  GEM
12
12
  remote: https://rubygems.org/
13
13
  specs:
14
- activesupport (3.2.12)
15
- i18n (~> 0.6)
14
+ activesupport (3.2.13)
15
+ i18n (= 0.6.1)
16
16
  multi_json (~> 1.0)
17
17
  coderay (1.0.8)
18
18
  diff-lcs (1.1.3)
@@ -29,7 +29,7 @@ GEM
29
29
  coderay (~> 1.0.5)
30
30
  method_source (~> 0.8)
31
31
  slop (~> 3.4)
32
- rake (10.0.3)
32
+ rake (10.1.0)
33
33
  rspec (2.12.0)
34
34
  rspec-core (~> 2.12.0)
35
35
  rspec-expectations (~> 2.12.0)
data/Rakefile CHANGED
@@ -6,3 +6,5 @@ Bundler::GemHelper.install_tasks
6
6
  RSpec::Core::RakeTask.new(:spec)
7
7
 
8
8
  task :default => :spec
9
+
10
+
@@ -0,0 +1,23 @@
1
+ module Providers
2
+ module CitysearchReviews
3
+ class Business
4
+ attr_accessor :name, :address, :reference, :average_rating, :total_reviews
5
+
6
+ def self.build_business(node)
7
+ return nil if [node["name"], node["address"], node["review_info"], node["id"]].include?(nil)
8
+ new(node)
9
+ end
10
+
11
+ private
12
+
13
+ def initialize(node)
14
+ @name = node["name"]
15
+ full_address = node["address"]
16
+ @address = [full_address["street"], full_address["city"], full_address["state"], full_address["postal_code"]].join(" ")
17
+ @reference = node["id"]
18
+ @total_reviews = node['review_info']['total_user_reviews']
19
+ @average_rating = node['review_info']['overall_review_rating']
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,16 @@
1
+ require 'date'
2
+
3
+ module Providers
4
+ module CitysearchReviews
5
+ class Review
6
+ attr_accessor :rating, :author_name, :reviewed_at, :comment
7
+
8
+ def initialize(node)
9
+ @rating = node["review_rating"]
10
+ @author_name = node["review_author"]
11
+ @reviewed_at = DateTime.parse(node["review_date"]).to_time
12
+ @comment = node["review_text"]
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,72 @@
1
+ require 'httparty'
2
+ require 'open-uri'
3
+
4
+
5
+ module Providers
6
+ class CitysearchReviewsApi
7
+ LOCALHOST_IP = "127.0.0.1"
8
+ def initialize(options)
9
+ @key = options[:publisher_key]
10
+ @ip = options[:client_ip] || LOCALHOST_IP
11
+ end
12
+
13
+ def find_business_by_name(name, business_type, city_state)
14
+ request_url = business_search_url(name, business_type, city_state)
15
+ json_results = HTTParty.get(request_url)
16
+ parse_business_results(json_results)
17
+ end
18
+
19
+ def find_business_by_id(citysearch_id)
20
+ request_url = business_url(citysearch_id)
21
+ json_results = HTTParty.get(request_url)
22
+ json = json_results["locations"] || []
23
+
24
+ return json if json.empty?
25
+ Providers::CitysearchReviews::Business.build_business(json.first)
26
+ end
27
+
28
+ def find_reviews_for_business(citysearch_id)
29
+ request_url = reviews_url(citysearch_id)
30
+ json_results = HTTParty.get(request_url)
31
+ parse_reviews_results(json_results)
32
+ end
33
+
34
+ private
35
+
36
+ def business_url(citysearch_id)
37
+ "http://api.citygridmedia.com/content/places/v2/detail?publisher=#{@key}&id=#{citysearch_id}&id_type=cs&client_ip=127.0.0.1&format=json"
38
+ end
39
+
40
+ def business_search_url(name, business_type = "", city_state)
41
+ "http://api.citygridmedia.com/content/places/v2/search/where?where=#{URI::encode(city_state)}&what=#{URI::encode(name)}&publisher=#{@key}&format=json"
42
+ end
43
+
44
+ def reviews_url(citysearch_id)
45
+ "http://api.citygridmedia.com/content/reviews/v2/search/where?listing_id=#{citysearch_id}&publisher=#{@key}&format=json"
46
+ end
47
+
48
+ def parse_business_results(json)
49
+ result = []
50
+ return result if json.nil? || json["results"].nil?
51
+
52
+ json = json["results"] || []
53
+ json["locations"].each do |e|
54
+ result.push(Providers::CitysearchReviews::Business.build_business(e))
55
+ end
56
+
57
+ result
58
+ end
59
+
60
+ def parse_reviews_results(json)
61
+ result = []
62
+ return result if json.nil? || json["results"].nil?
63
+
64
+ json = json["results"] || []
65
+ json["reviews"].each do |e|
66
+ result.push(Providers::CitysearchReviews::Review.new(e))
67
+ end
68
+
69
+ result
70
+ end
71
+ end
72
+ end
@@ -63,7 +63,7 @@ module Providers
63
63
  return result if json.nil? || json["result"].nil? || json["result"]["reviews"].nil?
64
64
 
65
65
  json["result"]["reviews"].each do |e|
66
- result.push(Providers::GoogleReviews::Review.new(e))
66
+ result.push(Providers::Google::Review.new(e))
67
67
  end
68
68
 
69
69
  result
@@ -0,0 +1,21 @@
1
+ module Providers
2
+ module GoogleReviews
3
+ class Business
4
+ attr_accessor :name, :address, :reference, :average_rating, :url
5
+
6
+ def self.build_business(node)
7
+ return nil if [node["name"], node["formatted_address"], node["reference"]].include?(nil)
8
+ new(node)
9
+ end
10
+
11
+ private
12
+ def initialize(node)
13
+ @name = node["name"]
14
+ @address = node["formatted_address"]
15
+ @reference = node["reference"]
16
+ @average_rating = node["rating"]
17
+ @url = node["url"]
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,24 @@
1
+ module Providers
2
+ module GoogleReviews
3
+ class Review
4
+ attr_accessor :rating, :author_name, :reviewed_at, :comment
5
+
6
+ def initialize(node)
7
+ @rating = average_rating(node["aspects"])
8
+ @author_name = node["author_name"]
9
+ @reviewed_at = Time.at(node["time"].to_i)
10
+ @comment = node["text"]
11
+ end
12
+
13
+ private
14
+
15
+ def average_rating(arr)
16
+ return 0 if arr.nil? || arr.size < 1
17
+
18
+ sum = 0
19
+ arr.each { |el| sum += el["rating"].to_f }
20
+ sum.to_f / arr.size
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,73 @@
1
+ require 'httparty'
2
+ require 'open-uri'
3
+
4
+ module Providers
5
+ class GoogleReviewsApi
6
+ class ExceededQueryLimitError < StandardError; end
7
+
8
+ def initialize(options)
9
+ @key = options[:key]
10
+ end
11
+
12
+ def find_business_by_name(name, business_type, city_state = "")
13
+ request_url = business_url(name, business_type)
14
+ @json_results = HTTParty.get(request_url)
15
+ parse_business_results(@json_results)
16
+ end
17
+
18
+ def find_reviews_for_business(ref)
19
+ request_url = reviews_url(ref)
20
+ @json_results = HTTParty.get(request_url)
21
+ parse_reviews_results(@json_results)
22
+ end
23
+
24
+ def find_business_by_id(google_id)
25
+ request_url = reviews_url(google_id)
26
+ @json_results = HTTParty.get(request_url)
27
+ return @json_results if @json_results.nil?
28
+
29
+ json = @json_results["result"]
30
+ return json if json.nil?
31
+
32
+ Providers::GoogleReviews::Business.build_business(json)
33
+ end
34
+
35
+ private
36
+
37
+ def query_limit_has_been_reached?
38
+ @json_results["status"] == 'OVER_QUERY_LIMIT'
39
+ end
40
+
41
+ def business_url(business_name, business_type)
42
+ "https://maps.googleapis.com/maps/api/place/textsearch/json?key=#{@key}&query=#{URI::encode(business_name)}=&sensor=false&type=#{URI::encode(business_type)}"
43
+ end
44
+
45
+ def reviews_url(reference)
46
+ "https://maps.googleapis.com/maps/api/place/details/json?key=#{@key}&reference=#{reference}&sensor=false"
47
+ end
48
+
49
+ def parse_business_results(json)
50
+ raise ExceededQueryLimitError if query_limit_has_been_reached?
51
+
52
+ result = []
53
+ return result if json.nil? || json["results"].nil?
54
+
55
+ json["results"].each do |e|
56
+ result.push(Providers::GoogleReviews::Business.build_business(e))
57
+ end
58
+
59
+ result
60
+ end
61
+
62
+ def parse_reviews_results(json)
63
+ result = []
64
+ return result if json.nil? || json["result"].nil? || json["result"]["reviews"].nil?
65
+
66
+ json["result"]["reviews"].each do |e|
67
+ result.push(Providers::GoogleReviews::Review.new(e))
68
+ end
69
+
70
+ result
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,29 @@
1
+ module Providers
2
+ module YelpReviews
3
+ class Business
4
+ attr_accessor :name, :address, :yelp_id, :average_rating, :total_reviews
5
+
6
+ def self.build_business(node)
7
+ return nil if [node["location"], node["rating"], node["id"]].include?(nil)
8
+ new(node)
9
+ end
10
+
11
+ private
12
+
13
+ def initialize(node)
14
+ return if [node,
15
+ node["location"],
16
+ node["location"]["display_address"],
17
+ node["rating"],
18
+ node["review_count"],
19
+ node["id"]].include?(nil)
20
+
21
+ @address = node["location"]["display_address"].join(" ")
22
+ @name = node["name"]
23
+ @average_rating = node["rating"]
24
+ @total_reviews = node["review_count"]
25
+ @yelp_id = node["id"]
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,14 @@
1
+ module Providers
2
+ module YelpReviews
3
+ class Review
4
+ attr_accessor :rating, :author_name, :reviewed_at, :comment
5
+
6
+ def initialize(node)
7
+ @rating = node["rating"]
8
+ @author_name = node["name"]
9
+ @reviewed_at = Time.at(node["time_created"].to_i)
10
+ @comment = node["excerpt"]
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,81 @@
1
+ require 'oauth'
2
+ require 'json'
3
+ require 'open-uri'
4
+
5
+ module Providers
6
+ class YelpReviewsApi
7
+
8
+ def initialize(options)
9
+ @consumer_key = options[:consumer_key]
10
+ @consumer_secret = options[:consumer_secret]
11
+ @token = options[:token]
12
+ @token_secret = options[:token_secret]
13
+ end
14
+
15
+ def find_business_by_name(name, business_type, city_state)
16
+ access_token = create_oauth_token
17
+ response = JSON.parse(access_token.get(business_path(name, business_type, city_state)).body)
18
+ parse_businesses(response["businesses"])
19
+ end
20
+
21
+ def find_reviews_for_business(yelp_id)
22
+ access_token = create_oauth_token
23
+ response = JSON.parse(access_token.get(review_path(yelp_id)).body)
24
+ parse_reviews(response["reviews"])
25
+ end
26
+
27
+ def find_business_by_id(yelp_id)
28
+ access_token = create_oauth_token
29
+ response = JSON.parse(access_token.get(review_path(yelp_id)).body)
30
+ Providers::YelpReviews::Business.build_business(response) if response &&
31
+ response["location"] &&
32
+ response["location"]["display_address"]
33
+
34
+ end
35
+
36
+ private
37
+
38
+ def create_oauth_token
39
+ consumer_key = @consumer_key
40
+ consumer_secret = @consumer_secret
41
+ token = @token
42
+ token_secret = @token_secret
43
+
44
+ consumer = OAuth::Consumer.new(consumer_key, consumer_secret, site: "http://api.yelp.com")
45
+ OAuth::AccessToken.new(consumer, token, token_secret)
46
+ end
47
+
48
+ def business_path(name, business_type, city_state)
49
+ "/v2/search?term=#{URI::encode(name)}&category_filter=#{URI::encode(business_type)}&location=#{URI::encode(city_state)}"
50
+ end
51
+
52
+ def review_path(yelp_id)
53
+ "/v2/business/#{yelp_id}"
54
+ end
55
+
56
+ def parse_businesses(business_list)
57
+ result = []
58
+ return result if business_list.nil? ||
59
+ business_list.empty? ||
60
+ business_list["location"].nil? ||
61
+ business_list["location"]["display_address"].nil?
62
+
63
+ business_list.each do |business|
64
+ result.push(Providers::YelpReviews::Business.build_business(business))
65
+ end
66
+
67
+ result
68
+ end
69
+
70
+ def parse_reviews(review_list)
71
+ result = []
72
+ return result if review_list.nil?
73
+
74
+ review_list.each do |review|
75
+ result.push(Providers::YelpReviews::Review.new(review))
76
+ end
77
+
78
+ result
79
+ end
80
+ end
81
+ end
@@ -1,3 +1,3 @@
1
1
  module UserReviews
2
- VERSION = "0.0.8".freeze
2
+ VERSION = "0.0.9".freeze
3
3
  end
@@ -0,0 +1,7 @@
1
+ #!/bin/bash
2
+
3
+ gem build user_reviews.gemspec
4
+
5
+ latest_gem_file=`ls -r1 *.gem | head -1`
6
+
7
+ curl -F p1="@$latest_gem_file" https://gems.gemfury.com/MF3AiwyUX36qby4yxhkn/
@@ -0,0 +1,31 @@
1
+ require 'spec_helper'
2
+
3
+ describe Providers::CitysearchReviews::Business do
4
+ describe "#initialize" do
5
+ let(:address) { {"street" => '', "city" => '', "state" => '', "postal_code" => '' } }
6
+ let(:node) do
7
+ {
8
+ "name" => '',
9
+ "address" => address,
10
+ "id" => stub,
11
+ "rating" => stub,
12
+ "review_info" => {}
13
+ }
14
+ end
15
+
16
+ context "when required fields are not present" do
17
+ let(:node) { Hash.new(nil) }
18
+ it "returns nil" do
19
+ biz = Providers::CitysearchReviews::Business.build_business(node)
20
+ biz.should be_nil
21
+ end
22
+ end
23
+
24
+ context "when required fields are present" do
25
+ it "returns an Bussiness object" do
26
+ Providers::CitysearchReviews::Business.build_business(node).should be
27
+ end
28
+ end
29
+
30
+ end
31
+ end
@@ -0,0 +1,44 @@
1
+ require 'spec_helper'
2
+
3
+ describe Providers::CitysearchReviewsApi do
4
+ before do
5
+ end
6
+
7
+ describe "#initialize" do
8
+ it "initializes a new CitySearch provider" do
9
+ Providers::CitysearchReviewsApi.new(publisher_key: "").should be
10
+ end
11
+ end
12
+
13
+ describe "#find_business_by_name" do
14
+ let(:json_result) { { "address" => {} } }
15
+ let(:business_url) { "http://www.example.com" }
16
+ let(:citysearch_wrapper) { Providers::CitysearchReviewsApi.new(key: "") }
17
+ let(:query_result) { [Providers::CitysearchReviews::Business.build_business(json_result)] }
18
+
19
+ it "returns an array of possible businesses" do
20
+ citysearch_wrapper.should_receive(:business_search_url).with("Unpakt", "moving company", "NY,NY") { business_url }
21
+ HTTParty.should_receive(:get).with(business_url) { json_result }
22
+ citysearch_wrapper.should_receive(:parse_business_results).with(json_result) { query_result }
23
+
24
+ citysearch_wrapper.find_business_by_name("Unpakt", "moving company", "NY,NY").should eq query_result
25
+ end
26
+ end
27
+
28
+
29
+ describe "#find_reviews_for_business" do
30
+ let(:citysearch_id) { stub }
31
+ let(:json_result) { {"review_date" => "2007-03-07T21:53:41.000Z"} }
32
+ let(:reviews_url) { "http://www.example.com" }
33
+ let(:citysearch_wrapper) { Providers::CitysearchReviewsApi.new(key: "") }
34
+ let(:query_result) { [Providers::CitysearchReviews::Review.new(json_result)] }
35
+
36
+ it "returns the rating for a given entity" do
37
+ citysearch_wrapper.should_receive(:reviews_url).with(citysearch_id) { reviews_url }
38
+ HTTParty.should_receive(:get).with(reviews_url) { json_result }
39
+ citysearch_wrapper.should_receive(:parse_reviews_results).with(json_result) { query_result }
40
+
41
+ citysearch_wrapper.find_reviews_for_business(citysearch_id).should eq query_result
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,30 @@
1
+ require 'spec_helper'
2
+
3
+ describe Providers::GoogleReviews::Business do
4
+ describe "#initialize" do
5
+ let(:node) do
6
+ {
7
+ "name" => '',
8
+ "formatted_address" => '',
9
+ "reference" => stub,
10
+ "url" => stub,
11
+ "rating" => stub
12
+ }
13
+ end
14
+
15
+ context "when required fields are not present" do
16
+ let(:node) { Hash.new(nil) }
17
+ it "returns nil" do
18
+ biz = Providers::GoogleReviews::Business.build_business(node)
19
+ biz.should be_nil
20
+ end
21
+ end
22
+
23
+ context "when required fields are present" do
24
+ it "returns an Bussiness object" do
25
+ Providers::GoogleReviews::Business.build_business(node).should be
26
+ end
27
+ end
28
+
29
+ end
30
+ end
@@ -0,0 +1,56 @@
1
+ require 'spec_helper'
2
+
3
+ describe Providers::GoogleReviewsApi do
4
+ before do
5
+ end
6
+
7
+ describe "#initialize" do
8
+ it "initializes a new GoogleReviews provider" do
9
+ Providers::GoogleReviewsApi.new(key: "").should be
10
+ end
11
+ end
12
+
13
+ describe "#find_business_by_name" do
14
+ let(:json_result) { "{}" }
15
+ let(:business_url) { "http://www.example.com" }
16
+ let(:google_wrapper) { Providers::GoogleReviewsApi.new(key: "") }
17
+ let(:query_result) { [Providers::GoogleReviews::Business.build_business(json_result)] }
18
+
19
+ context "when the api is valid" do
20
+ it "returns an array of possible businesses" do
21
+ google_wrapper.should_receive(:business_url).with("Unpakt", "moving_company") { business_url }
22
+ HTTParty.should_receive(:get).with(business_url) { json_result }
23
+ google_wrapper.should_receive(:parse_business_results).with(json_result) { query_result }
24
+
25
+ google_wrapper.find_business_by_name("Unpakt", "moving_company").should eq query_result
26
+ end
27
+ end
28
+
29
+ context "when the api query limit is reached" do
30
+ let(:json_result) { {'status' => 'OVER_QUERY_LIMIT'} }
31
+
32
+ it "raises an error" do
33
+ google_wrapper.should_receive(:business_url).with("Unpakt", "moving_company") { business_url }
34
+ HTTParty.should_receive(:get).with(business_url) { json_result }
35
+ lambda { google_wrapper.find_business_by_name("Unpakt", "moving_company") }.should raise_error Providers::GoogleReviewsApi::ExceededQueryLimitError
36
+ end
37
+ end
38
+ end
39
+
40
+ describe "#find_reviews_for_business" do
41
+ let(:reference) { stub }
42
+ let(:json_result) { "{}" }
43
+ let(:reviews_url) { "http://www.example.com" }
44
+ let(:google_wrapper) { Providers::GoogleReviewsApi.new(key: "") }
45
+ let(:query_result) { [Providers::GoogleReviews::Review.new(json_result)] }
46
+
47
+ it "returns the rating for a given entity" do
48
+ google_wrapper.should_receive(:reviews_url).with(reference) { reviews_url }
49
+ HTTParty.should_receive(:get).with(reviews_url) { json_result }
50
+ google_wrapper.should_receive(:parse_reviews_results).with(json_result) { query_result }
51
+
52
+ google_wrapper.find_reviews_for_business(reference).should eq query_result
53
+ end
54
+ end
55
+
56
+ end
@@ -0,0 +1,28 @@
1
+ require 'spec_helper'
2
+
3
+ describe Providers::YelpReviews::Business do
4
+ describe "#initialize" do
5
+ let(:node) do
6
+ {
7
+ "location" => '',
8
+ "rating" => '',
9
+ "id" => stub,
10
+ }
11
+ end
12
+
13
+ context "when required fields are not present" do
14
+ let(:node) { Hash.new(nil) }
15
+ it "returns nil" do
16
+ biz = Providers::YelpReviews::Business.build_business(node)
17
+ biz.should be_nil
18
+ end
19
+ end
20
+
21
+ context "when required fields are present" do
22
+ it "returns an Bussiness object" do
23
+ Providers::YelpReviews::Business.build_business(node).should be
24
+ end
25
+ end
26
+
27
+ end
28
+ end
@@ -0,0 +1,68 @@
1
+ require 'spec_helper'
2
+
3
+ describe Providers::YelpReviewsApi do
4
+ before do
5
+ end
6
+
7
+ describe "#initialize" do
8
+ it "initializes a new GoogleReviews provider" do
9
+ Providers::YelpReviewsApi.new(consumer_key: "",
10
+ consumer_secret: "",
11
+ token: "",
12
+ token_secret: "").should be
13
+ end
14
+ end
15
+
16
+ describe "#find_business_by_name" do
17
+ let(:token) { stub }
18
+ let(:api_result) { stub }
19
+ let(:response_body) { stub }
20
+ let(:business_path) { "super_path" }
21
+ let(:business_place) do
22
+ {"location" => {"display_address" => ["1 Place", "NY"]}}
23
+ end
24
+ let(:json_result) {{"businesses" => business_places }}
25
+ let(:business_places) { [business_place] }
26
+ let(:yelp_wrapper) { Providers::YelpReviewsApi.new({}) }
27
+ let(:query_result) { [Providers::YelpReviews::Business.build_business(business_place)] }
28
+
29
+ it "returns an array of possible businesses" do
30
+ yelp_wrapper.should_receive(:create_oauth_token) { token }
31
+ yelp_wrapper.should_receive(:business_path).with("Unpakt", "movers", "NY,NY") { business_path }
32
+ token.should_receive(:get).with(business_path) { api_result }
33
+ api_result.should_receive(:body) { response_body }
34
+
35
+
36
+ JSON.should_receive(:parse).with(response_body) { json_result }
37
+ yelp_wrapper.should_receive(:parse_businesses).with(business_places) { query_result }
38
+
39
+ yelp_wrapper.find_business_by_name("Unpakt", "movers", "NY,NY").should eq query_result
40
+ end
41
+ end
42
+
43
+
44
+ describe "#find_reviews_for_business" do
45
+ let(:token) { stub }
46
+ let(:api_result) { stub }
47
+ let(:response_body) { stub }
48
+ let(:review_path) { "super_path" }
49
+ let(:review) {{"rating" => 1}}
50
+ let(:reviews) { [review] }
51
+ let(:json_result) {{"reviews" => reviews }}
52
+ let(:yelp_wrapper) { Providers::YelpReviewsApi.new({}) }
53
+ let(:query_result) { [Providers::YelpReviews::Review.new(review)] }
54
+
55
+ it "returns an array of possible businesses" do
56
+ yelp_wrapper.should_receive(:create_oauth_token) { token }
57
+ yelp_wrapper.should_receive(:review_path).with("yelp-Unpakt") { review_path }
58
+ token.should_receive(:get).with(review_path) { api_result }
59
+ api_result.should_receive(:body) { response_body }
60
+
61
+
62
+ JSON.should_receive(:parse).with(response_body) { json_result }
63
+ yelp_wrapper.should_receive(:parse_reviews).with(reviews) { query_result }
64
+
65
+ yelp_wrapper.find_reviews_for_business("yelp-Unpakt").should eq query_result
66
+ end
67
+ end
68
+ end
Binary file
Binary file
Binary file
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: user_reviews
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-03-19 00:00:00.000000000 Z
12
+ date: 2013-07-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -99,6 +99,7 @@ extensions: []
99
99
  extra_rdoc_files: []
100
100
  files:
101
101
  - .gitignore
102
+ - .pairs
102
103
  - .rspec
103
104
  - Gemfile
104
105
  - Gemfile.lock
@@ -109,22 +110,42 @@ files:
109
110
  - lib/providers/citysearch/api.rb
110
111
  - lib/providers/citysearch/business.rb
111
112
  - lib/providers/citysearch/review.rb
113
+ - lib/providers/citysearch_reviews/business.rb
114
+ - lib/providers/citysearch_reviews/review.rb
115
+ - lib/providers/citysearch_reviews_api.rb
112
116
  - lib/providers/google/api.rb
113
117
  - lib/providers/google/business.rb
114
118
  - lib/providers/google/review.rb
119
+ - lib/providers/google_reviews/business.rb
120
+ - lib/providers/google_reviews/review.rb
121
+ - lib/providers/google_reviews_api.rb
115
122
  - lib/providers/yelp/api.rb
116
123
  - lib/providers/yelp/business.rb
117
124
  - lib/providers/yelp/review.rb
125
+ - lib/providers/yelp_reviews/business.rb
126
+ - lib/providers/yelp_reviews/review.rb
127
+ - lib/providers/yelp_reviews_api.rb
118
128
  - lib/user_reviews.rb
119
129
  - lib/user_reviews/version.rb
130
+ - scripts/uploadgem.sh
120
131
  - spec/providers/citysearch/api_spec.rb
121
132
  - spec/providers/citysearch/business_spec.rb
133
+ - spec/providers/citysearch_reviews/business_spec.rb
134
+ - spec/providers/citysearch_reviews_api_spec.rb
122
135
  - spec/providers/google/api_spec.rb
123
136
  - spec/providers/google/business_spec.rb
137
+ - spec/providers/google_reviews/business_spec.rb
138
+ - spec/providers/google_reviews_api_spec.rb
124
139
  - spec/providers/yelp/api_spec.rb
125
140
  - spec/providers/yelp/business_spec.rb
141
+ - spec/providers/yelp_reviews/business_spec.rb
142
+ - spec/providers/yelp_reviews_api_spec.rb
126
143
  - spec/spec_helper.rb
127
144
  - spec/user_reviews_spec.rb
145
+ - user_reviews-0.0.1.gem
146
+ - user_reviews-0.0.2.gem
147
+ - user_reviews-0.0.3.gem
148
+ - user_reviews-0.0.4.gem
128
149
  - user_reviews.gemspec
129
150
  homepage: http://www.unpakt.com
130
151
  licenses: []
@@ -138,30 +159,30 @@ required_ruby_version: !ruby/object:Gem::Requirement
138
159
  - - ! '>='
139
160
  - !ruby/object:Gem::Version
140
161
  version: '0'
141
- segments:
142
- - 0
143
- hash: 3212237321803513
144
162
  required_rubygems_version: !ruby/object:Gem::Requirement
145
163
  none: false
146
164
  requirements:
147
165
  - - ! '>='
148
166
  - !ruby/object:Gem::Version
149
167
  version: '0'
150
- segments:
151
- - 0
152
- hash: 3212237321803513
153
168
  requirements: []
154
169
  rubyforge_project:
155
- rubygems_version: 1.8.25
170
+ rubygems_version: 1.8.24
156
171
  signing_key:
157
172
  specification_version: 3
158
173
  summary: Wrapper for mulitple user review APIs
159
174
  test_files:
160
175
  - spec/providers/citysearch/api_spec.rb
161
176
  - spec/providers/citysearch/business_spec.rb
177
+ - spec/providers/citysearch_reviews/business_spec.rb
178
+ - spec/providers/citysearch_reviews_api_spec.rb
162
179
  - spec/providers/google/api_spec.rb
163
180
  - spec/providers/google/business_spec.rb
181
+ - spec/providers/google_reviews/business_spec.rb
182
+ - spec/providers/google_reviews_api_spec.rb
164
183
  - spec/providers/yelp/api_spec.rb
165
184
  - spec/providers/yelp/business_spec.rb
185
+ - spec/providers/yelp_reviews/business_spec.rb
186
+ - spec/providers/yelp_reviews_api_spec.rb
166
187
  - spec/spec_helper.rb
167
188
  - spec/user_reviews_spec.rb