faker_japanese 0.2.0 → 0.2.1
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/.gitignore +11 -1
- data/.rubocop.yml +9 -0
- data/.travis.yml +20 -0
- data/README.md +3 -0
- data/Rakefile +24 -8
- data/bin/console +11 -0
- data/bin/setup +7 -0
- data/faker_japanese.gemspec +28 -18
- data/lib/faker/japanese.rb +1 -0
- data/lib/faker_japanese.rb +86 -53
- data/lib/faker_japanese/name.rb +14 -10
- data/lib/faker_japanese/version.rb +5 -3
- metadata +112 -28
- data/.rspec +0 -2
- data/spec/lib/faker_japanese_spec.rb +0 -48
- data/spec/spec_helper.rb +0 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8450642b98b063f988190c9243f2e0f528cdc299
|
4
|
+
data.tar.gz: da99c48b06cbc3cdb44f2362b0cad757550aae24
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 77ff0c53aa7530567eb7641d62b6e3c1d2eb8aca39045a7aaf52c1ab649fd84f5a1deaf2fe65d0eaf1e1ce498593d0f67f3f7a9dfbedc094fdddfdb0350f0b1d
|
7
|
+
data.tar.gz: ef3ba64114b11511a469790e3c033214471f5a9bdd9d66bb073d6d36ab1b542f303b622292b796ea752b2bb0d8d9a4a820d91a59698c7f94c10c2d7c737a1c31
|
data/.gitignore
CHANGED
@@ -4,7 +4,8 @@
|
|
4
4
|
.LSOverride
|
5
5
|
|
6
6
|
# Icon must end with two \r
|
7
|
-
Icon
|
7
|
+
Icon
|
8
|
+
|
8
9
|
|
9
10
|
# Thumbnails
|
10
11
|
._*
|
@@ -39,3 +40,12 @@ spec/reports
|
|
39
40
|
test/tmp
|
40
41
|
test/version_tmp
|
41
42
|
tmp
|
43
|
+
|
44
|
+
# Intellij IDEA
|
45
|
+
.idea
|
46
|
+
.idea_modules
|
47
|
+
*.iml
|
48
|
+
*.ipr
|
49
|
+
*.iws
|
50
|
+
*.sc
|
51
|
+
.history
|
data/.rubocop.yml
ADDED
data/.travis.yml
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
language: ruby
|
2
|
+
|
3
|
+
sudo: false
|
4
|
+
|
5
|
+
rvm:
|
6
|
+
- 2.1
|
7
|
+
- 2.2.1
|
8
|
+
- ruby-head
|
9
|
+
|
10
|
+
cache: bundler
|
11
|
+
|
12
|
+
before_install:
|
13
|
+
- gem install bundler -v '1.8.6'
|
14
|
+
|
15
|
+
script: bundle exec rake test
|
16
|
+
|
17
|
+
matrix:
|
18
|
+
allow_failures:
|
19
|
+
- rvm: ruby-head
|
20
|
+
fast_finish: true
|
data/README.md
CHANGED
@@ -1,5 +1,8 @@
|
|
1
1
|
# faker_japanese
|
2
2
|
|
3
|
+
[](https://travis-ci.org/denvazh/faker_japanese)
|
4
|
+
[](https://coveralls.io/github/denvazh/faker_japanese?branch=master)
|
5
|
+
|
3
6
|
Faker extension to generate Japanese names.
|
4
7
|
Provides fake first and last names in kanji, hiragana, katakana and romaji (name written with latin alphabet).
|
5
8
|
It has now around 1500 last names and around 260 first names for both genders.
|
data/Rakefile
CHANGED
@@ -1,15 +1,31 @@
|
|
1
|
-
require
|
2
|
-
require
|
3
|
-
require
|
1
|
+
require 'bundler/gem_tasks'
|
2
|
+
require 'rspec/core/rake_task'
|
3
|
+
require 'rubocop/rake_task'
|
4
|
+
require 'yard'
|
4
5
|
|
5
6
|
RSpec::Core::RakeTask.new
|
6
|
-
task :
|
7
|
-
|
7
|
+
task test: :spec
|
8
|
+
|
9
|
+
# Testing with rspec
|
10
|
+
RSpec::Core::RakeTask.new(:spec) do |task|
|
11
|
+
task.rspec_opts = %w(--color --format documentation)
|
12
|
+
end
|
13
|
+
task test: :spec
|
14
|
+
|
15
|
+
# Use RuboCop to check for code/style offenses
|
16
|
+
desc 'Run RuboCop to validate/lint code'
|
17
|
+
RuboCop::RakeTask.new(:rubocop) do |task|
|
18
|
+
# don't abort rake on failure
|
19
|
+
task.fail_on_error = false
|
20
|
+
end
|
8
21
|
|
9
22
|
# Documentation
|
23
|
+
desc "Generate gem documentation (same as running 'rake yard')"
|
10
24
|
YARD::Rake::YardocTask.new do |t|
|
11
|
-
|
25
|
+
t.files = %w(lib/**/*.rb)
|
26
|
+
t.stats_options = %w(--list-undoc --compact)
|
12
27
|
end
|
28
|
+
task doc: :yard
|
13
29
|
|
14
|
-
#
|
15
|
-
task :
|
30
|
+
# Default Rake task
|
31
|
+
task default: [:rubocop, :spec]
|
data/bin/console
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'bundler/setup'
|
4
|
+
require 'faker_japanese'
|
5
|
+
|
6
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
+
# with your gem easier. You can also use a different console, if you like.
|
8
|
+
|
9
|
+
# Use Pry by default
|
10
|
+
require 'pry'
|
11
|
+
Pry.start
|
data/bin/setup
ADDED
data/faker_japanese.gemspec
CHANGED
@@ -4,24 +4,34 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
4
|
require 'faker_japanese/version'
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
|
-
spec.name
|
8
|
-
spec.version
|
9
|
-
spec.authors
|
10
|
-
spec.email
|
11
|
-
spec.description
|
12
|
-
spec.summary
|
13
|
-
spec.license
|
7
|
+
spec.name = 'faker_japanese'
|
8
|
+
spec.version = Faker::Japanese::VERSION
|
9
|
+
spec.authors = ['Denis Vazhenin']
|
10
|
+
spec.email = ['denis.vazhenin@me.com']
|
11
|
+
spec.description = 'Faker extension providing japanese names'
|
12
|
+
spec.summary = 'Faker extension for japanese names'
|
13
|
+
spec.license = 'MIT'
|
14
14
|
|
15
|
-
spec.
|
16
|
-
spec.
|
17
|
-
|
18
|
-
|
15
|
+
spec.bindir = 'exe'
|
16
|
+
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
17
|
+
f.match(%r{^(test|spec|features)/})
|
18
|
+
end
|
19
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
20
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
21
|
+
spec.require_paths = ['lib']
|
19
22
|
|
20
|
-
spec.
|
21
|
-
spec.add_development_dependency
|
22
|
-
spec.add_development_dependency
|
23
|
-
|
24
|
-
spec.add_development_dependency
|
25
|
-
spec.add_development_dependency
|
26
|
-
|
23
|
+
spec.add_development_dependency 'bundler', '~> 1.8'
|
24
|
+
spec.add_development_dependency 'rake', '~> 10.0'
|
25
|
+
spec.add_development_dependency 'rspec', '~> 3.2.0'
|
26
|
+
spec.add_development_dependency 'rspec-expectations', '~> 3.2.0'
|
27
|
+
spec.add_development_dependency 'rspec-mocks', '~> 3.2.1'
|
28
|
+
spec.add_development_dependency 'awesome_print', '~> 1.6.1'
|
29
|
+
spec.add_development_dependency 'looksee', '~> 3.1.0'
|
30
|
+
spec.add_development_dependency 'pry', '~> 0.10.1'
|
31
|
+
spec.add_development_dependency 'yard', '~> 0.8.7.6'
|
32
|
+
spec.add_development_dependency 'fuubar'
|
33
|
+
spec.add_development_dependency 'coveralls'
|
34
|
+
spec.add_development_dependency 'rubocop'
|
35
|
+
|
36
|
+
spec.add_runtime_dependency 'faker'
|
27
37
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
require_relative '../faker_japanese'
|
data/lib/faker_japanese.rb
CHANGED
@@ -1,68 +1,101 @@
|
|
1
1
|
require 'faker'
|
2
|
+
require 'yaml'
|
2
3
|
|
4
|
+
# Faker
|
3
5
|
module Faker
|
4
|
-
|
5
|
-
|
6
|
+
# Japanese localization for Faker
|
7
|
+
module Japanese
|
8
|
+
# Location on the disk of this script
|
9
|
+
SELFDIR = File.expand_path(File.dirname(__FILE__))
|
6
10
|
|
7
|
-
|
8
|
-
|
11
|
+
# Kanji string
|
12
|
+
class Kanji < String
|
13
|
+
attr_reader :yomi, :kana, :romaji
|
9
14
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
15
|
+
# Create new Kanji string instance
|
16
|
+
# @param [String] kanji string in kanji from
|
17
|
+
# @param [String] yomi string with hiragana readings
|
18
|
+
# @param [String] kana string with katakana readings
|
19
|
+
# @param [String] romaji romanized string
|
20
|
+
def initialize(kanji, yomi, kana, romaji)
|
21
|
+
super(kanji)
|
22
|
+
@yomi = yomi
|
23
|
+
@kana = kana
|
24
|
+
@romaji = romaji
|
25
|
+
end
|
26
|
+
end
|
17
27
|
|
18
|
-
|
19
|
-
|
28
|
+
# Faker Base class
|
29
|
+
class Base
|
30
|
+
class << self
|
31
|
+
# Using callback to store loaded data when subclass is created
|
32
|
+
# @param [Class] klass class name
|
33
|
+
def inherited(klass)
|
34
|
+
fail("#{klass} should be Class") unless klass.is_a? Class
|
35
|
+
klass.class_variable_set '@@data', load_data(klass)
|
36
|
+
end
|
20
37
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
38
|
+
# Convert full class name to lower case string with class name only
|
39
|
+
# @param [Class] klass class name
|
40
|
+
# @return [String]
|
41
|
+
def demodulize(klass)
|
42
|
+
klass.to_s.split('::').last.downcase
|
43
|
+
end
|
25
44
|
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
end
|
36
|
-
else
|
37
|
-
nil
|
38
|
-
end
|
39
|
-
end
|
45
|
+
# Load yml file with minor pre-processing
|
46
|
+
# @param [String] filepath full path to the file
|
47
|
+
# @return [Hash]
|
48
|
+
def load_raw_yaml(filepath)
|
49
|
+
return nil unless filepath && File.readable?(filepath)
|
50
|
+
YAML.load_file(filepath).each_with_object({}) do |(k, v), h|
|
51
|
+
h[k.to_sym] = v
|
52
|
+
end
|
53
|
+
end
|
40
54
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
55
|
+
# Created dictionary with loaded data
|
56
|
+
# @param [Module] klass class name
|
57
|
+
def load_data(klass)
|
58
|
+
datafile = File.join(SELFDIR,
|
59
|
+
'faker_japanese',
|
60
|
+
'data', "#{demodulize(klass)}.yml")
|
61
|
+
data = load_raw_yaml(datafile)
|
62
|
+
return data if data.nil?
|
63
|
+
data.inject({}) do |res, item|
|
64
|
+
key, values = item
|
65
|
+
res.update(key => values.map! { |v| Kanji.new(*v) })
|
66
|
+
end
|
67
|
+
data
|
68
|
+
end
|
46
69
|
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
end
|
70
|
+
# Fetch random value from name dictionary
|
71
|
+
# @param [String] key in the @@data
|
72
|
+
# @return [Kanji]
|
73
|
+
def fetch(key)
|
74
|
+
val = class_variable_get('@@data')[key]
|
75
|
+
val[rand(val.size)]
|
76
|
+
end
|
55
77
|
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
78
|
+
# Swap method if block was evaluated to true
|
79
|
+
# @param [Class] klass name of the class
|
80
|
+
# @param [Symbol] name method name
|
81
|
+
def swap_method(klass, name)
|
82
|
+
original_method = klass.method(name)
|
83
|
+
new_method = method(name)
|
84
|
+
proc = proc { yield ? new_method.call : original_method.call }
|
85
|
+
klass.singleton_class.send(:define_method, name, proc)
|
86
|
+
end
|
62
87
|
|
63
|
-
|
64
|
-
|
65
|
-
|
88
|
+
# Decide which method to use based on value of Faker::Config.locale
|
89
|
+
# @param [Class] klass name of the class
|
90
|
+
# @param [Symbol] name method name
|
91
|
+
def use_japanese_method(klass, name)
|
92
|
+
swap_method(klass, name) do
|
93
|
+
Faker::Config.locale == :ja
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end # << self
|
97
|
+
end # Base
|
98
|
+
end # Japanese
|
66
99
|
end # Faker
|
67
100
|
|
68
101
|
require 'faker_japanese/version'
|
data/lib/faker_japanese/name.rb
CHANGED
@@ -1,26 +1,30 @@
|
|
1
1
|
module Faker
|
2
|
+
# Japanese localization for Faker
|
2
3
|
module Japanese
|
4
|
+
# Name localization
|
3
5
|
class Name < Base
|
4
6
|
class << self
|
5
|
-
|
6
|
-
#
|
7
|
+
# Fake first name
|
8
|
+
# @return [Kanji]
|
7
9
|
def first_name
|
8
10
|
fetch(:first_name)
|
9
11
|
end
|
10
12
|
|
11
|
-
#
|
13
|
+
# Fake last name
|
14
|
+
# @return [Kanji]
|
12
15
|
def last_name
|
13
16
|
fetch(:last_name)
|
14
17
|
end
|
15
18
|
|
16
|
-
#
|
19
|
+
# Fake full name
|
20
|
+
# @return [Kanji] string combining last and first name
|
17
21
|
def name
|
18
|
-
first_name
|
19
|
-
last_name
|
20
|
-
name_kanji
|
21
|
-
name_yomi
|
22
|
-
name_kana
|
23
|
-
name_romaji ="#{last_name.romaji} #{first_name.romaji}"
|
22
|
+
first_name = fetch(:first_name)
|
23
|
+
last_name = fetch(:last_name)
|
24
|
+
name_kanji = "#{last_name} #{first_name}"
|
25
|
+
name_yomi = "#{last_name.yomi} #{first_name.yomi}"
|
26
|
+
name_kana = "#{last_name.kana} #{first_name.kana}"
|
27
|
+
name_romaji = "#{last_name.romaji} #{first_name.romaji}"
|
24
28
|
Kanji.new(name_kanji, name_yomi, name_kana, name_romaji)
|
25
29
|
end
|
26
30
|
end
|
metadata
CHANGED
@@ -1,59 +1,143 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: faker_japanese
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Denis Vazhenin
|
8
8
|
autorequire:
|
9
|
-
bindir:
|
9
|
+
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-10-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
20
|
-
type: :
|
19
|
+
version: '1.8'
|
20
|
+
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '1.8'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '10.0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '10.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
47
|
+
version: 3.2.0
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
54
|
+
version: 3.2.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name: rspec
|
56
|
+
name: rspec-expectations
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 3.2.0
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 3.2.0
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rspec-mocks
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 3.2.1
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 3.2.1
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: awesome_print
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 1.6.1
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 1.6.1
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: looksee
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 3.1.0
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 3.1.0
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: pry
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 0.10.1
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 0.10.1
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: yard
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 0.8.7.6
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 0.8.7.6
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: fuubar
|
57
141
|
requirement: !ruby/object:Gem::Requirement
|
58
142
|
requirements:
|
59
143
|
- - ">="
|
@@ -67,7 +151,7 @@ dependencies:
|
|
67
151
|
- !ruby/object:Gem::Version
|
68
152
|
version: '0'
|
69
153
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
154
|
+
name: coveralls
|
71
155
|
requirement: !ruby/object:Gem::Requirement
|
72
156
|
requirements:
|
73
157
|
- - ">="
|
@@ -81,7 +165,7 @@ dependencies:
|
|
81
165
|
- !ruby/object:Gem::Version
|
82
166
|
version: '0'
|
83
167
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
168
|
+
name: rubocop
|
85
169
|
requirement: !ruby/object:Gem::Requirement
|
86
170
|
requirements:
|
87
171
|
- - ">="
|
@@ -95,13 +179,13 @@ dependencies:
|
|
95
179
|
- !ruby/object:Gem::Version
|
96
180
|
version: '0'
|
97
181
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
182
|
+
name: faker
|
99
183
|
requirement: !ruby/object:Gem::Requirement
|
100
184
|
requirements:
|
101
185
|
- - ">="
|
102
186
|
- !ruby/object:Gem::Version
|
103
187
|
version: '0'
|
104
|
-
type: :
|
188
|
+
type: :runtime
|
105
189
|
prerelease: false
|
106
190
|
version_requirements: !ruby/object:Gem::Requirement
|
107
191
|
requirements:
|
@@ -116,18 +200,20 @@ extensions: []
|
|
116
200
|
extra_rdoc_files: []
|
117
201
|
files:
|
118
202
|
- ".gitignore"
|
119
|
-
- ".
|
203
|
+
- ".rubocop.yml"
|
204
|
+
- ".travis.yml"
|
120
205
|
- Gemfile
|
121
206
|
- LICENSE.txt
|
122
207
|
- README.md
|
123
208
|
- Rakefile
|
209
|
+
- bin/console
|
210
|
+
- bin/setup
|
124
211
|
- faker_japanese.gemspec
|
212
|
+
- lib/faker/japanese.rb
|
125
213
|
- lib/faker_japanese.rb
|
126
214
|
- lib/faker_japanese/data/name.yml
|
127
215
|
- lib/faker_japanese/name.rb
|
128
216
|
- lib/faker_japanese/version.rb
|
129
|
-
- spec/lib/faker_japanese_spec.rb
|
130
|
-
- spec/spec_helper.rb
|
131
217
|
homepage:
|
132
218
|
licenses:
|
133
219
|
- MIT
|
@@ -152,7 +238,5 @@ rubygems_version: 2.2.2
|
|
152
238
|
signing_key:
|
153
239
|
specification_version: 4
|
154
240
|
summary: Faker extension for japanese names
|
155
|
-
test_files:
|
156
|
-
- spec/lib/faker_japanese_spec.rb
|
157
|
-
- spec/spec_helper.rb
|
241
|
+
test_files: []
|
158
242
|
has_rdoc:
|
data/.rspec
DELETED
@@ -1,48 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe Faker::Japanese do
|
4
|
-
|
5
|
-
it "should use native methods when locale is not set to ja" do
|
6
|
-
if (Faker::Config.locale != 'ja')
|
7
|
-
name = Faker::Name.name
|
8
|
-
name.should_not be_nil
|
9
|
-
name.contains_cjk?.should == false
|
10
|
-
first_name = Faker::Name.first_name
|
11
|
-
first_name.should_not be_nil
|
12
|
-
first_name.contains_cjk?.should == false
|
13
|
-
last_name = Faker::Name.first_name
|
14
|
-
last_name.should_not be_nil
|
15
|
-
last_name.contains_cjk?.should == false
|
16
|
-
else
|
17
|
-
fail
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
it "should not use japanese method when locale is not set to ja" do
|
22
|
-
name = Faker::Name.name
|
23
|
-
expect { name.yomi }.to raise_error NoMethodError
|
24
|
-
expect { name.kana }.to raise_error NoMethodError
|
25
|
-
expect { name.romaji }.to raise_error NoMethodError
|
26
|
-
end
|
27
|
-
|
28
|
-
it "should use japanese method when locale is set to ja" do
|
29
|
-
Faker::Config.locale = 'ja'
|
30
|
-
if (Faker::Config.locale == 'ja')
|
31
|
-
first_name = Faker::Name.first_name
|
32
|
-
first_name.should_not be_nil
|
33
|
-
first_name.contains_cjk?.should == true
|
34
|
-
last_name = Faker::Name.last_name
|
35
|
-
last_name.should_not be_nil
|
36
|
-
last_name.contains_cjk?.should == true
|
37
|
-
name = Faker::Name.name
|
38
|
-
name.should_not be_nil
|
39
|
-
name.contains_cjk?.should == true
|
40
|
-
name.yomi.contains_cjk?.should == true
|
41
|
-
name.kana.contains_cjk?.should == true
|
42
|
-
name.romaji.contains_cjk?.should == false
|
43
|
-
else
|
44
|
-
fail
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
end
|
data/spec/spec_helper.rb
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
require 'faker_japanese'
|
2
|
-
|
3
|
-
class String
|
4
|
-
# Method to check if string contains cjk characters
|
5
|
-
def contains_cjk?
|
6
|
-
!!(self =~ /\p{Han}|\p{Katakana}|\p{Hiragana}|\p{Hangul}/)
|
7
|
-
end
|
8
|
-
end
|
9
|
-
|
10
|
-
I18n.enforce_available_locales = true
|
11
|
-
|
12
|
-
RSpec.configure do |config|
|
13
|
-
config.failure_color = :magenta
|
14
|
-
config.tty = true
|
15
|
-
end
|