randwordjp 0.1.1 → 0.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c27b7abca81bf87781479dab0f010da194d635cd
4
- data.tar.gz: ac26c32e4eb117cf6ed6f9500c51acf2d7e8c495
3
+ metadata.gz: ae03ea7c29932954807b070703055f045a452f0f
4
+ data.tar.gz: a2adadaffd38b29b9d444c7eb74e27cc7b227bf4
5
5
  SHA512:
6
- metadata.gz: 470d761e1579dedbb65a500ef2f63df66905f242b035d8156ae48489ced34144993e637be54da63aa11928868a82cb19739c1903ee8a78e51bb588b8626ff42f
7
- data.tar.gz: 9483103e3a4b02a36fb6602cc4d46e1482a596ad13ee258a6f4ae18f4a25d81d07ea044b3cc31b3a7f61f9571704929ba11c38d07b1f6857613d8251d2fef971
6
+ metadata.gz: 665f77124a0a00724ee3a349f317807e11e338e0d159faf1e0c630f1219fa98376c3d231bbe0953b2c4c790149a493a3881ffa126feef16745717c6cf493dfa6
7
+ data.tar.gz: 2c534505590db0ef6a0b503d813406a691225f0b4209f7e0a0a172c26d5dc043f5095bba99f281f3801f761fafed0371fbab7127fc4606c32b6a50760705ce63
@@ -2,5 +2,5 @@
2
2
  # ランダムで日本語文字列などを生成するライブラリとなります。
3
3
  # can get random words(sentence).
4
4
  module Randwordjp
5
- VERSION = '0.1.1'
5
+ VERSION = '0.1.2'
6
6
  end
data/lib/randwordjp.rb CHANGED
@@ -96,11 +96,25 @@ module Randwordjp
96
96
 
97
97
  # ローマ字の文字列を取得する。
98
98
  # @param [Integer] length 文字列長
99
+ # @param [Boolean] opts オプション設定
100
+ # @option opts [Boolean] :char_case 文字の大小を制限する。
99
101
  # @return [String] lengthで指定した文字列長の文字列
100
- def self.alphabet(length = 10)
102
+ def self.alphabet(length = 10, opts = { char_case: :all })
101
103
  words = []
102
- base = ('a'..'z').to_a
104
+ base = []
105
+ case opts[:char_case]
106
+ when :upper
107
+ base += ('A'..'Z').to_a
108
+ when :lower
109
+ base += ('a'..'z').to_a
110
+ when :all
111
+ base += ('A'..'Z').to_a + ('a'..'z').to_a
112
+ else
113
+ puts "char_case can set :lower or :upper, :all."
114
+ return false
115
+ end
103
116
  length.times do
117
+
104
118
  words << base.sample
105
119
  end
106
120
  words.join
@@ -108,11 +122,24 @@ module Randwordjp
108
122
 
109
123
  # 数字+ローマ字の文字列を取得する。
110
124
  # @param [Integer] length 文字列長
125
+ # @param [Boolean] opts オプション設定
126
+ # @option opts [Boolean] :char_case 文字の大小を制限する。
111
127
  # @return [String] lengthで指定した文字列長の文字列
112
- def self.alphanumeric(length = 10)
128
+ def self.alphanumeric(length = 10, opts = { char_case: :all })
113
129
  words = []
114
- base = ('0'..'9').to_a + ('a'..'z').to_a
115
- words << alphabet(1)
130
+ base = []
131
+ case opts[:char_case]
132
+ when :upper
133
+ base += ('A'..'Z').to_a
134
+ when :lower
135
+ base += ('a'..'z').to_a
136
+ when :all
137
+ base += ('A'..'Z').to_a + ('a'..'z').to_a
138
+ else
139
+ puts "char_case can set :lower or :upper, :all."
140
+ return false
141
+ end
142
+ base += ('0'..'9').to_a
116
143
  length.times do
117
144
  words << base.sample
118
145
  end
@@ -121,10 +148,24 @@ module Randwordjp
121
148
 
122
149
  # 数字+ローマ字+記号(-_)の文字列を取得する。
123
150
  # @param [Integer] length 文字列長
151
+ # @param [Boolean] opts オプション設定
152
+ # @option opts [Boolean] :char_case 文字の大小を制限する。
124
153
  # @return [String] lengthで指定した文字列長の文字列
125
- def self.alphanumeric_plus(length = 10)
154
+ def self.alphanumeric_plus(length = 10, opts = { char_case: :all })
126
155
  words = []
127
- base = ('0'..'9').to_a + ('a'..'z').to_a + ['-', '_']
156
+ base = []
157
+ case opts[:char_case]
158
+ when :upper
159
+ base += ('A'..'Z').to_a
160
+ when :lower
161
+ base += ('a'..'z').to_a
162
+ when :all
163
+ base += ('A'..'Z').to_a + ('a'..'z').to_a
164
+ else
165
+ puts "char_case can set :lower or :upper, :all."
166
+ return false
167
+ end
168
+ base += ('0'..'9').to_a + ['-', '_']
128
169
  words << alphabet(1)
129
170
  (length - 1).times do
130
171
  words << base.sample
@@ -139,8 +180,8 @@ module Randwordjp
139
180
  # @option opts [String] :randword トップレベルドメインの文字列を指定する。
140
181
  # @return [String] メールアドレスを取得する 
141
182
  def self.mail_address(opts ={domain: 'rand', local_length: 10, domain_length: 10})
142
- local_part = alphanumeric_plus(rand(opts[:local_length]) + 1)
143
- domain_part = alphanumeric(rand(opts[:domain_length]) + 1) + '.' + opts[:domain]
183
+ local_part = alphanumeric_plus(rand(opts[:local_length]) + 1, char_case: :lower)
184
+ domain_part = alphanumeric(rand(opts[:domain_length]) + 1, char_case: :lower) + '.' + opts[:domain]
144
185
  local_part + '@' + domain_part
145
186
  end
146
187
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: randwordjp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - inpwjp
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-15 00:00:00.000000000 Z
11
+ date: 2015-11-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sequel