hotel_beds 1.0.6 → 1.0.7

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: 0ad5475c850151fad962e0a78d43850973c25917
4
- data.tar.gz: fdbd63e56440fa17abfa5914f4190e92b8083ceb
3
+ metadata.gz: a4ab8d652ac737f488dfb4dbd72cb12c26f10047
4
+ data.tar.gz: b889af49744f86368e8dc594d28aa30e4778ef7e
5
5
  SHA512:
6
- metadata.gz: 2daa30283b1bb5f4636b5059bf26f2c5fd7f16780d2a865d53c0ef679a297c0f5ee319882261ecf688ca254d77c1992b1ac74eabc17caa2e64a15c8c4173b640
7
- data.tar.gz: c1485c67ef3e6ef102113e4e193fd907f3908a2eca497efdfb3ff81c15ff806c6b68f5af4f1f06cb7a36fa5c283083975ba912469cec82b801971f1bd34646c3
6
+ metadata.gz: c0a25ec9e60cda2906296bd454a234f2db94654ccac0bfd6f351aa8d78851f1cf61a6b136f138f5f8fa8546a78964f664ffff2253bb22bbb016be6e3e666b4d3
7
+ data.tar.gz: d4d393e6d5d66cbb8bb324c3af0df244724fd84cb5ca4232320f1e5240020f4f737be34e968e806605c4c4030e35676d017f73369b00391fc0e91091f2a137d0
@@ -28,4 +28,5 @@ Gem::Specification.new do |spec|
28
28
  spec.add_development_dependency "guard-rspec", "~> 4.2.10"
29
29
  spec.add_development_dependency "dotenv", "~> 0.11.1"
30
30
  spec.add_development_dependency "codeclimate-test-reporter"
31
+ spec.add_development_dependency "ox", "~> 2.1.3"
31
32
  end
@@ -11,11 +11,11 @@ module HotelBeds
11
11
  end
12
12
 
13
13
  def deep_attributes
14
- attributes.inject(Hash.new) do |result, (key, value)|
14
+ attributes.each_with_object(Hash.new) do |(key, value), result|
15
15
  if value.respond_to?(:deep_attributes)
16
- result.merge(key => value.deep_attributes)
16
+ result[key] = value.deep_attributes
17
17
  else
18
- result.merge(key => value)
18
+ result[key] = value
19
19
  end
20
20
  end
21
21
  end
@@ -27,11 +27,10 @@ module HotelBeds
27
27
  prices = values.map do |attrs|
28
28
  HotelBeds::Model::Price.new(attrs)
29
29
  end
30
- hash = prices.inject(Hash.new) do |result, price|
30
+ hash = prices.each_with_object(Hash.new) do |price, result|
31
31
  price.dates.each do |date|
32
- result.merge!(date => price.amount)
32
+ result[date] = price.amount
33
33
  end
34
- result
35
34
  end
36
35
  super(hash)
37
36
  else
@@ -88,8 +88,8 @@ module HotelBeds
88
88
 
89
89
  # parses the document into a hash of attributes
90
90
  def to_h
91
- self.class.attributes.inject(Hash.new) do |result, attribute|
92
- result.merge(attribute.name => attribute.retrieve(doc))
91
+ self.class.attributes.each_with_object(Hash.new) do |attribute, result|
92
+ result[attribute.name] = attribute.retrieve(doc)
93
93
  end
94
94
  end
95
95
 
@@ -23,7 +23,7 @@ module HotelBeds
23
23
 
24
24
  def expand_combinations(combinations)
25
25
  combinations.map do |rooms|
26
- rooms.inject(Array.new) do |result, room|
26
+ rooms.each_with_object(Array.new) do |room, result|
27
27
  # get an array of all the child ages
28
28
  child_ages = requested_rooms_child_ages_by_occupants.fetch(occupant_key(room))
29
29
  1.upto(room.room_count) do |i|
@@ -32,7 +32,6 @@ module HotelBeds
32
32
  r.child_ages = child_ages.pop
33
33
  end
34
34
  end
35
- result
36
35
  end
37
36
  end
38
37
  end
@@ -46,7 +45,7 @@ module HotelBeds
46
45
  # returns a array of arrays, each contains available rooms for a given
47
46
  # room occupancy
48
47
  def room_options_grouped_by_occupants
49
- requested_room_count_by_occupants.inject(Array.new) do |result, (key, count)|
48
+ requested_room_count_by_occupants.each_with_object(Array.new) do |(key, count), result|
50
49
  result << response_rooms_by_occupants.fetch(key).select do |room|
51
50
  room.room_count == count
52
51
  end
@@ -57,38 +56,35 @@ module HotelBeds
57
56
 
58
57
  # returns a hash of OK => [Integer]
59
58
  def requested_rooms_child_ages_by_occupants
60
- requested_rooms.inject(Hash.new) do |result, room|
59
+ requested_rooms.each_with_object(Hash.new) do |room, result|
61
60
  key = occupant_key(room)
62
61
  result[key] ||= Array.new
63
62
  result[key] += room.child_ages
64
- result
65
63
  end
66
64
  end
67
65
 
68
66
  # returns a hash of OK => [RR]
69
67
  def requested_rooms_by_occupants
70
- requested_rooms.inject(Hash.new) do |result, room|
68
+ requested_rooms.each_with_object(Hash.new) do |room, result|
71
69
  key = occupant_key(room)
72
70
  result[key] ||= Array.new
73
71
  result[key] << room
74
- result
75
72
  end
76
73
  end
77
74
 
78
75
  # returns a hash of OK => 1 (count)
79
76
  def requested_room_count_by_occupants
80
- requested_rooms_by_occupants.inject(Hash.new) do |result, (key, rooms)|
81
- result.merge(key => rooms.size)
77
+ requested_rooms_by_occupants.each_with_object(Hash.new) do |(key, rooms), result|
78
+ result[key] = rooms.size
82
79
  end
83
80
  end
84
81
 
85
82
  # returns a hash of OK => [AvailableRoom, AvailableRoom, AvailableRoom]
86
83
  def response_rooms_by_occupants
87
- response_rooms.inject(Hash.new) do |result, room|
84
+ response_rooms.each_with_object(Hash.new) do |room, result|
88
85
  key = occupant_key(room)
89
86
  result[key] ||= Array.new
90
87
  result[key].push(room)
91
- result
92
88
  end
93
89
  end
94
90
 
@@ -1,3 +1,3 @@
1
1
  module HotelBeds
2
- VERSION = "1.0.6"
2
+ VERSION = "1.0.7"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hotel_beds
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.6
4
+ version: 1.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Townsend
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-07 00:00:00.000000000 Z
11
+ date: 2014-10-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: savon
@@ -150,6 +150,20 @@ dependencies:
150
150
  - - ">="
151
151
  - !ruby/object:Gem::Version
152
152
  version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: ox
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: 2.1.3
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: 2.1.3
153
167
  description:
154
168
  email:
155
169
  - ryan@ryantownsend.co.uk