string_case_pl 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -14,11 +14,11 @@ class String
14
14
  PL_WINDOWS_1250_LOWER = PL_UTF_8_LOWER.encode(WINDOWS_CP1250_ENCODING)
15
15
  PL_WINDOWS_1250_UPPER = PL_UTF_8_UPPER.encode(WINDOWS_CP1250_ENCODING)
16
16
 
17
- alias old_downcase_wo_pl downcase
18
- alias old_upcase_wo_pl upcase
17
+ alias old_downcase_wo_pl downcase!
18
+ alias old_upcase_wo_pl upcase!
19
19
  alias old_capitalize_wo_pl capitalize
20
20
 
21
- def downcase
21
+ def downcase!
22
22
  case self.encoding.name
23
23
  when UTF_8_ENCODING
24
24
  self.tr!(PL_UTF_8_UPPER,PL_UTF_8_LOWER)
@@ -30,7 +30,13 @@ class String
30
30
  self.old_downcase_wo_pl
31
31
  end
32
32
 
33
- def upcase
33
+ def downcase
34
+ str = self.dup
35
+ str.downcase!
36
+ str
37
+ end
38
+
39
+ def upcase!
34
40
  case self.encoding.name
35
41
  when UTF_8_ENCODING
36
42
  self.tr!(PL_UTF_8_LOWER, PL_UTF_8_UPPER)
@@ -42,6 +48,12 @@ class String
42
48
  self.old_upcase_wo_pl
43
49
  end
44
50
 
51
+ def upcase
52
+ str = self.dup
53
+ str.upcase!
54
+ str
55
+ end
56
+
45
57
  def capitalize
46
58
  s = self.dup
47
59
  s[0] = s[0].upcase
@@ -56,3 +68,4 @@ class String
56
68
  end
57
69
 
58
70
  end
71
+
@@ -1,13 +1,13 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "string_case_pl"
3
- s.version = "0.1.0"
4
- s.date = "2011-01-11"
3
+ s.version = "0.1.1"
4
+ s.date = "2011-08-02"
5
+ s.required_ruby_version = '>= 1.9.2'
5
6
  s.summary = "Additional support for Polish encodings in Ruby 1.9"
6
7
  s.email = "apohllo@o2.pl"
7
8
  s.homepage = "https://github.com/apohllo/string_pl"
8
- s.description = "Polish extensions for Ruby 1.9 String #upcase, #downcase and #capitalize supporting polish diacritics"
9
+ s.description = "Polish extensions for Ruby 1.9 String #upcase(!), #downcase(!), #capitalize(!) and #<=> supporting polish diacritics"
9
10
  s.require_path = "lib"
10
- s.has_rdoc = false
11
11
  s.authors = ['Aleksander Pohl',"hosiawak","sebcioz"]
12
12
  s.files = ["Rakefile", "string_case_pl.gemspec", 'lib/string_case_pl.rb'] +
13
13
  Dir.glob("lib/**/*")
@@ -38,23 +38,112 @@ class TestCharacterCaseChange < Test::Unit::TestCase
38
38
  def test_windows_1250_upcase
39
39
  assert_equal(@windows_upper, @windows_lower.upcase)
40
40
  end
41
-
41
+
42
42
  def test_utf_8_capitalize
43
43
  assert_equal(@utf_capitalized, @utf_lower.capitalize)
44
44
  end
45
-
45
+
46
46
  def test_windows_1250_capitalize
47
47
  assert_equal(@windows_capitalized, @windows_lower.capitalize)
48
48
  end
49
-
49
+
50
50
  def test_iso_8859_2_capitalize
51
51
  assert_equal(@iso_capitalized, @iso_lower.capitalize)
52
52
  end
53
-
53
+
54
+ def test_preserve_utf_lower_case
55
+ original = @utf_lower.dup
56
+ @utf_lower.upcase
57
+ assert_equal(original,@utf_lower)
58
+ end
59
+
60
+ def test_preserve_utf_upper_case
61
+ original = @utf_upper.dup
62
+ @utf_upper.downcase
63
+ assert_equal(original,@utf_upper)
64
+ end
65
+
66
+ def test_preserve_iso_lower_case
67
+ original = @iso_lower.dup
68
+ @iso_lower.upcase
69
+ assert_equal(original,@iso_lower)
70
+ end
71
+
72
+ def test_preserve_iso_upper_case
73
+ original = @iso_upper.dup
74
+ @iso_upper.downcase
75
+ assert_equal(original,@iso_upper)
76
+ end
77
+
78
+ def test_preserve_windows_lower_case
79
+ original = @windows_lower.dup
80
+ @windows_lower.upcase
81
+ assert_equal(original,@windows_lower)
82
+ end
83
+
84
+ def test_preserve_windows_upper_case
85
+ original = @windows_upper.dup
86
+ @windows_upper.downcase
87
+ assert_equal(original,@windows_upper)
88
+ end
89
+
90
+ def test_same_case
91
+ copy = @utf_lower.dup
92
+ assert_equal(@utf_lower,copy.downcase)
93
+ end
94
+
95
+ def test_same_case_bang
96
+ copy = @utf_lower.dup
97
+ assert_equal(nil,copy.downcase!)
98
+ assert_equal(copy,@utf_lower)
99
+ end
100
+
101
+ def test_change_utf_lower_case
102
+ copy = @utf_lower.dup
103
+ copy.upcase!
104
+ assert_equal(copy,@utf_upper)
105
+ end
106
+
107
+ def test_change_utf_upper_case
108
+ copy = @utf_upper.dup
109
+ copy.downcase!
110
+ assert_equal(copy,@utf_lower)
111
+ end
112
+
113
+ def test_change_iso_lower_case
114
+ copy = @iso_lower.dup
115
+ copy.upcase!
116
+ assert_equal(copy,@iso_upper)
117
+ end
118
+
119
+ def test_change_iso_upper_case
120
+ copy = @iso_upper.dup
121
+ copy.downcase!
122
+ assert_equal(copy,@iso_lower)
123
+ end
124
+
125
+ def test_change_windows_lower_case
126
+ copy = @windows_lower.dup
127
+ copy.upcase!
128
+ assert_equal(copy,@windows_upper)
129
+ end
130
+
131
+ def test_change_windows_upper_case
132
+ copy = @windows_upper.dup
133
+ copy.downcase!
134
+ assert_equal(copy,@windows_lower)
135
+ end
136
+
137
+ def test_capitalize
138
+ original = @utf_lower.dup
139
+ assert_equal(original.capitalize, @utf_capitalized)
140
+ assert_equal(original, @utf_lower)
141
+ end
142
+
54
143
  def test_capitalize!
55
- d = @utf_lower.dup
56
- assert_equal(d.capitalize!, @utf_capitalized)
57
- assert_equal(d.capitalize!, nil)
144
+ copy = @utf_lower.dup
145
+ assert_equal(copy.capitalize!, @utf_capitalized)
146
+ assert_equal(copy.capitalize!, nil)
58
147
  end
59
-
148
+
60
149
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: string_case_pl
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.1.0
5
+ version: 0.1.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - Aleksander Pohl
@@ -12,11 +12,10 @@ autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
14
 
15
- date: 2011-01-11 00:00:00 +01:00
16
- default_executable:
15
+ date: 2011-08-02 00:00:00 Z
17
16
  dependencies: []
18
17
 
19
- description: "Polish extensions for Ruby 1.9 String #upcase, #downcase and #capitalize supporting polish diacritics"
18
+ description: "Polish extensions for Ruby 1.9 String #upcase(!), #downcase(!), #capitalize(!) and #<=> supporting polish diacritics"
20
19
  email: apohllo@o2.pl
21
20
  executables: []
22
21
 
@@ -32,7 +31,6 @@ files:
32
31
  - test/test_comparison.rb
33
32
  - test/test_character_case_change.rb
34
33
  - test/test_helper.rb
35
- has_rdoc: true
36
34
  homepage: https://github.com/apohllo/string_pl
37
35
  licenses: []
38
36
 
@@ -46,7 +44,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
46
44
  requirements:
47
45
  - - ">="
48
46
  - !ruby/object:Gem::Version
49
- version: "0"
47
+ version: 1.9.2
50
48
  required_rubygems_version: !ruby/object:Gem::Requirement
51
49
  none: false
52
50
  requirements:
@@ -56,7 +54,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
56
54
  requirements: []
57
55
 
58
56
  rubyforge_project:
59
- rubygems_version: 1.5.2
57
+ rubygems_version: 1.8.5
60
58
  signing_key:
61
59
  specification_version: 3
62
60
  summary: Additional support for Polish encodings in Ruby 1.9