vydumschik 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -6,8 +6,8 @@ module Vydumschik
6
6
  # This module generate lipsum-like russian pseudosentences.
7
7
  #
8
8
  # Warning!
9
- # To avoid using ActiveSupport for multibyte support, or anything similar,
10
- # I just assume that all russian chars are 2-byte (as in UTF8) and that I
9
+ # To avoid using ActiveSupport for multibyte support, or anything similar,
10
+ # I just assume that all russian chars are 2-byte (as in UTF8) and that I
11
11
  # always get a russian char when I ask for one.
12
12
  module Lorem
13
13
 
@@ -28,7 +28,7 @@ module Vydumschik
28
28
 
29
29
  # Consonants, normalized by character frequency
30
30
  CONSONANTS_NORMALIZED = %w(б б б б б б б б б б б б б б б б б б б в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в в г г г г г г г г г г г г г г г г г г г д д д д д д д д д д д д д д д д д д д д д д д д д д д д д д д д ж ж ж ж ж ж ж ж ж ж ж ж з з з з з з з з з з з з з з з з з з й й й й й й й й й й й к к к к к к к к к к к к к к к к к к к к к к к к к к к к к к к к к к к к л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л л м м м м м м м м м м м м м м м м м м м м м м м м м м м м м м м м н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н н п п п п п п п п п п п п п п п п п п п п п п п п п п р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р р с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с с т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т т ф х х х х х х х х ц ц ц ч ч ч ч ч ч ч ч ч ч ч ч ч ч ч ч ч ч ш ш ш ш ш ш ш ш ш щ щ щ)
31
-
31
+
32
32
  # Vowels, normalized by character frequency
33
33
  VOWELS_NORMALIZED = %w(а а а а а а а а а а а а а а а а а а а а а а а а а а а а е е е е е е е е е е е е е е е е е е е е е е е е е е е е е е е и и и и и и и и и и и и и и и и и и и и и и о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о у у у у у у у у у ы ы ы ы ы ы э ю ю я я я я я я я)
34
34
 
@@ -79,14 +79,22 @@ module Vydumschik
79
79
  limits.first + rand(limits.last-limits.first+1)
80
80
  end
81
81
 
82
- # Capitalizes a russian string. Works only with UTF8.
83
- def self.capitalize_ru(word)
84
- w = word.clone
85
- code = (w[1]-0b10000000) + ((w[0]-0b11000000)<<6)
86
- code -= 32
87
- w[1] = (code & 0b00111111) | 0b10000000
88
- w[0] = (code >> 6) | 0b11000000
89
- w
82
+ if RUBY_VERSION < '1.9'
83
+ # Capitalizes a russian string. Works only with UTF8.
84
+ def self.capitalize_ru(word)
85
+ w = word.clone
86
+ code = (w[1]-0b10000000) + ((w[0]-0b11000000)<<6)
87
+ code -= 32
88
+ w[1] = (code & 0b00111111) | 0b10000000
89
+ w[0] = (code >> 6) | 0b11000000
90
+ w
91
+ end
92
+ else
93
+ def self.capitalize_ru(word)
94
+ w = word.clone
95
+ w[0] = (w[0].ord-32).chr(Encoding::UTF_8)
96
+ w
97
+ end
90
98
  end
91
99
  end
92
100
  end
@@ -1,3 +1,3 @@
1
1
  module Vydumschik
2
- VERSION = "0.1.0"
2
+ VERSION = "0.2.0"
3
3
  end
@@ -0,0 +1,21 @@
1
+ require 'spec_helper'
2
+
3
+ describe Vydumschik::Address do
4
+ subject { described_class }
5
+
6
+ it "should construct streets" do
7
+ subject.street.should be_a String
8
+ end
9
+
10
+ it "should construct buildings" do
11
+ subject.building.should be_a String
12
+ end
13
+
14
+ it "should construct apartment numbers" do
15
+ subject.apartment.should be_a String
16
+ end
17
+
18
+ it "should construct street addresses" do
19
+ subject.street_address.should be_a String
20
+ end
21
+ end
@@ -0,0 +1,17 @@
1
+ require 'spec_helper'
2
+
3
+ describe Vydumschik::Lorem do
4
+ subject { described_class }
5
+
6
+ it "should generate words" do
7
+ subject.word.should be_a String
8
+ end
9
+
10
+ it "should generate sentences" do
11
+ subject.sentence.should be_a String
12
+ end
13
+
14
+ it "should generate paragraphs" do
15
+ subject.paragraph.should be_a String
16
+ end
17
+ end
@@ -0,0 +1,21 @@
1
+ require 'spec_helper'
2
+
3
+ describe Vydumschik::Name do
4
+ subject { described_class }
5
+
6
+ it "should generate first names" do
7
+ subject.first_name.should be_a String
8
+ end
9
+
10
+ it "should generate middle names" do
11
+ subject.middle_name.should be_a String
12
+ end
13
+
14
+ it "should generate surnames" do
15
+ subject.surname.should be_a String
16
+ end
17
+
18
+ it "should generate full names" do
19
+ subject.full_name.should be_a String
20
+ end
21
+ end
@@ -0,0 +1 @@
1
+ require 'vydumschik'
@@ -13,6 +13,7 @@ Gem::Specification.new do |s|
13
13
  s.description = %q{Vydumschik creates fake Cyrillic names, surnames, full names, and lipsum-like text}
14
14
 
15
15
  s.add_development_dependency "rake"
16
+ s.add_development_dependency "rspec"
16
17
 
17
18
  s.files = `git ls-files`.split("\n")
18
19
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vydumschik
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-04-09 00:00:00.000000000 Z
12
+ date: 2012-10-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
16
- requirement: &70199312569300 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,7 +21,28 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70199312569300
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: rspec
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'
25
46
  description: Vydumschik creates fake Cyrillic names, surnames, full names, and lipsum-like
26
47
  text
27
48
  email:
@@ -31,6 +52,8 @@ extensions: []
31
52
  extra_rdoc_files: []
32
53
  files:
33
54
  - .gitignore
55
+ - .travis.yml
56
+ - CHANGELOG.md
34
57
  - Gemfile
35
58
  - README.md
36
59
  - Rakefile
@@ -41,6 +64,10 @@ files:
41
64
  - lib/vydumschik/lorem.rb
42
65
  - lib/vydumschik/name.rb
43
66
  - lib/vydumschik/version.rb
67
+ - spec/address_spec.rb
68
+ - spec/lorem_spec.rb
69
+ - spec/name_spec.rb
70
+ - spec/spec_helper.rb
44
71
  - vydumschik.gemspec
45
72
  homepage: https://github.com/leonid-shevtsov/vydumschik
46
73
  licenses: []
@@ -56,7 +83,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
56
83
  version: '0'
57
84
  segments:
58
85
  - 0
59
- hash: 2714277203479657839
86
+ hash: -4373301890017139685
60
87
  required_rubygems_version: !ruby/object:Gem::Requirement
61
88
  none: false
62
89
  requirements:
@@ -65,11 +92,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
65
92
  version: '0'
66
93
  segments:
67
94
  - 0
68
- hash: 2714277203479657839
95
+ hash: -4373301890017139685
69
96
  requirements: []
70
97
  rubyforge_project:
71
- rubygems_version: 1.8.17
98
+ rubygems_version: 1.8.24
72
99
  signing_key:
73
100
  specification_version: 3
74
101
  summary: A fake data library (Vydumschik is russian for "inventor")
75
- test_files: []
102
+ test_files:
103
+ - spec/address_spec.rb
104
+ - spec/lorem_spec.rb
105
+ - spec/name_spec.rb
106
+ - spec/spec_helper.rb