faker 1.7.1 → 1.7.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e68fa4d400575ac0590e7967e7b53a351986edc8
4
- data.tar.gz: e6e6b68dab40c6fddfeff0ecc19fff276aaba8d4
3
+ metadata.gz: f66acabfa288678c7f3f4eb116982fc644f8e7db
4
+ data.tar.gz: d949b472d8d9da7053ea706bbcf5fe91eddf6a72
5
5
  SHA512:
6
- metadata.gz: 9116798328b4284034130b7c56ac75bf664eb256f44774f91e51f1cbe5f6b2c39ff8d485c6ca8c61970be94d92c445b56831f9e00a46ec779f8313330bb0045d
7
- data.tar.gz: 8f22ecb92ba518ecd6a44fb4f19ee5c3b36a7588ed2166727814bce698ec5c46b6845c22f12d755bd672282b9b99bb7a9644b41f1668ea82a2a5f283438026a7
6
+ metadata.gz: f68dd26092c7f906a5370dfe4c916377ae82eb557a8e4be1b4192bb26801bfd8f09d131e8953469d5ce7e6d426f7e8a818a332e7dfb05e65ab4e1425feea0dd6
7
+ data.tar.gz: 8a178ee618b5146ec246bcc21c8e95139dde8be37612f113eb877b4be5dcf583b58eb8ec7d117cd19a987706964f9a84310a96b599ed1b536b4c2a574cd1f362
@@ -1,5 +1,31 @@
1
1
  # Change Log
2
2
 
3
+ ## [v1.7.2](https://github.com/stympy/faker/tree/v1.7.2) (2017-01-03)
4
+ [Full Changelog](https://github.com/stympy/faker/compare/v1.7.1...v1.7.2)
5
+
6
+ **Closed issues:**
7
+
8
+ - Faker::Avatar error: read server certificate B: certificate verify failed [\#763](https://github.com/stympy/faker/issues/763)
9
+ - assert Faker::Internet.email.match\(/.+@\[^.\].+\.\w+/\) fails randomly [\#737](https://github.com/stympy/faker/issues/737)
10
+ - Incorrect HSL color format [\#728](https://github.com/stympy/faker/issues/728)
11
+ - Can we add the \#Hacktoberfest label for pull requests this month [\#717](https://github.com/stympy/faker/issues/717)
12
+ - Faker::Boolean.boolean error [\#714](https://github.com/stympy/faker/issues/714)
13
+ - Faker::Food not found [\#688](https://github.com/stympy/faker/issues/688)
14
+ - Fix seed for random values [\#684](https://github.com/stympy/faker/issues/684)
15
+ - README alphabetical order of Usage [\#660](https://github.com/stympy/faker/issues/660)
16
+ - At which point do we break off functionality? [\#653](https://github.com/stympy/faker/issues/653)
17
+ - Time zone abbreviation [\#631](https://github.com/stympy/faker/issues/631)
18
+ - ruby 2.3.1 rails 5 [\#627](https://github.com/stympy/faker/issues/627)
19
+ - Faker::Time::between doesn't respect requested period [\#526](https://github.com/stympy/faker/issues/526)
20
+
21
+ **Merged pull requests:**
22
+
23
+ - IPv4: private and reserved [\#784](https://github.com/stympy/faker/pull/784) ([randoum](https://github.com/randoum))
24
+ - Update bank method [\#783](https://github.com/stympy/faker/pull/783) ([swapnilchincholkar](https://github.com/swapnilchincholkar))
25
+ - Refactors code in some base classes [\#782](https://github.com/stympy/faker/pull/782) ([tiagofsilva](https://github.com/tiagofsilva))
26
+ - Refactors code in some base classes [\#781](https://github.com/stympy/faker/pull/781) ([tiagofsilva](https://github.com/tiagofsilva))
27
+ - Refute blank [\#707](https://github.com/stympy/faker/pull/707) ([SherSpock](https://github.com/SherSpock))
28
+
3
29
  ## [v1.7.1](https://github.com/stympy/faker/tree/v1.7.1) (2016-12-25)
4
30
  [Full Changelog](https://github.com/stympy/faker/compare/v1.7.0...v1.7.1)
5
31
 
@@ -20,25 +20,22 @@ module Faker
20
20
 
21
21
  categories = categories(num)
22
22
 
23
- if num > 1
24
- merge_categories(categories)
25
- else
26
- categories[0]
27
- end
23
+ return merge_categories(categories) if num > 1
24
+ categories[0]
28
25
  end
29
26
 
30
27
  def product_name
31
- fetch('commerce.product_name.adjective') + ' ' + fetch('commerce.product_name.material') + ' ' + fetch('commerce.product_name.product')
28
+ "#{fetch('commerce.product_name.adjective')} #{fetch('commerce.product_name.material')} #{fetch('commerce.product_name.product')}"
32
29
  end
33
30
 
34
31
  def material
35
32
  fetch('commerce.product_name.material')
36
33
  end
37
34
 
38
- def price(range=0..100.0, string=false)
35
+ def price(range=0..100.0, as_string=false)
39
36
  random = Random::DEFAULT
40
37
  price = (random.rand(range) * 100).floor/100.0
41
- if string
38
+ if as_string
42
39
  price_parts = price.to_s.split('.')
43
40
  price = price_parts[0] + price_parts[-1].ljust(2, "0")
44
41
  end
@@ -30,11 +30,11 @@ module Faker
30
30
  end
31
31
 
32
32
  def ein
33
- ('%09d' % rand(10 ** 9)).gsub(/(\d\d)(\d\d\d\d\d\d\d)/, '\\1-\\2')
33
+ ('%09d' % rand(10 ** 9)).gsub(/(\d{2})(\d{7})/, '\\1-\\2')
34
34
  end
35
35
 
36
36
  def duns_number
37
- ('%09d' % rand(10 ** 9)).gsub(/(\d\d)(\d\d\d)(\d\d\d\d)/, '\\1-\\2-\\3')
37
+ ('%09d' % rand(10 ** 9)).gsub(/(\d{2})(\d{3})(\d{4})/, '\\1-\\2-\\3')
38
38
  end
39
39
 
40
40
  # Get a random company logo url in PNG format.
@@ -54,7 +54,7 @@ module Faker
54
54
 
55
55
  def australian_business_number
56
56
  base = ('%09d' % rand(10 ** 9))
57
- abn = '00' + base
57
+ abn = "00#{base}"
58
58
 
59
59
  (99 - (abn_checksum(abn) % 89)).to_s + base
60
60
  end
@@ -1,7 +1,7 @@
1
- # encoding: utf-8
2
1
  module Faker
3
2
  class File < Base
4
3
  class << self
4
+
5
5
  def extension
6
6
  fetch('file.extension')
7
7
  end
@@ -13,11 +13,12 @@ module Faker
13
13
  def file_name(dir = nil, name = nil, ext = nil, directory_separator = '/')
14
14
 
15
15
  dir = Faker::Internet::slug unless dir
16
- name = Faker::Lorem::word().downcase unless name
17
- ext = extension unless ext
16
+ name = Faker::Lorem::word.downcase unless name
17
+ ext ||= extension
18
18
 
19
19
  [dir, name].join(directory_separator) + ".#{ext}"
20
20
  end
21
+
21
22
  end
22
23
  end
23
24
  end
@@ -1,17 +1,13 @@
1
-
2
-
3
1
  module Faker
4
2
  class Fillmurray < Base
5
3
  class << self
6
4
 
7
5
  def image(grayscale = false, width = 200, height = 200)
8
- raise ArgumentError, "Width should be a number in string format" unless width.match(/^[0-9]+$/)
9
- raise ArgumentError, "Height should be a number in string format" unless height.match(/^[0-9]+$/)
6
+ raise ArgumentError, "Width should be a number" unless width.match(/^\d+$/)
7
+ raise ArgumentError, "Height should be a number" unless height.match(/^\d+$/)
10
8
  raise ArgumentError, "Grayscale should be a boolean" unless [true, false].include?(grayscale)
11
9
 
12
- fillmurray_url = grayscale == true ? "https://fillmurray.com/g/#{width}/#{height}" : "https://fillmurray.com/#{width}/#{height}"
13
-
14
- fillmurray_url
10
+ grayscale == true ? "https://fillmurray.com/g/#{width}/#{height}" : "https://fillmurray.com/#{width}/#{height}"
15
11
  end
16
12
  end
17
13
  end
@@ -1,5 +1,6 @@
1
1
  module Faker
2
2
  class Finance < Base
3
+
3
4
  CREDIT_CARD_TYPES = [:visa, :mastercard, :discover, :american_express,
4
5
  :diners_club, :jcb, :switch, :solo, :dankort,
5
6
  :maestro, :forbrugsforeningen, :laser].freeze
@@ -20,8 +21,7 @@ module Faker
20
21
  # last digit must be 10 - the last digit of the sum.
21
22
  luhn_digit = (10 - (luhn_sum % 10)) % 10
22
23
 
23
- template.gsub! 'L', luhn_digit.to_s
24
- template
24
+ template.gsub('L', luhn_digit.to_s)
25
25
  end
26
26
  end
27
27
  end
@@ -8,11 +8,25 @@ module Faker
8
8
  phrases.sample
9
9
  end
10
10
 
11
- def abbreviation; fetch('hacker.abbreviation'); end
12
- def adjective; fetch('hacker.adjective'); end
13
- def noun; fetch('hacker.noun'); end
14
- def verb; fetch('hacker.verb'); end
15
- def ingverb; fetch('hacker.ingverb'); end
11
+ def abbreviation
12
+ fetch('hacker.abbreviation')
13
+ end
14
+
15
+ def adjective
16
+ fetch('hacker.adjective')
17
+ end
18
+
19
+ def noun
20
+ fetch('hacker.noun')
21
+ end
22
+
23
+ def verb
24
+ fetch('hacker.verb')
25
+ end
26
+
27
+ def ingverb
28
+ fetch('hacker.ingverb')
29
+ end
16
30
 
17
31
  def phrases
18
32
  [ "If we #{verb} the #{noun}, we can get to the #{abbreviation} #{noun} through the #{adjective} #{abbreviation} #{noun}!",
@@ -1,5 +1,6 @@
1
1
  module Faker
2
2
  class IDNumber < Base
3
+
3
4
  INVALID_SSN = [
4
5
  /0{3}-\d{2}-\d{4}/,
5
6
  /\d{3}-0{2}-\d{4}/,
@@ -7,14 +8,15 @@ module Faker
7
8
  /666-\d{2}-\d{4}/,
8
9
  /9\d{2}-\d{2}-\d{4}/
9
10
  ]
11
+
10
12
  class << self
11
13
 
12
14
  def valid
13
- _translate 'valid'
15
+ _translate('valid')
14
16
  end
15
17
 
16
18
  def invalid
17
- _translate 'invalid'
19
+ _translate('invalid')
18
20
  end
19
21
 
20
22
  def ssn_valid
@@ -24,7 +26,8 @@ module Faker
24
26
  end
25
27
 
26
28
  private
27
- def _translate key
29
+
30
+ def _translate(key)
28
31
  if parse("id_number.#{key}") == ''
29
32
  numerify(fetch("id_number.#{key}"))
30
33
  else
@@ -32,5 +35,6 @@ module Faker
32
35
  end
33
36
  end
34
37
  end
38
+
35
39
  end
36
40
  end
@@ -1,7 +1,7 @@
1
- # encoding: utf-8
2
1
  module Faker
3
2
  class Internet < Base
4
3
  class << self
4
+
5
5
  def email(name = nil)
6
6
  [user_name(name), domain_name].join('@')
7
7
  end
@@ -11,36 +11,35 @@ module Faker
11
11
  end
12
12
 
13
13
  def safe_email(name = nil)
14
- [user_name(name), 'example.'+ %w[org com net].shuffle.first].join('@')
14
+ [user_name(name), 'example.'+ %w[org com net].sample].join('@')
15
15
  end
16
16
 
17
17
  def user_name(specifier = nil, separators = %w(. _))
18
18
  with_locale(:en) do
19
- if specifier.kind_of? String
19
+ if specifier.respond_to?(:scan)
20
20
  return specifier.scan(/\w+/).shuffle.join(separators.sample).downcase
21
- elsif specifier.kind_of? Integer
21
+ elsif specifier.kind_of?(Integer)
22
22
  # If specifier is Integer and has large value, Argument error exception is raised to overcome memory full error
23
23
  raise ArgumentError, "Given argument is too large" if specifier > 10**6
24
24
  tries = 0 # Don't try forever in case we get something like 1_000_000.
25
25
  begin
26
- result = user_name nil, separators
26
+ result = user_name(nil, separators)
27
27
  tries += 1
28
- end while result.length < specifier and tries < 7
29
- result = result * (specifier/result.length + 1) if specifier > 0
30
- return result
31
- elsif specifier.kind_of? Range
28
+ end while result.length < specifier && tries < 7
29
+ return result * (specifier/result.length + 1) if specifier > 0
30
+ elsif specifier.kind_of?(Range)
32
31
  tries = 0
33
32
  begin
34
- result = user_name specifier.min, separators
33
+ result = user_name(specifier.min, separators)
35
34
  tries += 1
36
- end while not specifier.include? result.length and tries < 7
35
+ end while !specifier.include?(result.length) && tries < 7
37
36
  return result[0...specifier.max]
38
37
  end
39
38
 
40
39
  [
41
40
  Char.prepare(Name.first_name),
42
41
  [Name.first_name, Name.last_name].map{ |name|
43
- Char.prepare name
42
+ Char.prepare(name)
44
43
  }.join(separators.sample)
45
44
  ].sample
46
45
  end
@@ -56,7 +55,7 @@ module Faker
56
55
 
57
56
  if mix_case
58
57
  temp.chars.each_with_index do |char, index|
59
- temp[index] = char.upcase if index % 2 == 0
58
+ temp[index] = char.upcase if index.even?
60
59
  end
61
60
  end
62
61
 
@@ -67,7 +66,7 @@ module Faker
67
66
  end
68
67
  end
69
68
 
70
- return temp
69
+ temp
71
70
  end
72
71
 
73
72
  def domain_name
@@ -75,14 +74,12 @@ module Faker
75
74
  end
76
75
 
77
76
  def fix_umlauts(string)
78
- Char.fix_umlauts string
77
+ Char.fix_umlauts(string)
79
78
  end
80
79
 
81
80
  def domain_word
82
- if %w(uk).include? Config.locale
83
- return Char.prepare Company.name.split(' ')[1]
84
- end
85
- Char.prepare Company.name.split(' ').first
81
+ return Char.prepare(Company.name.split(' ')[1]) if Config.locale == 'uk'
82
+ Char.prepare(Company.name.split(' ').first)
86
83
  end
87
84
 
88
85
  def domain_suffix
@@ -109,21 +106,24 @@ module Faker
109
106
  end
110
107
 
111
108
  def public_ip_v4_address
112
- is_private = private_net_checker
109
+ is_reserved = reserved_net_checker
113
110
  addr = nil
114
111
  begin
115
112
  addr = ip_v4_address
116
- end while is_private[addr]
113
+ end while is_reserved[addr]
117
114
  addr
118
115
  end
119
116
 
120
117
  def private_nets_regex
121
118
  [
122
- /^10\./,
123
- /^127\./,
124
- /^169\.254\./,
125
- /^172\.(16|17|18|19|2\d|30|31)\./,
126
- /^192\.168\./
119
+ /^10\./, # 10.0.0.0 – 10.255.255.255
120
+ /^100\.(6[4-9]|[7-9]\d|1[0-1]\d|12[0-7])\./, # 100.64.0.0 – 100.127.255.255
121
+ /^127\./, # 127.0.0.0 – 127.255.255.255
122
+ /^169\.254\./, # 169.254.0.0 – 169.254.255.255
123
+ /^172\.(1[6-9]|2\d|3[0-1])\./, # 172.16.0.0 – 172.31.255.255
124
+ /^192\.0\.0\./, # 192.0.0.0 – 192.0.0.255
125
+ /^192\.168\./, # 192.168.0.0 – 192.168.255.255
126
+ /^198\.(1[8-9])\./ # 198.18.0.0 – 198.19.255.255
127
127
  ]
128
128
  end
129
129
 
@@ -131,6 +131,22 @@ module Faker
131
131
  lambda { |addr| private_nets_regex.any? { |net| net =~ addr } }
132
132
  end
133
133
 
134
+ def reserved_nets_regex
135
+ [
136
+ /^0\./, # 0.0.0.0 – 0.255.255.255
137
+ /^192\.0\.2\./, # 192.0.2.0 – 192.0.2.255
138
+ /^192\.88\.99\./, # 192.88.99.0 – 192.88.99.255
139
+ /^198\.51\.100\./, # 198.51.100.0 – 198.51.100.255
140
+ /^203\.0\.113\./, # 203.0.113.0 – 203.0.113.255
141
+ /^(22[4-9]|23\d)\./, # 224.0.0.0 – 239.255.255.255
142
+ /^(24\d|25[0-5])\./ # 240.0.0.0 – 255.255.255.254 and 255.255.255.255
143
+ ]
144
+ end
145
+
146
+ def reserved_net_checker
147
+ lambda { |addr| (private_nets_regex + reserved_nets_regex).any? { |net| net =~ addr } }
148
+ end
149
+
134
150
  def ip_v4_cidr
135
151
  "#{ip_v4_address}/#{1 + rand(31)}"
136
152
  end
@@ -12,7 +12,8 @@ module Faker
12
12
 
13
13
  class << self
14
14
  def between(from, to, period = :all, format = nil)
15
- time_with_format(date_with_random_time(super(from, to), period), format)
15
+ time = period == :between ? rand(from..to) : date_with_random_time(super(from, to), period)
16
+ time_with_format(time, format)
16
17
  end
17
18
 
18
19
  def forward(days = 365, period = :all, format = nil)
@@ -1,17 +1,17 @@
1
1
  module Faker
2
2
  class Vehicle < Base
3
- @vin_chars = '0123456789.ABCDEFGH..JKLMN.P.R..STUVWXYZ'
4
- @vin_map = '0123456789X'
5
- @vin_weights = '8765432X098765432'
3
+ VIN_CHARS = '0123456789.ABCDEFGH..JKLMN.P.R..STUVWXYZ'
4
+ VIN_MAP = '0123456789X'
5
+ VIN_WEIGHTS = '8765432X098765432'
6
6
 
7
7
  class << self
8
8
  #ISO 3779
9
9
  def vin
10
- manufacture = fetch_all('vehicle.manufacture').sample
10
+ _, wmi, wmi_ext = fetch_all('vehicle.manufacture').sample
11
11
 
12
- c = @vin_chars.split('').reject{ |n| n == '.'}
13
- vehicle_identification_number = manufacture["wmi"].split('').concat( Array.new(14) { c.sample } )
14
- (12..14).to_a.each_with_index { |n, i| vehicle_identification_number[n] = manufacture["win_ext"][i] } unless manufacture["win_ext"].nil?
12
+ c = VIN_CHARS.split('').reject{ |n| n == '.'}
13
+ vehicle_identification_number = wmi.split('').concat( Array.new(14) { c.sample } )
14
+ (12..14).to_a.each_with_index { |n, i| vehicle_identification_number[n] = wmi_ext[i] } unless wmi_ext.nil?
15
15
  vehicle_identification_number[10] = fetch('vehicle.year')
16
16
  vehicle_identification_number[8] = vin_checksum(vehicle_identification_number)
17
17
 
@@ -19,19 +19,19 @@ module Faker
19
19
  end
20
20
 
21
21
  def manufacture
22
- fetch_all('vehicle.manufacture').sample["name"]
22
+ fetch_all('vehicle.manufacture').sample.first
23
23
  end
24
-
24
+
25
25
  private
26
26
 
27
27
  def calculate_vin_weight(character, i)
28
- (@vin_chars.index(character) % 10) * @vin_map.index(@vin_weights [i])
28
+ (VIN_CHARS.index(character) % 10) * VIN_MAP.index(VIN_WEIGHTS[i])
29
29
  end
30
30
 
31
31
  def vin_checksum(vehicle_identification_number)
32
- @vin_map[vehicle_identification_number.each_with_index.map(&method(:calculate_vin_weight)).inject(:+) % 11]
32
+ VIN_MAP[vehicle_identification_number.each_with_index.map(&method(:calculate_vin_weight)).inject(:+) % 11]
33
33
  end
34
34
 
35
35
  end
36
36
  end
37
- end
37
+ end
@@ -1,3 +1,3 @@
1
1
  module Faker #:nodoc:
2
- VERSION = "1.7.1"
2
+ VERSION = "1.7.2"
3
3
  end
@@ -370,147 +370,53 @@ en:
370
370
  vehicle:
371
371
  year: [A, L, Y, B, M, '1', C, N, '2', D, P, '3', E, R, '4', F, S, '5', G, T, '6', H, V, '7', J, W, '8', K, X, '9']
372
372
  manufacture:
373
- - name: MARQUESS ELECTRIC CAR COMPANY
374
- wmi: 15E
375
- wmi_ext:
376
- - name: AJAX MANUFACTURING COMPANY, INC.
377
- wmi: 1A9
378
- wmi_ext: '396'
379
- - name: DAIMLERCHRYSLER CORPORATION
380
- wmi: 1B6
381
- wmi_ext:
382
- - name: BAY EQUIPMENT & REPAIR
383
- wmi: 1B9
384
- wmi_ext: '290'
385
- - name: CHOPPER GUY'S, INC.
386
- wmi: 1C9
387
- wmi_ext: '564'
388
- - name: COMMERCIAL MOBILE SYSTEMS
389
- wmi: 1C9
390
- wmi_ext: ACA
391
- - name: FORD MOTOR COMPANY
392
- wmi: 1F1
393
- wmi_ext:
394
- - name: AMERICAN TRANSPORTATION CORPORATION
395
- wmi: 1F8
396
- wmi_ext:
397
- - name: FMC CORP
398
- wmi: 1F9
399
- wmi_ext: '041'
400
- - name: GENERAL MOTORS CORPORATION
401
- wmi: 1G8
402
- wmi_ext:
403
- - name: AUTOMOTRIZ PEYCHA, S.A. DE C.V.
404
- wmi: 3A9
405
- wmi_ext: '068'
406
- - name: REGIOBUS, S.A. DE C.V.
407
- wmi: 3R9
408
- wmi_ext: '097'
409
- - name: Interstate West Corporation
410
- wmi: 4RA
411
- wmi_ext:
412
- - name: HONDA MANUFACTURING OF ALABAMA
413
- wmi: 5FS
414
- wmi_ext:
415
- - name: IMECA S.R.L.
416
- wmi: 8C9
417
- wmi_ext: ME1
418
- - name: FIAT DIESEL BRASIL S/A
419
- wmi: 9BE
420
- wmi_ext:
421
- - name: WOODGATE HOLDINGS LIMITED
422
- wmi: DLA
423
- wmi_ext:
424
- - name: SOMACOA (STE. MALGACHE DE
425
- wmi: GA1
426
- wmi_ext:
427
- - name: ISUZU MOTORS LIMITED
428
- wmi: J81
429
- wmi_ext:
430
- - name: HYUNDAI MOTOR CO LTD
431
- wmi: KPH
432
- wmi_ext:
433
- - name: SSANGYONG MOTOR COMPANY
434
- wmi: KPL
435
- wmi_ext:
436
- - name: HUBEI CHILE AUTOMOBILE CO.LTD
437
- wmi: L1C
438
- wmi_ext:
439
- - name: SICHUAN LESHAN BUS WORKS
440
- wmi: LLD
441
- wmi_ext:
442
- - name: HERO HONDA MOTORS LTD
443
- wmi: MB4
444
- wmi_ext:
445
- - name: AEON MOTOR CO., LTD.
446
- wmi: RF3
447
- wmi_ext:
448
- - name: CHYONG HORNG ENTERPRISE CO., LTD.
449
- wmi: RF4
450
- wmi_ext:
451
- - name: YULON MOTOR CO., LTD.
452
- wmi: RF5
453
- wmi_ext:
454
- - name: DIN-LI METAL INDUSTRIAL CO LTD
455
- wmi: RFW
456
- wmi_ext:
457
- - name: JAGUAR CARS LTD
458
- wmi: SAJ
459
- wmi_ext:
460
- - name: LAND ROVER GROUP LTD
461
- wmi: SAL
462
- wmi_ext:
463
- - name: ROVER GROUP LTD
464
- wmi: SAR
465
- wmi_ext:
466
- - name: ZAKLAD BUDOWY I REMONTOW NACZEP WIE
467
- wmi: SU9
468
- wmi_ext: WL1
469
- - name: SANOCKA FABRYKA AUTOBUSOW SFA
470
- wmi: SUA
471
- wmi_ext:
472
- - name: Z.P.U.P.S. TRAMP TRAIL
473
- wmi: SUB
474
- wmi_ext:
475
- - name: WYTWORNIA POJAZDOW MELEX
476
- wmi: SXM
477
- wmi_ext:
478
- - name: MOWAG
479
- wmi: TAM
480
- wmi_ext:
481
- - name: CSEPEL AUTOGYAR
482
- wmi: TRC
483
- wmi_ext:
484
- - name: AUTOMOBILES TALBOT
485
- wmi: VF4
486
- wmi_ext:
487
- - name: IVECO UNIC SA
488
- wmi: VF5
489
- wmi_ext:
490
- - name: RENAULT VEHICULES INDUSTRIELS
491
- wmi: VF6
492
- wmi_ext:
493
- - name: KIBO KOMMUNALMASCHINEN GMBH & CO.KG
494
- wmi: W09
495
- wmi_ext: K10
496
- - name: BMW MOTORSPORT GMBH
497
- wmi: WBS
498
- wmi_ext:
499
- - name: P. BARTHAU STAHLBAU
500
- wmi: WBT
501
- wmi_ext:
502
- - name: BMW AG
503
- wmi: WBW
504
- wmi_ext:
505
- - name: DAIMLERCHRYLSER AG
506
- wmi: WD2
507
- wmi_ext:
508
- - name: DAIMLERCHRYSLER AG
509
- wmi: WD3
510
- wmi_ext:
511
- - name: MANDOS S.A.
512
- wmi: XF9
513
- wmi_ext: D41
373
+ - [ 'MARQUESS ELECTRIC CAR COMPANY', '15E', null ]
374
+ - [ 'AJAX MANUFACTURING COMPANY, INC.', '1A9', '396' ]
375
+ - [ 'DAIMLERCHRYSLER CORPORATION', '1B6', null ]
376
+ - [ 'BAY EQUIPMENT & REPAIR', '1B9', '290' ]
377
+ - [ "CHOPPER GUY'S, INC.", '1C9', '564' ]
378
+ - [ 'COMMERCIAL MOBILE SYSTEMS', '1C9', 'ACA' ]
379
+ - [ 'FORD MOTOR COMPANY', '1F1', null ]
380
+ - [ 'AMERICAN TRANSPORTATION CORPORATION', '1F8', null ]
381
+ - [ 'FMC CORP', '1F9', '041' ]
382
+ - [ 'GENERAL MOTORS CORPORATION', '1G8', null ]
383
+ - [ 'AUTOMOTRIZ PEYCHA, S.A. DE C.V.', '3A9', '068' ]
384
+ - [ 'REGIOBUS, S.A. DE C.V.', '3R9', '097' ]
385
+ - [ 'Interstate West Corporation', '4RA', null ]
386
+ - [ 'HONDA MANUFACTURING OF ALABAMA', '5FS', null ]
387
+ - [ 'IMECA S.R.L.', '8C9', 'ME1' ]
388
+ - [ 'FIAT DIESEL BRASIL S/A', '9BE', null ]
389
+ - [ 'WOODGATE HOLDINGS LIMITED', 'DLA', null ]
390
+ - [ 'SOMACOA (STE. MALGACHE DE', 'GA1', null ]
391
+ - [ 'ISUZU MOTORS LIMITED', 'J81', null ]
392
+ - [ 'HYUNDAI MOTOR CO LTD', 'KPH', null ]
393
+ - [ 'SSANGYONG MOTOR COMPANY', 'KPL', null ]
394
+ - [ 'HUBEI CHILE AUTOMOBILE CO.LTD', 'L1C', null ]
395
+ - [ 'SICHUAN LESHAN BUS WORKS', 'LLD', null ]
396
+ - [ 'HERO HONDA MOTORS LTD', 'MB4', null ]
397
+ - [ 'AEON MOTOR CO., LTD.', 'RF3', null ]
398
+ - [ 'CHYONG HORNG ENTERPRISE CO., LTD.', 'RF4', null ]
399
+ - [ 'YULON MOTOR CO., LTD.', 'RF5', null ]
400
+ - [ 'DIN-LI METAL INDUSTRIAL CO LTD', 'RFW', null ]
401
+ - [ 'JAGUAR CARS LTD', 'SAJ', null ]
402
+ - [ 'LAND ROVER GROUP LTD', 'SAL', null ]
403
+ - [ 'ROVER GROUP LTD', 'SAR', null ]
404
+ - [ 'ZAKLAD BUDOWY I REMONTOW NACZEP WIE', 'SU9', 'WL1' ]
405
+ - [ 'SANOCKA FABRYKA AUTOBUSOW SFA', 'SUA', null ]
406
+ - [ 'Z.P.U.P.S. TRAMP TRAIL', 'SUB', null ]
407
+ - [ 'WYTWORNIA POJAZDOW MELEX', 'SXM', null ]
408
+ - [ 'MOWAG', 'TAM', null ]
409
+ - [ 'CSEPEL AUTOGYAR', 'TRC', null ]
410
+ - [ 'AUTOMOBILES TALBOT', 'VF4', null ]
411
+ - [ 'IVECO UNIC SA', 'VF5', null ]
412
+ - [ 'RENAULT VEHICULES INDUSTRIELS', 'VF6', null ]
413
+ - [ 'KIBO KOMMUNALMASCHINEN GMBH & CO.KG', 'W09', 'K10' ]
414
+ - [ 'BMW MOTORSPORT GMBH', 'WBS', null ]
415
+ - [ 'P. BARTHAU STAHLBAU', 'WBT', null ]
416
+ - [ 'BMW AG', 'WBW', null ]
417
+ - [ 'DAIMLERCHRYLSER AG', 'WD2', null ]
418
+ - [ 'DAIMLERCHRYSLER AG', 'WD3', null ]
419
+ - [ 'MANDOS S.A.', 'XF9', 'D41' ]
514
420
 
515
421
  file:
516
422
  extension: ["flac", "mp3", "wav", "bmp", "gif", "jpeg", "jpg", "png", "tiff", "css", "csv", "html", "js", "json", "txt", "mp4", "avi", "mov", "webm", "doc", "docx", "xls", "xlsx", "ppt", "pptx", "odt", "ods", "odp", "pages", "numbers", "key", "pdf"]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: faker
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.1
4
+ version: 1.7.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Benjamin Curtis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-12-25 00:00:00.000000000 Z
11
+ date: 2017-01-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: i18n