vinbot 2.0.0 → 2.0.2
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 +4 -4
- data/lib/data/vehicle.rb +18 -0
- data/lib/vinbot/vehicle.rb +2 -2
- data/lib/vinbot/version.rb +1 -1
- data/lib/vinbot.rb +9 -3
- metadata +58 -60
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7262314ebac0036897b9039b2434dc0873a7184e
|
4
|
+
data.tar.gz: d752760f0543d142f12f99727ea73d13f5f149dd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3b1632c7444fb4fc4619c76bf2778a3f709da1d7fd528017976fa8b0a1821bdea592b5f78bc5986e17c6b2d8d73a98659338512688f8995b19546e779326a866
|
7
|
+
data.tar.gz: de404a35d468479ef1f321ed98711f85ce40c228ace198355456737475b0125f412e5d92c7589025ec4dc6aa98a8d585a044726f2c88a6f95b13100842f258ee
|
data/lib/data/vehicle.rb
CHANGED
@@ -12,6 +12,24 @@ module Vinbot
|
|
12
12
|
many_to_one :interior_color
|
13
13
|
many_to_one :transmission
|
14
14
|
many_to_one :vehicle_type
|
15
|
+
|
16
|
+
def self.get_vehicle(params)
|
17
|
+
return get_random_vehicle if params.empty?
|
18
|
+
join_query = perform_joins(params)
|
19
|
+
add_conditions_to_join(join_query, params).order(Sequel.lit('RANDOM()')).limit(1).first
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.perform_joins(params)
|
23
|
+
params.keys.inject(from(:vehicles)) { |r, e| r.join("#{e}s".to_sym, :id => "vehicles__#{e}_id".to_sym) }
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.add_conditions_to_join(join_query, params)
|
27
|
+
params.inject(join_query) { |r, e| r.where("#{e.first}s__name".to_sym => e.last) }
|
28
|
+
end
|
29
|
+
|
30
|
+
def self.get_random_vehicle
|
31
|
+
::Vinbot::Data::Vehicle.order(Sequel.lit('RANDOM()')).limit(1).first
|
32
|
+
end
|
15
33
|
end
|
16
34
|
end
|
17
35
|
end
|
data/lib/vinbot/vehicle.rb
CHANGED
@@ -4,8 +4,8 @@ module Vinbot
|
|
4
4
|
attr_accessor :year, :make, :model, :trim, :engine_type, :transmission, :body_type, :vehicle_type, :drivetrain,
|
5
5
|
:interior_colors, :exterior_colors, :vin
|
6
6
|
|
7
|
-
def initialize
|
8
|
-
vehicle = ::Vinbot::Data::Vehicle.
|
7
|
+
def initialize(params = {})
|
8
|
+
vehicle = ::Vinbot::Data::Vehicle.get_vehicle(params)
|
9
9
|
@year = vehicle.year.name
|
10
10
|
@make = vehicle.make.name
|
11
11
|
@model = vehicle.model.name
|
data/lib/vinbot/version.rb
CHANGED
data/lib/vinbot.rb
CHANGED
@@ -1,12 +1,18 @@
|
|
1
1
|
require 'securerandom'
|
2
2
|
require 'sequel'
|
3
|
-
require 'sqlite3'
|
4
3
|
require 'vin_bank'
|
5
4
|
require 'vinbot/vehicle'
|
6
5
|
require 'vinbot/vin'
|
7
6
|
|
8
|
-
|
9
|
-
|
7
|
+
if RUBY_PLATFORM == 'java'
|
8
|
+
require 'jdbc/sqlite3'
|
9
|
+
DB = Sequel.connect("jdbc:sqlite:///#{VinBank.db_path}")
|
10
|
+
else
|
11
|
+
require 'sqlite3'
|
12
|
+
DB = Sequel.sqlite(VinBank.db_path)
|
13
|
+
end
|
14
|
+
|
15
|
+
Dir["#{File.dirname(__FILE__)}/data/*.rb"].each { |file| require file }
|
10
16
|
|
11
17
|
module Vinbot
|
12
18
|
|
metadata
CHANGED
@@ -1,135 +1,135 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vinbot
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jarod Adair, Umair Chagani
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-02-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
|
-
|
15
|
+
version_requirements: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - '>'
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.8'
|
20
|
-
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirement: !ruby/object:Gem::Requirement
|
23
21
|
requirements:
|
24
|
-
- -
|
22
|
+
- - '>'
|
25
23
|
- !ruby/object:Gem::Version
|
26
24
|
version: '1.8'
|
25
|
+
prerelease: false
|
26
|
+
type: :development
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
|
-
|
29
|
+
version_requirements: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ~>
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '10.0'
|
34
|
-
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
34
|
+
requirement: !ruby/object:Gem::Requirement
|
37
35
|
requirements:
|
38
|
-
- -
|
36
|
+
- - ~>
|
39
37
|
- !ruby/object:Gem::Version
|
40
38
|
version: '10.0'
|
39
|
+
prerelease: false
|
40
|
+
type: :development
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
|
+
version_requirements: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
43
48
|
requirement: !ruby/object:Gem::Requirement
|
44
49
|
requirements:
|
45
|
-
- -
|
50
|
+
- - '>='
|
46
51
|
- !ruby/object:Gem::Version
|
47
52
|
version: '0'
|
48
|
-
type: :development
|
49
53
|
prerelease: false
|
54
|
+
type: :development
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: pry
|
50
57
|
version_requirements: !ruby/object:Gem::Requirement
|
51
58
|
requirements:
|
52
|
-
- -
|
59
|
+
- - '>='
|
53
60
|
- !ruby/object:Gem::Version
|
54
61
|
version: '0'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: pry
|
57
62
|
requirement: !ruby/object:Gem::Requirement
|
58
63
|
requirements:
|
59
|
-
- -
|
64
|
+
- - '>='
|
60
65
|
- !ruby/object:Gem::Version
|
61
66
|
version: '0'
|
62
|
-
type: :development
|
63
67
|
prerelease: false
|
68
|
+
type: :development
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: pry-nav
|
64
71
|
version_requirements: !ruby/object:Gem::Requirement
|
65
72
|
requirements:
|
66
|
-
- -
|
73
|
+
- - '>='
|
67
74
|
- !ruby/object:Gem::Version
|
68
75
|
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: pry-nav
|
71
76
|
requirement: !ruby/object:Gem::Requirement
|
72
77
|
requirements:
|
73
|
-
- -
|
78
|
+
- - '>='
|
74
79
|
- !ruby/object:Gem::Version
|
75
80
|
version: '0'
|
76
|
-
type: :development
|
77
81
|
prerelease: false
|
82
|
+
type: :development
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: sqlite3
|
78
85
|
version_requirements: !ruby/object:Gem::Requirement
|
79
86
|
requirements:
|
80
|
-
- -
|
87
|
+
- - '>='
|
81
88
|
- !ruby/object:Gem::Version
|
82
89
|
version: '0'
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: sqlite3
|
85
90
|
requirement: !ruby/object:Gem::Requirement
|
86
91
|
requirements:
|
87
|
-
- -
|
92
|
+
- - '>='
|
88
93
|
- !ruby/object:Gem::Version
|
89
94
|
version: '0'
|
90
|
-
type: :runtime
|
91
95
|
prerelease: false
|
96
|
+
type: :runtime
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: sequel
|
92
99
|
version_requirements: !ruby/object:Gem::Requirement
|
93
100
|
requirements:
|
94
|
-
- -
|
101
|
+
- - '>='
|
95
102
|
- !ruby/object:Gem::Version
|
96
103
|
version: '0'
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: sequel
|
99
104
|
requirement: !ruby/object:Gem::Requirement
|
100
105
|
requirements:
|
101
|
-
- -
|
106
|
+
- - '>='
|
102
107
|
- !ruby/object:Gem::Version
|
103
108
|
version: '0'
|
104
|
-
type: :runtime
|
105
109
|
prerelease: false
|
110
|
+
type: :runtime
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: vin_bank
|
106
113
|
version_requirements: !ruby/object:Gem::Requirement
|
107
114
|
requirements:
|
108
|
-
- -
|
115
|
+
- - '>='
|
109
116
|
- !ruby/object:Gem::Version
|
110
|
-
version:
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: vin_bank
|
117
|
+
version: 3.1.0
|
113
118
|
requirement: !ruby/object:Gem::Requirement
|
114
119
|
requirements:
|
115
|
-
- -
|
120
|
+
- - '>='
|
116
121
|
- !ruby/object:Gem::Version
|
117
|
-
version: 3.
|
118
|
-
type: :runtime
|
122
|
+
version: 3.1.0
|
119
123
|
prerelease: false
|
120
|
-
|
121
|
-
|
122
|
-
- - ">="
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: 3.0.0
|
125
|
-
description: Vinbot generates decodeable vins and provides a vehicle object that includes
|
126
|
-
real vehicle data.
|
124
|
+
type: :runtime
|
125
|
+
description: Vinbot generates decodeable vins and provides a vehicle object that includes real vehicle data.
|
127
126
|
email:
|
128
127
|
- jarod.adair@manheim.com, umair.chagani@manheim.com
|
129
128
|
executables: []
|
130
129
|
extensions: []
|
131
130
|
extra_rdoc_files: []
|
132
131
|
files:
|
132
|
+
- lib/vinbot.rb
|
133
133
|
- lib/data/body_type.rb
|
134
134
|
- lib/data/constants.rb
|
135
135
|
- lib/data/drivetrain.rb
|
@@ -143,7 +143,6 @@ files:
|
|
143
143
|
- lib/data/vehicle.rb
|
144
144
|
- lib/data/vehicle_type.rb
|
145
145
|
- lib/data/year.rb
|
146
|
-
- lib/vinbot.rb
|
147
146
|
- lib/vinbot/vehicle.rb
|
148
147
|
- lib/vinbot/version.rb
|
149
148
|
- lib/vinbot/vin.rb
|
@@ -151,25 +150,24 @@ homepage: https://github.com/manheim/vinbot
|
|
151
150
|
licenses:
|
152
151
|
- MIT
|
153
152
|
metadata: {}
|
154
|
-
post_install_message:
|
153
|
+
post_install_message:
|
155
154
|
rdoc_options: []
|
156
155
|
require_paths:
|
157
156
|
- lib
|
158
157
|
required_ruby_version: !ruby/object:Gem::Requirement
|
159
158
|
requirements:
|
160
|
-
- -
|
159
|
+
- - '>='
|
161
160
|
- !ruby/object:Gem::Version
|
162
161
|
version: '0'
|
163
162
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
164
163
|
requirements:
|
165
|
-
- -
|
164
|
+
- - '>='
|
166
165
|
- !ruby/object:Gem::Version
|
167
166
|
version: '0'
|
168
167
|
requirements: []
|
169
|
-
rubyforge_project:
|
170
|
-
rubygems_version: 2.
|
171
|
-
signing_key:
|
168
|
+
rubyforge_project:
|
169
|
+
rubygems_version: 2.1.9
|
170
|
+
signing_key:
|
172
171
|
specification_version: 4
|
173
|
-
summary: Vinbot generates decodeable vins and provides a vehicle object that includes
|
174
|
-
real vehicle data.
|
172
|
+
summary: Vinbot generates decodeable vins and provides a vehicle object that includes real vehicle data.
|
175
173
|
test_files: []
|