french_populate 0.1.0

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.
@@ -0,0 +1,3 @@
1
+ module FrenchPopulate
2
+ VERSION = "0.1.0"
3
+ end
@@ -0,0 +1,106 @@
1
+ # coding: utf-8
2
+ require "french_populate/version"
3
+
4
+ class Populate
5
+
6
+ # Load datas
7
+ require "datas.rb"
8
+
9
+ ## VARIABLES ##
10
+ $shortTitles = ["Mr", "Mlle", "Me"]
11
+ $longTitles = ["Monsieur", "Mademoiselle", "Madame"]
12
+ $emailExtension = ["com", "fr", "org", "net", "be"]
13
+ $emailDNS = ["infonie", "aliceadsl", "tiscali", "free", "orange", "lycos"]
14
+
15
+ ## NAMES ##
16
+ # Return a people title (short version. ex. "Mr")
17
+ def GetShortTitle
18
+ self.shortTitles.sample
19
+ end
20
+
21
+ # Return a people title (long version.ex. "Monsieur")
22
+ def GetLongTitle
23
+ self.longTitles.sample
24
+ end
25
+
26
+ # Return a fake last name
27
+ def GetLastName
28
+ $namesBDD.sample.split("-").map(&:capitalize).join("-")
29
+ end
30
+
31
+ # Return a fake first name
32
+ def GetFirstName
33
+ $namesBDD.sample.split("-").map(&:capitalize).join("-")
34
+ end
35
+
36
+ # Return a fake full name (firstname + name)
37
+ def GetFullName
38
+ self.GetFirstName + " " + self.GetLastName
39
+ end
40
+
41
+ ## PLACES ##
42
+ # Return a fake street number
43
+ def GetStreetNumber
44
+ rand(1..150).to_s
45
+ end
46
+
47
+ # Return a fake street name
48
+ def GetStreetName
49
+ $streetsBDD.sample
50
+ end
51
+
52
+ # Return a fake zipcode
53
+ def GetZipCode
54
+ zipcode = rand(1000..95999).to_s
55
+ if zipcode.length == 4
56
+ zipcode = "0" + zipcode
57
+ end
58
+ zipcode
59
+ end
60
+
61
+ # Return a fake city
62
+ def GetCity
63
+ $citiesBDD.sample
64
+ end
65
+
66
+ # Return a fake country
67
+ def GetCountry
68
+ $countriesBDD.sample
69
+ end
70
+
71
+ # Return a fake full adsress (street number, street name, zipcode, city)
72
+ def GetFullAddress
73
+ self.GetStreetNumber + " " + self.GetStreetName + " " + self.GetZipCode + " " + self.GetCity
74
+ end
75
+
76
+ # Return a fake full international address (street number, street name, zipcode, city, country)
77
+ def GetFullInternationalAddress
78
+ self.GetFullAddress + ", " + self.GetCountry
79
+ end
80
+
81
+ ## INTERNET
82
+ # Return a fake email
83
+ def GetEmail
84
+ (self.GetFirstName + "." + self.GetLastName + "@" + $emailDNS.sample + "." + $emailExtension.sample).downcase
85
+ end
86
+
87
+ # Return a fake username
88
+ def GetUsername
89
+ tempNumber = rand(1..9)
90
+ # If the number is pair... or impair
91
+ tempNumber % 2 == 0 ? tempNumber = 2 : tempNumber = 3
92
+ tempEndNumber = case tempNumber
93
+ when 2 then 4
94
+ when 3 then 2
95
+ end
96
+ (self.GetFirstName.byteslice(1..tempNumber) + self.GetLastName.byteslice(1..tempNumber) + self.GetZipCode.byteslice(1..tempEndNumber)).downcase
97
+ end
98
+
99
+ # Return a fake unique username
100
+ def GetUniqueUsername
101
+ tempNumber = rand(1..9)
102
+ # If the number is pair... or impair
103
+ tempNumber % 2 == 0 ? tempNumber = 2 : tempNumber = 3
104
+ (self.GetFirstName.byteslice(1..tempNumber) + self.GetLastName.byteslice(1..tempNumber) + Time.now.to_i.to_s.byteslice(5..9)).downcase
105
+ end
106
+ end
metadata ADDED
@@ -0,0 +1,88 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: french_populate
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Ludovic Jamet
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-09-08 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: bundler
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '1.3'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '1.3'
30
+ - !ruby/object:Gem::Dependency
31
+ name: rake
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :development
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ description: Populate your database with fake french informations
47
+ email:
48
+ - jamet.ludovic@gmail.com
49
+ executables: []
50
+ extensions: []
51
+ extra_rdoc_files: []
52
+ files:
53
+ - .gitignore
54
+ - Gemfile
55
+ - LICENSE
56
+ - README.md
57
+ - Rakefile
58
+ - french-populate.sublime-workspace
59
+ - french_populate.gemspec
60
+ - lib/datas.rb
61
+ - lib/french_populate.rb
62
+ - lib/french_populate/version.rb
63
+ homepage: https://github.com/revlam/french-populate
64
+ licenses:
65
+ - Apache v2
66
+ post_install_message:
67
+ rdoc_options: []
68
+ require_paths:
69
+ - lib
70
+ required_ruby_version: !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ! '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ required_rubygems_version: !ruby/object:Gem::Requirement
77
+ none: false
78
+ requirements:
79
+ - - ! '>='
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ requirements: []
83
+ rubyforge_project:
84
+ rubygems_version: 1.8.23
85
+ signing_key:
86
+ specification_version: 3
87
+ summary: French invasion in your rails app !
88
+ test_files: []