hotels_pro 0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +7 -0
  5. data/Gemfile +4 -0
  6. data/LICENSE +22 -0
  7. data/README.md +91 -0
  8. data/Rakefile +2 -0
  9. data/hotels_pro.gemspec +24 -0
  10. data/lib/hotels_pro.rb +69 -0
  11. data/lib/hotels_pro/api/api_method.rb +29 -0
  12. data/lib/hotels_pro/api/api_params.rb +29 -0
  13. data/lib/hotels_pro/api/elements/book_info.rb +27 -0
  14. data/lib/hotels_pro/api/elements/daily_rate.rb +12 -0
  15. data/lib/hotels_pro/api/elements/filter.rb +13 -0
  16. data/lib/hotels_pro/api/elements/hotel.rb +22 -0
  17. data/lib/hotels_pro/api/elements/lead_traveller.rb +15 -0
  18. data/lib/hotels_pro/api/elements/pax.rb +16 -0
  19. data/lib/hotels_pro/api/elements/pax_array.rb +17 -0
  20. data/lib/hotels_pro/api/elements/policy.rb +15 -0
  21. data/lib/hotels_pro/api/elements/room_response.rb +16 -0
  22. data/lib/hotels_pro/api/methods/allocate_hotel_code.rb +21 -0
  23. data/lib/hotels_pro/api/methods/amend_hotel_booking.rb +27 -0
  24. data/lib/hotels_pro/api/methods/cancel_hotel_booking.rb +20 -0
  25. data/lib/hotels_pro/api/methods/get_available_hotel.rb +28 -0
  26. data/lib/hotels_pro/api/methods/get_balance.rb +18 -0
  27. data/lib/hotels_pro/api/methods/get_hotel_booking_status.rb +21 -0
  28. data/lib/hotels_pro/api/methods/get_hotel_cancellation_policy.rb +19 -0
  29. data/lib/hotels_pro/api/methods/make_hotel_booking.rb +24 -0
  30. data/lib/hotels_pro/configuration.rb +14 -0
  31. data/lib/hotels_pro/query.rb +34 -0
  32. data/lib/hotels_pro/request.rb +43 -0
  33. data/lib/hotels_pro/response.rb +33 -0
  34. data/lib/hotels_pro/stubs.rb +66 -0
  35. data/lib/hotels_pro/stubs/stub.rb +23 -0
  36. data/lib/hotels_pro/underscorer.rb +21 -0
  37. data/lib/hotels_pro/version.rb +3 -0
  38. data/spec/api_params_helper.rb +8 -0
  39. data/spec/fixtures/allocate_hotel_code.json +1 -0
  40. data/spec/fixtures/amend_hotel_booking.json +1 -0
  41. data/spec/fixtures/cancel_hotel_booking.json +1 -0
  42. data/spec/fixtures/get_available_hotel.json +1 -0
  43. data/spec/fixtures/get_balance.json +1 -0
  44. data/spec/fixtures/get_hotel_booking_status.json +1 -0
  45. data/spec/fixtures/get_hotel_cancellation_policy.json +1 -0
  46. data/spec/fixtures/make_hotel_booking.json +1 -0
  47. data/spec/hotels_pro/api/.gitkeep +0 -0
  48. data/spec/hotels_pro/api/api_method_spec.rb +14 -0
  49. data/spec/hotels_pro/api/api_params_spec.rb +36 -0
  50. data/spec/hotels_pro/api/elements/pax_array_spec.rb +14 -0
  51. data/spec/hotels_pro/api/methods/allocate_hotel_code_spec.rb +34 -0
  52. data/spec/hotels_pro/api/methods/amend_hotel_booking_spec.rb +79 -0
  53. data/spec/hotels_pro/api/methods/cancel_hotel_booking_spec.rb +32 -0
  54. data/spec/hotels_pro/api/methods/get_available_hotel_spec.rb +83 -0
  55. data/spec/hotels_pro/api/methods/get_balance_spec.rb +26 -0
  56. data/spec/hotels_pro/api/methods/get_hotel_booking_status_spec.rb +31 -0
  57. data/spec/hotels_pro/api/methods/get_hotel_cancellation_policy_spec.rb +31 -0
  58. data/spec/hotels_pro/api/methods/make_hotel_booking_spec.rb +66 -0
  59. data/spec/hotels_pro/query_spec.rb +52 -0
  60. data/spec/hotels_pro/request_spec.rb +73 -0
  61. data/spec/hotels_pro/response_spec.rb +24 -0
  62. data/spec/hotels_pro/stubs/stub_spec.rb +41 -0
  63. data/spec/hotels_pro/stubs_spec.rb +37 -0
  64. data/spec/hotels_pro/underscorer_spec.rb +33 -0
  65. data/spec/request_helper.rb +6 -0
  66. data/spec/spec_helper.rb +15 -0
  67. metadata +222 -0
@@ -0,0 +1,66 @@
1
+ require 'spec_helper'
2
+
3
+ describe HotelsPro::Api::Methods::MakeHotelBooking do
4
+ include RequestHelper
5
+
6
+ it "should build correct api params hash" do
7
+ method = HotelsPro::Api::Methods::MakeHotelBooking.new(
8
+ :process_id => "HF-56017745",
9
+ :agency_reference_number => "999",
10
+ :lead_traveller_info => HotelsPro::Api::Elements::LeadTraveller.new(
11
+ :pax_info => HotelsPro::Api::Elements::Pax.new(:pax_type => "Adult", :title => "Mr", :first_name => "John", :last_name => "Doe"),
12
+ :nationality => "US"
13
+ ),
14
+ :other_traveller_info => [
15
+ HotelsPro::Api::Elements::Pax.new(:pax_type => "Adult", :age => 30, :title => "Mrs", :first_name => "Amanda", :last_name => "Doe")
16
+ ],
17
+ :preferences => "nonSmoking",
18
+ :note => "I like french fries"
19
+ )
20
+
21
+ method.to_api_params.should == {
22
+ "processId" => "HF-56017745",
23
+ "agencyReferenceNumber" => "999",
24
+ "leadTravellerInfo" => {
25
+ "paxInfo" => {
26
+ "paxType" => "Adult",
27
+ "title" => "Mr",
28
+ "firstName" => "John",
29
+ "lastName" => "Doe"
30
+ },
31
+ "nationality" => "US"
32
+ },
33
+ "otherTravellerInfo" => [
34
+ { "paxType" => "Adult", "age" => "30", "title" => "Mrs", "firstName" => "Amanda", "lastName" => "Doe" }
35
+ ],
36
+ "preferences" => "nonSmoking",
37
+ "note" => "I like french fries"
38
+ }
39
+ end
40
+
41
+ it "should return result when performed" do
42
+ HotelsPro::Stubs.make_hotel_booking.response(fixture('make_hotel_booking'))
43
+
44
+ method = HotelsPro::Api::Methods::MakeHotelBooking.new(
45
+ :process_id => "HF-56017745",
46
+ :agency_reference_number => "999",
47
+ :lead_traveller_info => HotelsPro::Api::Elements::LeadTraveller.new(
48
+ :pax_info => HotelsPro::Api::Elements::Pax.new(:pax_type => "Adult", :title => "Mr", :first_name => "John", :last_name => "Doe"),
49
+ :nationality => "US"
50
+ ),
51
+ :other_traveller_info => [
52
+ HotelsPro::Api::Elements::Pax.new(:pax_type => "Adult", :age => 30, :title => "Mrs", :first_name => "Amanda", :last_name => "Doe")
53
+ ],
54
+ :preferences => "nonSmoking",
55
+ :note => "I like french fries"
56
+ )
57
+
58
+ result = method.perform
59
+
60
+ result.should be_instance_of HotelsPro::Api::Methods::MakeHotelBooking::Result
61
+ result.response_id.should == 5756635
62
+ result.tracking_id.should == "XI-HE-70838364"
63
+ result.hotel_booking_info.should be_instance_of HotelsPro::Api::Elements::BookInfo
64
+ result.hotel_booking_info.hotel_code.should == "US2HZR"
65
+ end
66
+ end
@@ -0,0 +1,52 @@
1
+ require 'spec_helper'
2
+
3
+ describe HotelsPro::Query do
4
+ it "should encode hash" do
5
+ params = { "a" => "1", "b" => "2" }
6
+
7
+ query = HotelsPro::Query.new(params)
8
+ query.to_s.should include("a=1")
9
+ query.to_s.should include("b=2")
10
+ end
11
+
12
+ it "should encode hashes of hashes" do
13
+ params = { "a" => { "b" => "2", "c" => "3" } }
14
+
15
+ query = HotelsPro::Query.new(params)
16
+ query.to_s.should include("a[b]=2")
17
+ query.to_s.should include("a[c]=3")
18
+ end
19
+
20
+ it "should encode hashes of arrays" do
21
+ params = { "a" => ["2", "3"] }
22
+
23
+ query = HotelsPro::Query.new(params)
24
+ query.to_s.should include("a[0]=2")
25
+ query.to_s.should include("a[1]=3")
26
+ end
27
+
28
+ it "should encode hashes of arrays of hashes" do
29
+ params = { "a" => [{ "b" => "2" }, { "c" => "3" }] }
30
+
31
+ query = HotelsPro::Query.new(params)
32
+ query.to_s.should include("a[0][b]=2")
33
+ query.to_s.should include("a[1][c]=3")
34
+ end
35
+
36
+ it "should encode hashes of arrays of arrays of hashes" do
37
+ params = { "a" => [[{ "b" => "2" }, { "c" => "3" }], [{ "d" => "4" }, { "e" => "5" }]] }
38
+
39
+ query = HotelsPro::Query.new(params)
40
+ query.to_s.should include("a[0][0][b]=2")
41
+ query.to_s.should include("a[0][1][c]=3")
42
+ query.to_s.should include("a[1][0][d]=4")
43
+ query.to_s.should include("a[1][1][e]=5")
44
+ end
45
+
46
+ it "should escape values" do
47
+ params = { "a" => "foo bar" }
48
+
49
+ query = HotelsPro::Query.new(params)
50
+ query.to_s.should == "?a=foo%20bar"
51
+ end
52
+ end
@@ -0,0 +1,73 @@
1
+ require 'spec_helper'
2
+
3
+ describe HotelsPro::Request do
4
+ include RequestHelper
5
+
6
+ before(:each) do
7
+ @request = HotelsPro::Request.new("getAvailableHotel", :param1 => "value1", :param2 => "value2")
8
+ end
9
+
10
+ it "should be defined with params hash" do
11
+ @request.params.should == { :param1 => "value1", :param2 => "value2" }
12
+ end
13
+
14
+ it "should build query from params, api method and api key" do
15
+ query = @request.query
16
+
17
+ query.should =~ /param1=value1/
18
+ query.should =~ /param2=value2/
19
+ query.should =~ /method=getAvailableHotel/
20
+ query.should =~ /apiKey=123/
21
+ end
22
+
23
+ it "should build uri from api url and query" do
24
+ @request.uri.should == "#{HotelsPro.configuration.api_url}#{@request.query}"
25
+ end
26
+
27
+ it "should return response" do
28
+ HotelsPro::Stubs.get_available_hotel.response(fixture("get_available_hotel"))
29
+
30
+ response = @request.perform
31
+ response.should be_an_instance_of HotelsPro::Response
32
+ end
33
+
34
+ context "when only_stubs is true" do
35
+ before do
36
+ @only_stubs = HotelsPro.configuration.only_stubs
37
+ HotelsPro.configure do |config|
38
+ config.only_stubs = true
39
+ end
40
+ end
41
+
42
+ after do
43
+ HotelsPro.configure do |config|
44
+ config.only_stubs = @only_stubs
45
+ end
46
+ end
47
+
48
+ it "should raise exception when performing unstubbed request" do
49
+ lambda{ @request.perform }.should raise_exception(HotelsPro::UnstubbedRequest)
50
+ end
51
+ end
52
+
53
+ context "when only_stubs is false" do
54
+ before do
55
+ @only_stubs = HotelsPro.configuration.only_stubs
56
+ HotelsPro.configure do |config|
57
+ config.only_stubs = false
58
+ end
59
+ end
60
+
61
+ after do
62
+ HotelsPro.configure do |config|
63
+ config.only_stubs = @only_stubs
64
+ end
65
+ end
66
+
67
+ it "should not raise exception when performing unstubbed request" do
68
+ # Stub it with Typhoeus
69
+ Typhoeus::Hydra.hydra.stub(:get, @request.uri).and_return(Typhoeus::Response.new(:status => 200, :body => "''", :headers => '', :time => 0.1))
70
+ lambda{ @request.perform }.should_not raise_exception
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,24 @@
1
+ require 'spec_helper'
2
+
3
+ describe HotelsPro::Response do
4
+ it "should detect response errors" do
5
+ response = HotelsPro::Response.new('[0, "error message"]')
6
+ response.error?.should be_true
7
+ response.error.should be_instance_of(HotelsPro::ErrorResponse)
8
+ response.error.message.should == "error message"
9
+ end
10
+
11
+ it "should detect JSON parsing errors" do
12
+ response = HotelsPro::Response.new('non-json')
13
+ response.error?.should be_true
14
+ response.error.should be_instance_of(HotelsPro::RemoteError)
15
+ response.error.message.should == "Remote API down."
16
+ end
17
+
18
+ it "should parse and underscore json response" do
19
+ response = HotelsPro::Response.new('{"paramOne": "value1"}')
20
+ response.error?.should be_false
21
+ response.error.should be_nil
22
+ response.data.should == { "param_one" => "value1" }
23
+ end
24
+ end
@@ -0,0 +1,41 @@
1
+ require 'spec_helper'
2
+
3
+ describe HotelsPro::Stubs::Stub do
4
+ it "should set response and return self (be chainable)" do
5
+ matcher = lambda { |request| true }
6
+ the_stub = HotelsPro::Stubs::Stub.new("foo", matcher)
7
+ the_stub.response("bar").should == the_stub
8
+ the_stub.response.should == "bar"
9
+ end
10
+
11
+ it "should not match request with different api method" do
12
+ matcher = lambda { |request| true }
13
+ the_stub = HotelsPro::Stubs::Stub.new("foo", matcher).response("response")
14
+ request = stub(:api_method => "bar")
15
+
16
+ the_stub.matches?(request).should be_false
17
+ end
18
+
19
+ it "should not match request if matcher evaluates to false" do
20
+ matcher = lambda { |request| false }
21
+ the_stub = HotelsPro::Stubs::Stub.new("foo", matcher).response("response")
22
+ request = stub(:api_method => "foo")
23
+
24
+ the_stub.matches?(request).should be_false
25
+ end
26
+
27
+ it "should match request when api method is correct and matcher evaluates to true" do
28
+ matcher = lambda { |request| true }
29
+ the_stub = HotelsPro::Stubs::Stub.new("foo", matcher).response("response")
30
+ request = stub(:api_method => "foo")
31
+
32
+ the_stub.matches?(request).should be_true
33
+ end
34
+
35
+ it "should match request when api method is correct and matcher is not set" do
36
+ the_stub = HotelsPro::Stubs::Stub.new("foo").response("response")
37
+ request = stub(:api_method => "foo")
38
+
39
+ the_stub.matches?(request).should be_true
40
+ end
41
+ end
@@ -0,0 +1,37 @@
1
+ require 'spec_helper'
2
+
3
+ describe HotelsPro::Stubs do
4
+ before do
5
+ HotelsPro::Stubs.clear
6
+ end
7
+
8
+ it "should add a stub" do
9
+ matcher = lambda { |request| true }
10
+ HotelsPro::Stubs.get_available_hotel(matcher).response("response")
11
+
12
+ HotelsPro::Stubs.stubs.size.should == 1
13
+ end
14
+
15
+ context "with stub added" do
16
+ before do
17
+ matcher = lambda { |request| request.foo == "bar" }
18
+ HotelsPro::Stubs.get_available_hotel(matcher).response("response")
19
+ HotelsPro::Stubs.stubs.size.should == 1
20
+ end
21
+
22
+ it "should clear stubs" do
23
+ HotelsPro::Stubs.clear
24
+ HotelsPro::Stubs.stubs.size.should == 0
25
+ end
26
+
27
+ it "should return response when request matches a stub" do
28
+ request = stub(:api_method => 'getAvailableHotel', :foo => "bar")
29
+ HotelsPro::Stubs.match(request).should == "response"
30
+ end
31
+
32
+ it "should return nil when request does not match a stub" do
33
+ request = stub(:api_method => 'getAvailableHotel', :foo => "baz")
34
+ HotelsPro::Stubs.match(request).should be_nil
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,33 @@
1
+ require 'spec_helper'
2
+
3
+ describe HotelsPro::Underscorer do
4
+ before do
5
+ @u = Object.new
6
+ @u.extend HotelsPro::Underscorer
7
+ end
8
+
9
+ it "should underscore hash keys" do
10
+ underscored = @u.underscore("paramOne" => "value1", "paramTwo" => "value2")
11
+ underscored.should == { "param_one" => "value1", "param_two" => "value2" }
12
+ end
13
+
14
+ it "should underscore nested hash's keys" do
15
+ underscored = @u.underscore("a" => { "paramTwo" => "value2" })
16
+ underscored.should == { "a" => { "param_two" => "value2" } }
17
+ end
18
+
19
+ it "should underscore keys of hashes found in arrays" do
20
+ underscored = @u.underscore( [{ "paramOne" => "value1" }, { "paramTwo" => "value2" }])
21
+ underscored.should == [{ "param_one" => "value1" }, { "param_two" => "value2" }]
22
+ end
23
+
24
+ it "should underscore keys of hashes found in nested arrays" do
25
+ underscored = @u.underscore( "a" => [{ "paramOne" => "value1" }, { "paramTwo" => "value2" }])
26
+ underscored.should == { "a" => [{ "param_one" => "value1" }, { "param_two" => "value2" }]}
27
+ end
28
+
29
+ it "should not fail on non-hashes or non-arrays" do
30
+ underscored = @u.underscore("foo")
31
+ underscored.should == "foo"
32
+ end
33
+ end
@@ -0,0 +1,6 @@
1
+ module RequestHelper
2
+ def fixture(filename)
3
+ fixture_file = File.expand_path(File.join(File.dirname(__FILE__), "fixtures", "#{filename}.json"))
4
+ File.read(fixture_file)
5
+ end
6
+ end
@@ -0,0 +1,15 @@
1
+ require 'rubygems'
2
+ require 'bundler/setup'
3
+ require 'hotels_pro'
4
+
5
+ require 'api_params_helper'
6
+ require 'request_helper'
7
+
8
+ HotelsPro.configure do |config|
9
+ config.api_key = "123"
10
+ config.only_stubs = true
11
+ end
12
+
13
+ RSpec.configure do |config|
14
+ config.before(:each) { HotelsPro::Stubs.clear }
15
+ end
metadata ADDED
@@ -0,0 +1,222 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: hotels_pro
3
+ version: !ruby/object:Gem::Version
4
+ version: '0.2'
5
+ platform: ruby
6
+ authors:
7
+ - Michał Szajbe
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-10-17 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: activesupport
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: json
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: typhoeus
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: virtus
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: ZenTest
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ description: HotelsPro API wrapper
98
+ email:
99
+ - michal.szajbe@gmail.com
100
+ executables: []
101
+ extensions: []
102
+ extra_rdoc_files: []
103
+ files:
104
+ - .gitignore
105
+ - .rspec
106
+ - .travis.yml
107
+ - Gemfile
108
+ - LICENSE
109
+ - README.md
110
+ - Rakefile
111
+ - hotels_pro.gemspec
112
+ - lib/hotels_pro.rb
113
+ - lib/hotels_pro/api/api_method.rb
114
+ - lib/hotels_pro/api/api_params.rb
115
+ - lib/hotels_pro/api/elements/book_info.rb
116
+ - lib/hotels_pro/api/elements/daily_rate.rb
117
+ - lib/hotels_pro/api/elements/filter.rb
118
+ - lib/hotels_pro/api/elements/hotel.rb
119
+ - lib/hotels_pro/api/elements/lead_traveller.rb
120
+ - lib/hotels_pro/api/elements/pax.rb
121
+ - lib/hotels_pro/api/elements/pax_array.rb
122
+ - lib/hotels_pro/api/elements/policy.rb
123
+ - lib/hotels_pro/api/elements/room_response.rb
124
+ - lib/hotels_pro/api/methods/allocate_hotel_code.rb
125
+ - lib/hotels_pro/api/methods/amend_hotel_booking.rb
126
+ - lib/hotels_pro/api/methods/cancel_hotel_booking.rb
127
+ - lib/hotels_pro/api/methods/get_available_hotel.rb
128
+ - lib/hotels_pro/api/methods/get_balance.rb
129
+ - lib/hotels_pro/api/methods/get_hotel_booking_status.rb
130
+ - lib/hotels_pro/api/methods/get_hotel_cancellation_policy.rb
131
+ - lib/hotels_pro/api/methods/make_hotel_booking.rb
132
+ - lib/hotels_pro/configuration.rb
133
+ - lib/hotels_pro/query.rb
134
+ - lib/hotels_pro/request.rb
135
+ - lib/hotels_pro/response.rb
136
+ - lib/hotels_pro/stubs.rb
137
+ - lib/hotels_pro/stubs/stub.rb
138
+ - lib/hotels_pro/underscorer.rb
139
+ - lib/hotels_pro/version.rb
140
+ - spec/api_params_helper.rb
141
+ - spec/fixtures/allocate_hotel_code.json
142
+ - spec/fixtures/amend_hotel_booking.json
143
+ - spec/fixtures/cancel_hotel_booking.json
144
+ - spec/fixtures/get_available_hotel.json
145
+ - spec/fixtures/get_balance.json
146
+ - spec/fixtures/get_hotel_booking_status.json
147
+ - spec/fixtures/get_hotel_cancellation_policy.json
148
+ - spec/fixtures/make_hotel_booking.json
149
+ - spec/hotels_pro/api/.gitkeep
150
+ - spec/hotels_pro/api/api_method_spec.rb
151
+ - spec/hotels_pro/api/api_params_spec.rb
152
+ - spec/hotels_pro/api/elements/pax_array_spec.rb
153
+ - spec/hotels_pro/api/methods/allocate_hotel_code_spec.rb
154
+ - spec/hotels_pro/api/methods/amend_hotel_booking_spec.rb
155
+ - spec/hotels_pro/api/methods/cancel_hotel_booking_spec.rb
156
+ - spec/hotels_pro/api/methods/get_available_hotel_spec.rb
157
+ - spec/hotels_pro/api/methods/get_balance_spec.rb
158
+ - spec/hotels_pro/api/methods/get_hotel_booking_status_spec.rb
159
+ - spec/hotels_pro/api/methods/get_hotel_cancellation_policy_spec.rb
160
+ - spec/hotels_pro/api/methods/make_hotel_booking_spec.rb
161
+ - spec/hotels_pro/query_spec.rb
162
+ - spec/hotels_pro/request_spec.rb
163
+ - spec/hotels_pro/response_spec.rb
164
+ - spec/hotels_pro/stubs/stub_spec.rb
165
+ - spec/hotels_pro/stubs_spec.rb
166
+ - spec/hotels_pro/underscorer_spec.rb
167
+ - spec/request_helper.rb
168
+ - spec/spec_helper.rb
169
+ homepage: ''
170
+ licenses: []
171
+ metadata: {}
172
+ post_install_message:
173
+ rdoc_options: []
174
+ require_paths:
175
+ - lib
176
+ required_ruby_version: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - '>='
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
181
+ required_rubygems_version: !ruby/object:Gem::Requirement
182
+ requirements:
183
+ - - '>='
184
+ - !ruby/object:Gem::Version
185
+ version: '0'
186
+ requirements: []
187
+ rubyforge_project:
188
+ rubygems_version: 2.0.0
189
+ signing_key:
190
+ specification_version: 4
191
+ summary: HotelsPro API wrapper
192
+ test_files:
193
+ - spec/api_params_helper.rb
194
+ - spec/fixtures/allocate_hotel_code.json
195
+ - spec/fixtures/amend_hotel_booking.json
196
+ - spec/fixtures/cancel_hotel_booking.json
197
+ - spec/fixtures/get_available_hotel.json
198
+ - spec/fixtures/get_balance.json
199
+ - spec/fixtures/get_hotel_booking_status.json
200
+ - spec/fixtures/get_hotel_cancellation_policy.json
201
+ - spec/fixtures/make_hotel_booking.json
202
+ - spec/hotels_pro/api/.gitkeep
203
+ - spec/hotels_pro/api/api_method_spec.rb
204
+ - spec/hotels_pro/api/api_params_spec.rb
205
+ - spec/hotels_pro/api/elements/pax_array_spec.rb
206
+ - spec/hotels_pro/api/methods/allocate_hotel_code_spec.rb
207
+ - spec/hotels_pro/api/methods/amend_hotel_booking_spec.rb
208
+ - spec/hotels_pro/api/methods/cancel_hotel_booking_spec.rb
209
+ - spec/hotels_pro/api/methods/get_available_hotel_spec.rb
210
+ - spec/hotels_pro/api/methods/get_balance_spec.rb
211
+ - spec/hotels_pro/api/methods/get_hotel_booking_status_spec.rb
212
+ - spec/hotels_pro/api/methods/get_hotel_cancellation_policy_spec.rb
213
+ - spec/hotels_pro/api/methods/make_hotel_booking_spec.rb
214
+ - spec/hotels_pro/query_spec.rb
215
+ - spec/hotels_pro/request_spec.rb
216
+ - spec/hotels_pro/response_spec.rb
217
+ - spec/hotels_pro/stubs/stub_spec.rb
218
+ - spec/hotels_pro/stubs_spec.rb
219
+ - spec/hotels_pro/underscorer_spec.rb
220
+ - spec/request_helper.rb
221
+ - spec/spec_helper.rb
222
+ has_rdoc: