mits 0.4.2 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/mits/base_mapper.rb +6 -0
- data/lib/mits/v3.0/mapper.rb +0 -6
- data/lib/mits/v3.0/mapper/floorplan_mapper.rb +6 -6
- data/lib/mits/v4.1/floorplan.rb +8 -0
- data/lib/mits/v4.1/mapper.rb +5 -0
- data/lib/mits/v4.1/mapper/property_mapper.rb +1 -0
- data/lib/mits/version.rb +1 -1
- data/spec/fixtures/MITS_4.1_Property.yml +8 -11
- data/spec/lib/mits/v4.1/mapper_spec.rb +17 -0
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0f6e0521b4d82d57f354b0797cc9df6b9223d7be
|
4
|
+
data.tar.gz: ccfd8ab8beff1ed536bbd3392555e331b3ae3e57
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 655d643a9450de67ca8fe97434da4188fd0af867c9651e870f17e757ccba81de84900de39eaa7936469a48ed0e2b40bb34611e7808ce2d127b189924655969da
|
7
|
+
data.tar.gz: 0d68d2aa4197998046d41f7902ac115dede3b4317df4b9a907edf39253465938d466ec86f60efc1c4f797cff06f9d353f96b096ba72f9c95c8bde237531bc474
|
data/lib/mits/base_mapper.rb
CHANGED
data/lib/mits/v3.0/mapper.rb
CHANGED
@@ -2,13 +2,13 @@ module MITS
|
|
2
2
|
module V3_0
|
3
3
|
module Mapper
|
4
4
|
module FloorplanMapper
|
5
|
-
def floorplans(tags)
|
5
|
+
def floorplans(tags, fp = Floorplan)
|
6
6
|
tags = [tags] unless tags.is_a? Array
|
7
|
-
tags.map { |tag| floorplan(tag) }
|
7
|
+
tags.map { |tag| floorplan(tag, fp) }
|
8
8
|
end
|
9
9
|
|
10
|
-
def floorplan(tag)
|
11
|
-
|
10
|
+
def floorplan(tag, floorplan = Floorplan)
|
11
|
+
floorplan.new(bathrooms: try(rooms(tag[:Room], 'Bathroom'), :to_f),
|
12
12
|
bedrooms: try(rooms(tag[:Room], 'Bedroom'), :to_i),
|
13
13
|
name: tag[:Name],
|
14
14
|
rent: range_tag(tag[:MarketRent]),
|
@@ -17,9 +17,9 @@ module MITS
|
|
17
17
|
|
18
18
|
private
|
19
19
|
|
20
|
-
def rooms(
|
20
|
+
def rooms(tags, type)
|
21
21
|
tags = [tags] unless tags.is_a? Array
|
22
|
-
room =
|
22
|
+
room = tags.find { |t| t[:RoomType] == type }
|
23
23
|
room[:Count] if room
|
24
24
|
end
|
25
25
|
end
|
data/lib/mits/v4.1/mapper.rb
CHANGED
@@ -4,6 +4,7 @@ require_relative 'company'
|
|
4
4
|
require_relative 'deposit'
|
5
5
|
require_relative 'fees'
|
6
6
|
require_relative 'file'
|
7
|
+
require_relative 'floorplan'
|
7
8
|
require_relative 'pet'
|
8
9
|
require_relative 'pet_policy'
|
9
10
|
require_relative 'policy'
|
@@ -19,6 +20,7 @@ require_relative '../v3.0/mapper/company_mapper'
|
|
19
20
|
require_relative '../v3.0/mapper/deposit_mapper'
|
20
21
|
require_relative '../v3.0/mapper/fees_mapper'
|
21
22
|
require_relative '../v3.0/mapper/files_mapper'
|
23
|
+
require_relative '../v3.0/mapper/floorplan_mapper'
|
22
24
|
require_relative '../v3.0/mapper/pet_policy_mapper'
|
23
25
|
require_relative '../v3.0/mapper/phones_mapper'
|
24
26
|
require_relative '../v3.0/mapper/policy_mapper'
|
@@ -34,6 +36,7 @@ module MITS
|
|
34
36
|
extend V3_0::Mapper::DepositMapper
|
35
37
|
extend V3_0::Mapper::FeesMapper
|
36
38
|
extend V3_0::Mapper::FilesMapper
|
39
|
+
extend V3_0::Mapper::FloorplanMapper
|
37
40
|
extend V3_0::Mapper::PetPolicyMapper
|
38
41
|
extend V3_0::Mapper::PhonesMapper
|
39
42
|
extend V3_0::Mapper::PolicyMapper
|
@@ -41,6 +44,8 @@ module MITS
|
|
41
44
|
extend AddressMapper
|
42
45
|
extend PropertyMapper
|
43
46
|
extend UnitsMapper
|
47
|
+
|
48
|
+
extend self
|
44
49
|
end
|
45
50
|
end
|
46
51
|
end
|
@@ -31,6 +31,7 @@ module MITS
|
|
31
31
|
details[:amenities] = try(tag[:ILS_Unit][:Amenity], Amenity, :amenities)
|
32
32
|
details[:deposit] = try(tag[:Deposit], Deposit, :deposit)
|
33
33
|
details[:fees] = try(tag[:Fee], Fees, :fees)
|
34
|
+
details[:floorplans] = try(tag[:Floorplan], Floorplan, :floorplans)
|
34
35
|
details[:files] = try(tag[:File], File, :files)
|
35
36
|
details[:policy] = try(tag[:Policy], Policy, PetPolicy, Pet, :policy)
|
36
37
|
details[:units] = try(tag[:ILS_Unit][:Units][:Unit], :units)
|
data/lib/mits/version.rb
CHANGED
@@ -64,11 +64,11 @@
|
|
64
64
|
:Count: 1
|
65
65
|
:Size: Large
|
66
66
|
:Weight: 60lbs
|
67
|
-
- :PetType: Reptile
|
67
|
+
- :PetType: Reptile
|
68
68
|
:Description: ''
|
69
69
|
:Count: 1
|
70
|
-
:Size: Small
|
71
|
-
:Weight: Under 10lbs
|
70
|
+
:Size: Small
|
71
|
+
:Weight: Under 10lbs
|
72
72
|
:Comment: 'No cats allowed'
|
73
73
|
:Deposit: '50.00'
|
74
74
|
:Fee: '25.00'
|
@@ -89,21 +89,18 @@
|
|
89
89
|
:SquareFeet: '3400'
|
90
90
|
:IDValue: SomethingRandom1
|
91
91
|
:Floorplan:
|
92
|
-
:Name:
|
92
|
+
:Name: 'Floorplan A'
|
93
93
|
:UnitCount: '1'
|
94
94
|
:Room:
|
95
|
-
- :Count: '4'
|
96
|
-
:Comment: {}
|
97
|
-
:RoomType: Bedroom
|
98
95
|
- :Count: '4'
|
99
96
|
:Comment: {}
|
100
97
|
:RoomType: Bathroom
|
101
98
|
:SquareFeet:
|
102
|
-
:Max: '
|
103
|
-
:Min: '
|
99
|
+
:Max: '700'
|
100
|
+
:Min: '600'
|
104
101
|
:MarketRent:
|
105
|
-
:Max: '
|
106
|
-
:Min: '
|
102
|
+
:Max: '1000'
|
103
|
+
:Min: '800'
|
107
104
|
:EffectiveRent:
|
108
105
|
:Max: '3400'
|
109
106
|
:Min: '3400'
|
@@ -203,6 +203,23 @@ module MITS
|
|
203
203
|
expect(first.sqft).to eq 3400..3400
|
204
204
|
end
|
205
205
|
end
|
206
|
+
|
207
|
+
describe '.floorplans' do
|
208
|
+
subject { Mapper.floorplans(fixture[:Floorplan], Floorplan) }
|
209
|
+
|
210
|
+
it { is_expected.to be_a Array }
|
211
|
+
|
212
|
+
it 'includes individual floorplans' do
|
213
|
+
first = subject.first
|
214
|
+
expect(first).to be_a Floorplan
|
215
|
+
expect(first.bathrooms).to eq 4.0
|
216
|
+
expect(first.bedrooms).to be_nil
|
217
|
+
expect(first.name).to eq 'Floorplan A'
|
218
|
+
expect(first.rent).to eq 800..1000
|
219
|
+
expect(first.sqft).to eq 600..700
|
220
|
+
end
|
221
|
+
end
|
222
|
+
|
206
223
|
end
|
207
224
|
end
|
208
225
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mits
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sean Callan
|
@@ -198,6 +198,7 @@ files:
|
|
198
198
|
- lib/mits/v4.1/deposit.rb
|
199
199
|
- lib/mits/v4.1/fees.rb
|
200
200
|
- lib/mits/v4.1/file.rb
|
201
|
+
- lib/mits/v4.1/floorplan.rb
|
201
202
|
- lib/mits/v4.1/mapper.rb
|
202
203
|
- lib/mits/v4.1/mapper/address_mapper.rb
|
203
204
|
- lib/mits/v4.1/mapper/company_mapper.rb
|