namey 0.0.2 → 0.0.5

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.
Files changed (74) hide show
  1. data/Gemfile +22 -1
  2. data/README.markdown +105 -0
  3. data/Rakefile +54 -0
  4. data/api/Gemfile +10 -0
  5. data/api/config.ru +8 -0
  6. data/api/namey_app.rb +50 -0
  7. data/api/public/LICENSE +176 -0
  8. data/api/public/Makefile +30 -0
  9. data/api/public/README.md +105 -0
  10. data/api/public/api.js +76 -0
  11. data/api/public/bootstrap.css +2467 -0
  12. data/api/public/bootstrap.min.css +356 -0
  13. data/api/public/docs/assets/css/docs.css +317 -0
  14. data/api/public/docs/assets/ico/bootstrap-apple-114x114.png +0 -0
  15. data/api/public/docs/assets/ico/bootstrap-apple-57x57.png +0 -0
  16. data/api/public/docs/assets/ico/bootstrap-apple-72x72.png +0 -0
  17. data/api/public/docs/assets/ico/favicon.ico +0 -0
  18. data/api/public/docs/assets/img/bird.png +0 -0
  19. data/api/public/docs/assets/img/browsers.png +0 -0
  20. data/api/public/docs/assets/img/example-diagram-01.png +0 -0
  21. data/api/public/docs/assets/img/example-diagram-02.png +0 -0
  22. data/api/public/docs/assets/img/example-diagram-03.png +0 -0
  23. data/api/public/docs/assets/img/grid-18px.png +0 -0
  24. data/api/public/docs/assets/img/twitter-logo-no-bird.png +0 -0
  25. data/api/public/docs/assets/js/application.js +52 -0
  26. data/api/public/docs/assets/js/google-code-prettify/prettify.css +94 -0
  27. data/api/public/docs/assets/js/google-code-prettify/prettify.js +28 -0
  28. data/api/public/docs/index.html +2037 -0
  29. data/api/public/docs/javascript.html +798 -0
  30. data/api/public/examples/container-app.html +119 -0
  31. data/api/public/examples/fluid.html +122 -0
  32. data/api/public/examples/hero.html +79 -0
  33. data/api/public/js/bootstrap-alerts.js +113 -0
  34. data/api/public/js/bootstrap-buttons.js +62 -0
  35. data/api/public/js/bootstrap-dropdown.js +55 -0
  36. data/api/public/js/bootstrap-modal.js +260 -0
  37. data/api/public/js/bootstrap-popover.js +86 -0
  38. data/api/public/js/bootstrap-scrollspy.js +107 -0
  39. data/api/public/js/bootstrap-tabs.js +80 -0
  40. data/api/public/js/bootstrap-twipsy.js +310 -0
  41. data/api/public/js/tests/index.html +40 -0
  42. data/api/public/js/tests/unit/bootstrap-alerts.js +41 -0
  43. data/api/public/js/tests/unit/bootstrap-buttons.js +42 -0
  44. data/api/public/js/tests/unit/bootstrap-dropdown.js +52 -0
  45. data/api/public/js/tests/unit/bootstrap-modal.js +151 -0
  46. data/api/public/js/tests/unit/bootstrap-popover.js +76 -0
  47. data/api/public/js/tests/unit/bootstrap-scrollspy.js +31 -0
  48. data/api/public/js/tests/unit/bootstrap-tabs.js +77 -0
  49. data/api/public/js/tests/unit/bootstrap-twipsy.js +81 -0
  50. data/api/public/js/tests/vendor/qunit.css +232 -0
  51. data/api/public/js/tests/vendor/qunit.js +1510 -0
  52. data/api/public/lib/bootstrap.less +26 -0
  53. data/api/public/lib/forms.less +479 -0
  54. data/api/public/lib/mixins.less +222 -0
  55. data/api/public/lib/patterns.less +1060 -0
  56. data/api/public/lib/reset.less +141 -0
  57. data/api/public/lib/scaffolding.less +137 -0
  58. data/api/public/lib/tables.less +224 -0
  59. data/api/public/lib/type.less +187 -0
  60. data/api/public/lib/variables.less +60 -0
  61. data/api/public/ui.js +42 -0
  62. data/api/views/index.erb +211 -0
  63. data/bin/{load-data → namey-load-data} +7 -1
  64. data/bin/random-name +4 -1
  65. data/data/dist.all.last +88799 -0
  66. data/data/names.db +0 -0
  67. data/lib/namey.rb +12 -5
  68. data/lib/namey/generator.rb +79 -10
  69. data/lib/namey/parser.rb +79 -16
  70. data/lib/namey/version.rb +2 -1
  71. data/namey.gemspec +8 -2
  72. data/spec/generator_spec.rb +54 -0
  73. data/spec/spec_helper.rb +19 -0
  74. metadata +95 -9
Binary file
@@ -1,17 +1,24 @@
1
- require 'sqlite3'
2
-
3
1
  module Namey
4
2
  def self.db_path
5
- @@db_path
3
+ @@db_path ||= "sqlite://#{File.join(self.libdir, "..", "data", "names.db")}"
6
4
  end
7
5
  def self.db_path=(x)
8
6
  @@db_path = x
9
7
  end
8
+
9
+
10
+ require 'namey/version'
10
11
 
12
+ # Return a directory with the project libraries.
13
+ def self.libdir
14
+ t = ["#{File.expand_path(File.dirname(__FILE__))}", "#{Gem.dir}/gems/#{Namey::NAME}-#{Namey::VERSION}"]
15
+
16
+ t.each {|i| return i if File.readable?(i) }
17
+ raise "both paths are invalid: #{t}"
18
+ end
11
19
 
12
- # Your code goes here...
13
- @@db_path = File.join(File.dirname(__FILE__), "..", "data", "names.db")
14
20
 
21
+
15
22
  require 'namey/generator'
16
23
  end
17
24
 
@@ -1,39 +1,80 @@
1
+ require 'sequel'
2
+
1
3
  module Namey
4
+
5
+ #
6
+ # Main class for namey, handles generating a name.
7
+ #
2
8
  class Generator
3
9
 
4
- def initialize(dbname = Namey.db_path)
5
- @db = SQLite3::Database.open dbname
10
+ #
11
+ # initialize the name generator
12
+ # * +dbname+ - Sequel style db URI ex: 'sqlite://foo.db'
13
+ def initialize(dbname = nil)
14
+ dbname = Namey.db_path if dbname.nil?
15
+ @db = Sequel.connect(dbname)
6
16
  end
7
17
 
18
+ #
19
+ # generate a name
20
+ #
21
+ # * +frequency+ - :common, :rare, :all
22
+ # * +surname+ - true if you want a full name, false if you just want a first name
8
23
  def name(frequency = :common, surname = true)
9
- method = rand > 0.5 ? :male : :female
10
- send(method, frequency, surname)
24
+ generate(:frequency => frequency, :with_surname =>surname)
11
25
  end
12
26
 
27
+ #
28
+ # generate a male name
29
+ #
30
+ # * +frequency+ - :common, :rare, :all
31
+ # * +surname+ - true if you want a full name, false if you just want a first name
13
32
  def male(frequency = :common, surname = true)
14
33
  generate(:type => :male, :frequency => frequency, :with_surname => surname)
15
34
  end
16
35
 
36
+ #
37
+ # generate a female name
38
+ #
39
+ # * +frequency+ - :common, :rare, :all
40
+ # * +surname+ - true if you want a full name, false if you just want a first name
17
41
  def female(frequency = :common, surname = true)
18
42
  generate(:type => :female, :frequency => frequency, :with_surname => surname)
19
43
  end
20
44
 
45
+ #
46
+ # generate a surname
47
+ #
48
+ # * +frequency+ - :common, :rare, :all
21
49
  def surname(frequency = :common)
22
50
  generate(:type => :surname, :frequency => frequency)
23
51
  end
24
52
 
53
+ #
54
+ # generate a name using the supplied parameter hash
55
+ #
56
+ # * +params+ - A hash of parameters
57
+ #
58
+ # ==== Params
59
+ # * +:type+ - :male, :female, :surname
60
+ # * +:frequency+ - :common, :rare, :all
61
+ # * +:min_freq+ - raw frequency values to specify a precise range
62
+ # * +:max_freq+ - raw frequency values to specify a precise range
25
63
  def generate(params = {})
26
64
  params = {
27
- :type => :female,
65
+ :type => random_gender,
28
66
  :frequency => :common,
29
67
  :with_surname => true
30
68
  }.merge(params)
31
69
 
70
+
32
71
  if ! ( params[:min_freq] || params[:max_freq] )
33
72
  params[:min_freq], params[:max_freq] = frequency_values(params[:frequency])
34
73
  end
35
74
 
36
75
  name = get_name(params[:type], params[:min_freq], params[:max_freq])
76
+
77
+ # add surname if needed
37
78
  if params[:type] != :surname && params[:with_surname] == true
38
79
  name = "#{name} #{get_name(:surname, params[:min_freq], params[:max_freq])}"
39
80
  end
@@ -41,6 +82,13 @@ module Namey
41
82
  end
42
83
 
43
84
 
85
+ protected
86
+
87
+ #
88
+ # generate a set of min/max frequency values for the specified
89
+ # frequency symbol
90
+ #
91
+ # * +f+ - desired frequency range -- :common, :rare, :all
44
92
  def frequency_values(f)
45
93
  low = case f
46
94
  when :common then 0
@@ -59,13 +107,34 @@ module Namey
59
107
  [ low, high ]
60
108
  end
61
109
 
62
- protected
63
- def get_name(src, min_freq = 0, max_freq = 100)
64
- @db.get_first_row("SELECT name FROM #{src.to_s} WHERE freq > ? AND freq < ? ORDER BY RANDOM() LIMIT 1;",
65
- min_freq, max_freq).first
110
+
111
+
112
+ #
113
+ # pick a gender at random
114
+ #
115
+ def random_gender
116
+ rand > 0.5 ? :male : :female
66
117
  end
67
118
 
119
+ #
120
+ # randomly sort a result set according to the data adapter class
121
+ #
122
+ def random_sort(set)
68
123
 
69
-
124
+ # this is a bit of a hack obviously, but it checks the sort of data engine being used
125
+ # to figure out how to randomly sort
126
+ if @db.class.name == "Sequel::SQLite::Database"
127
+ set.order{RANDOM{}}
128
+ else
129
+ set.order{RAND{}}
130
+ end
131
+ end
132
+
133
+ #
134
+ # query the db for a name
135
+ #
136
+ def get_name(src, min_freq = 0, max_freq = 100)
137
+ random_sort(@db[src.to_sym].filter{(freq >= min_freq) & (freq <= max_freq)}).first[:name]
138
+ end
70
139
  end
71
140
  end
@@ -1,52 +1,115 @@
1
+ require 'sequel'
2
+
1
3
  module Namey
4
+
5
+ #
6
+ # parse the census bureau data files and load into our datasource
7
+ #
2
8
  class Parser
3
9
 
4
10
  attr_accessor :db
5
11
 
6
- def initialize(dbname)
7
- # Open a database
8
- @db = SQLite3::Database.new dbname
12
+ #
13
+ # initialize the parser
14
+ # dbname - Sequel style db URI ex: 'sqlite://foo.db'
15
+ #
16
+ def initialize(dbname = Namey.db_path)
17
+ @db = Sequel.connect(dbname)
9
18
  end
10
19
 
20
+ #
21
+ # load in the male name list
22
+ #
11
23
  def load_male_names(src)
12
24
  parse_file(src, "male")
13
25
  end
14
26
 
27
+ #
28
+ # load in the female name list
29
+ #
15
30
  def load_female_names(src)
16
31
  parse_file(src, "female")
17
32
  end
18
33
 
34
+ #
35
+ # load in the surname list
36
+ #
19
37
  def load_surnames(src)
20
38
  parse_file(src, "surname")
21
39
  end
22
40
 
23
41
  protected
42
+
43
+ #
44
+ # parse a census file. it will have the format:
45
+ # name freq cumulative rank
46
+ # MARY 2.629 2.629 1
47
+ # PATRICIA 1.073 3.702 2
48
+ # LINDA 1.035 4.736 3
49
+ #
50
+ # we only need the name and the frequency, parse those out and
51
+ # insert into specified table
52
+ #
53
+ # src - which file to parse
54
+ # dest - which table to load into
24
55
  def parse_file(src, dest)
25
56
  create_table(dest)
26
57
 
27
- file = File.new(src, "r")
28
- while (line = file.gets)
58
+ puts "***** Importing #{dest}"
59
+
60
+ count = 0
61
+ names = File.foreach(src).collect do |line|
62
+ count += 1
63
+ if count % 2000 == 0
64
+ puts count
65
+ end
66
+
29
67
  data = line.split
30
68
 
31
69
  name = data.first.capitalize
32
70
  freq = data[2].to_f
33
71
 
34
- if dest == "surname"
35
- name = cleanup_surname(name)
36
- end
37
-
38
- puts "#{name} #{freq}"
39
- @db.execute "insert into #{dest} (name, freq) values ( ?, ? )", name, freq
72
+ name = if dest == "surname"
73
+ cleanup_surname(name)
74
+ else
75
+ cleanup_firstname(name)
76
+ end
77
+
78
+ {:name => name, :freq => freq}
40
79
  end
41
- file.close
80
+
81
+ puts "loading into db"
82
+
83
+ # remove any existing records
84
+ @db[dest.to_sym].truncate
85
+
86
+ # insert!
87
+ @db[dest.to_sym].multi_insert(names)
42
88
  end
43
89
 
90
+ #
91
+ # create a name table
92
+ #
44
93
  def create_table(name)
45
- # Create a database
46
- @db.execute "drop table IF EXISTS #{name};"
47
- @db.execute "create table #{name} (name varchar(20), freq REAL);"
94
+ if ! db.tables.include?(name)
95
+ db.create_table name do
96
+ String :name, :size => 15
97
+ Float :freq
98
+ index :freq
99
+ end
100
+ end
101
+ end
102
+
103
+ #
104
+ # apply some simple regexps to clean up first names
105
+ #
106
+ def cleanup_firstname(name)
107
+ name.gsub(/^Dean(\w+)/) { |s| "DeAn#{$1}" }
48
108
  end
49
109
 
110
+ #
111
+ # apply some simple regexps to clean up surnames
112
+ #
50
113
  def cleanup_surname(name)
51
114
  if name.length > 4
52
115
  name.gsub!(/^Mc(\w+)/) { |s| "Mc#{$1.capitalize}" }
@@ -55,7 +118,7 @@ module Namey
55
118
  name.gsub!(/^Osh(\w+)/) { |s| "O'sh#{$1}" }
56
119
  name.gsub!(/^Van(\w+)/) { |s| "Van#{$1.capitalize}" }
57
120
  name.gsub!(/^Von(\w+)/) { |s| "Von#{$1.capitalize}" }
58
- name.gsub!(/^De(\w+)/) { |s| "De#{$1.capitalize}" }
121
+ # name.gsub!(/^Dev(\w+)/) { |s| "DeV#{$1}" }
59
122
  end
60
123
  name
61
124
  end
@@ -1,3 +1,4 @@
1
1
  module Namey
2
- VERSION = "0.0.2"
2
+ NAME = "namey"
3
+ VERSION = "0.0.5"
3
4
  end
@@ -23,15 +23,21 @@ Gem::Specification.new do |s|
23
23
  s.specification_version = 3
24
24
 
25
25
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
26
+ s.add_runtime_dependency(%q<sequel>, [">= 0"])
26
27
  s.add_runtime_dependency(%q<sqlite3>, [">= 0"])
27
28
  s.add_development_dependency(%q<shoulda>, [">= 0"])
29
+ s.add_development_dependency(%q<yard>, [">= 0"])
28
30
  else
29
- s.add_dependency(%q<sqlite3>, [">= 0"])
31
+ s.add_dependency(%q<sequel>, [">= 0"])
32
+ s.add_dependency(%q<sqlite3>, [">= 0"])
30
33
  s.add_dependency(%q<shoulda>, [">= 0"])
34
+ s.add_dependency(%q<yard>, [">= 0"])
31
35
  end
32
36
  else
33
- s.add_dependency(%q<sqlite3>, [">= 0"])
37
+ s.add_dependency(%q<sequel>, [">= 0"])
38
+ s.add_dependency(%q<sqlite3>, [">= 0"])
34
39
  s.add_dependency(%q<shoulda>, [">= 0"])
40
+ s.add_dependency(%q<yard>, [">= 0"])
35
41
  end
36
42
  end
37
43
 
@@ -0,0 +1,54 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
+
3
+ describe "Namey::Generator" do
4
+ before(:each) do
5
+ @uri = "sqlite:/"
6
+ @gen = Namey::Generator.new(@uri)
7
+ end
8
+
9
+ describe "name" do
10
+ it "should pass params to generate" do
11
+ @gen.should_receive(:generate).with(:frequency => :common, :with_surname => true)
12
+ @gen.name
13
+ end
14
+ end
15
+
16
+ describe "male" do
17
+ it "should pass params to generate" do
18
+ @gen.should_receive(:generate).with(:type => :male, :frequency => :common, :with_surname => true)
19
+ @gen.male
20
+ end
21
+ end
22
+
23
+ describe "female" do
24
+ it "should pass params to generate" do
25
+ @gen.should_receive(:generate).with(:type => :female, :frequency => :common, :with_surname => true)
26
+ @gen.female
27
+ end
28
+ end
29
+
30
+ describe "surname" do
31
+ it "should pass params to generate" do
32
+ @gen.should_receive(:generate).with(:type => :surname, :frequency => :common)
33
+ @gen.surname
34
+ end
35
+ end
36
+
37
+ describe "generate" do
38
+ it "should pass to get_name once for surnames" do
39
+ @gen.should_receive(:get_name).with(:surname, 0, 20).and_return("Chuck")
40
+ @gen.generate(:type => :surname).should == "Chuck"
41
+ end
42
+
43
+ it "should pass to get_name once when with_surname is false" do
44
+ @gen.should_receive(:get_name).with(:male, 0, 20).and_return("Chuck")
45
+ @gen.generate(:type => :male, :with_surname => false).should == "Chuck"
46
+ end
47
+
48
+ it "should pass to get_name twice for full names" do
49
+ @gen.should_receive(:get_name).with(:male, 0, 20).and_return("Chuck")
50
+ @gen.should_receive(:get_name).with(:surname, 0, 20).and_return("Smith")
51
+ @gen.generate(:type => :male).should == "Chuck Smith"
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,19 @@
1
+ require 'simplecov'
2
+ SimpleCov.start
3
+ #$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
4
+ #$LOAD_PATH.unshift(File.dirname(__FILE__))
5
+
6
+ require 'bundler/setup'
7
+ Bundler.require
8
+
9
+ #require 'rspec'
10
+ #require 'chatterbot'
11
+
12
+ require 'tempfile'
13
+ require 'sqlite3'
14
+
15
+
16
+ # Requires supporting files with custom matchers and macros, etc,
17
+ # in ./support/ and its subdirectories.
18
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
19
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: namey
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-07-13 00:00:00.000000000Z
12
+ date: 2011-11-09 00:00:00.000000000Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: sequel
16
+ requirement: &17389620 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *17389620
14
25
  - !ruby/object:Gem::Dependency
15
26
  name: sqlite3
16
- requirement: &13358580 !ruby/object:Gem::Requirement
27
+ requirement: &17389120 !ruby/object:Gem::Requirement
17
28
  none: false
18
29
  requirements:
19
30
  - - ! '>='
@@ -21,10 +32,21 @@ dependencies:
21
32
  version: '0'
22
33
  type: :runtime
23
34
  prerelease: false
24
- version_requirements: *13358580
35
+ version_requirements: *17389120
25
36
  - !ruby/object:Gem::Dependency
26
37
  name: shoulda
27
- requirement: &13358080 !ruby/object:Gem::Requirement
38
+ requirement: &17388640 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *17388640
47
+ - !ruby/object:Gem::Dependency
48
+ name: yard
49
+ requirement: &17388160 !ruby/object:Gem::Requirement
28
50
  none: false
29
51
  requirements:
30
52
  - - ! '>='
@@ -32,22 +54,83 @@ dependencies:
32
54
  version: '0'
33
55
  type: :development
34
56
  prerelease: false
35
- version_requirements: *13358080
57
+ version_requirements: *17388160
36
58
  description: Simple name generator, which can generate male/female names based on
37
59
  US Census Data
38
60
  email:
39
61
  - colin@muffinlabs.com
40
62
  executables:
41
- - load-data
63
+ - namey-load-data
42
64
  - random-name
43
65
  extensions: []
44
66
  extra_rdoc_files: []
45
67
  files:
46
68
  - .gitignore
47
69
  - Gemfile
70
+ - README.markdown
48
71
  - Rakefile
49
- - bin/load-data
72
+ - api/Gemfile
73
+ - api/config.ru
74
+ - api/namey_app.rb
75
+ - api/public/LICENSE
76
+ - api/public/Makefile
77
+ - api/public/README.md
78
+ - api/public/api.js
79
+ - api/public/bootstrap.css
80
+ - api/public/bootstrap.min.css
81
+ - api/public/docs/assets/css/docs.css
82
+ - api/public/docs/assets/ico/bootstrap-apple-114x114.png
83
+ - api/public/docs/assets/ico/bootstrap-apple-57x57.png
84
+ - api/public/docs/assets/ico/bootstrap-apple-72x72.png
85
+ - api/public/docs/assets/ico/favicon.ico
86
+ - api/public/docs/assets/img/bird.png
87
+ - api/public/docs/assets/img/browsers.png
88
+ - api/public/docs/assets/img/example-diagram-01.png
89
+ - api/public/docs/assets/img/example-diagram-02.png
90
+ - api/public/docs/assets/img/example-diagram-03.png
91
+ - api/public/docs/assets/img/grid-18px.png
92
+ - api/public/docs/assets/img/twitter-logo-no-bird.png
93
+ - api/public/docs/assets/js/application.js
94
+ - api/public/docs/assets/js/google-code-prettify/prettify.css
95
+ - api/public/docs/assets/js/google-code-prettify/prettify.js
96
+ - api/public/docs/index.html
97
+ - api/public/docs/javascript.html
98
+ - api/public/examples/container-app.html
99
+ - api/public/examples/fluid.html
100
+ - api/public/examples/hero.html
101
+ - api/public/js/bootstrap-alerts.js
102
+ - api/public/js/bootstrap-buttons.js
103
+ - api/public/js/bootstrap-dropdown.js
104
+ - api/public/js/bootstrap-modal.js
105
+ - api/public/js/bootstrap-popover.js
106
+ - api/public/js/bootstrap-scrollspy.js
107
+ - api/public/js/bootstrap-tabs.js
108
+ - api/public/js/bootstrap-twipsy.js
109
+ - api/public/js/tests/index.html
110
+ - api/public/js/tests/unit/bootstrap-alerts.js
111
+ - api/public/js/tests/unit/bootstrap-buttons.js
112
+ - api/public/js/tests/unit/bootstrap-dropdown.js
113
+ - api/public/js/tests/unit/bootstrap-modal.js
114
+ - api/public/js/tests/unit/bootstrap-popover.js
115
+ - api/public/js/tests/unit/bootstrap-scrollspy.js
116
+ - api/public/js/tests/unit/bootstrap-tabs.js
117
+ - api/public/js/tests/unit/bootstrap-twipsy.js
118
+ - api/public/js/tests/vendor/qunit.css
119
+ - api/public/js/tests/vendor/qunit.js
120
+ - api/public/lib/bootstrap.less
121
+ - api/public/lib/forms.less
122
+ - api/public/lib/mixins.less
123
+ - api/public/lib/patterns.less
124
+ - api/public/lib/reset.less
125
+ - api/public/lib/scaffolding.less
126
+ - api/public/lib/tables.less
127
+ - api/public/lib/type.less
128
+ - api/public/lib/variables.less
129
+ - api/public/ui.js
130
+ - api/views/index.erb
131
+ - bin/namey-load-data
50
132
  - bin/random-name
133
+ - data/dist.all.last
51
134
  - data/dist.female.first
52
135
  - data/dist.male.first
53
136
  - data/names.db
@@ -56,6 +139,8 @@ files:
56
139
  - lib/namey/parser.rb
57
140
  - lib/namey/version.rb
58
141
  - namey.gemspec
142
+ - spec/generator_spec.rb
143
+ - spec/spec_helper.rb
59
144
  homepage: https://github.com/muffinista/namey
60
145
  licenses: []
61
146
  post_install_message:
@@ -76,8 +161,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
76
161
  version: '0'
77
162
  requirements: []
78
163
  rubyforge_project: namey
79
- rubygems_version: 1.8.3
164
+ rubygems_version: 1.8.6
80
165
  signing_key:
81
166
  specification_version: 3
82
167
  summary: Simple name generator based on US Census Data
83
168
  test_files: []
169
+ has_rdoc: