builtinextension 0.1.2 → 0.1.3

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 049963607a60f703b442db8d232fedeb0f5a6490
4
+ data.tar.gz: af47434679dcc2b6e30d695a1980457ab338138a
5
+ SHA512:
6
+ metadata.gz: f6f4ab5dc00e0c742f630c11113cfe7a7d895a0699ad589c273b8ce8ea8a945335c8e2f2f7eb32b4277eebebd329d6e6a008cfc58160b021f42efa387838eff9
7
+ data.tar.gz: 61095aa5718215a3fa57725858c4f7939c7d6400ea89588ab1a2175f4db4a255b6c7d558074c06acfd316df0f94207498c9d2df2f51e6948511b6fab1592f97b
data/CHANGES CHANGED
@@ -1,6 +1,9 @@
1
1
  = builtinextension Changelog
2
2
 
3
- == Master (for 0.1.3)
3
+ == Master (for 0.1.4)
4
+
5
+ == Version 0.1.3 [2015-07-17] released
6
+ * Add Float/equal_in_delta?
4
7
 
5
8
  == Version 0.1.2 [2014-08-30] released
6
9
  * Change test method from rspec to test-unit.
data/Gemfile CHANGED
@@ -6,10 +6,9 @@ source "http://rubygems.org"
6
6
  # Add dependencies to develop your gem here.
7
7
  # Include everything needed to run rake, tests, features, etc.
8
8
  group :development do
9
- #gem "rspec", "~> 3.0.0"
10
- gem "test-unit", "~> 3.0.1"
11
- gem "rdoc", "~> 4.1.1"
12
- gem "bundler", "~> 1.7.2"
9
+ gem "test-unit", "~> 3.1.2"
10
+ gem "rdoc", "~> 4.2.0"
11
+ gem "bundler", "~> 1.10.5"
13
12
  gem "jeweler", "~> 2.0.1"
14
13
  gem "simplecov", "~> 0.9.0"
15
14
  #gem "psych", ">= 0"
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.2
1
+ 0.1.3
@@ -2,14 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
+ # stub: builtinextension 0.1.3 ruby lib
5
6
 
6
7
  Gem::Specification.new do |s|
7
8
  s.name = "builtinextension"
8
- s.version = "0.1.2"
9
+ s.version = "0.1.3"
9
10
 
10
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
+ s.require_paths = ["lib"]
11
13
  s.authors = ["ippei94da"]
12
- s.date = "2014-08-30"
14
+ s.date = "2015-07-17"
13
15
  s.description = "Personally frequently used methods for builtin classes,\n e.g., String, Array, etc.\n These methods are not implemented in Ruby and\n are doubted to offer to be implemented into Ruby core system.\n A main target is my personal programming.\n "
14
16
  s.email = "ippei94da@gmail.com"
15
17
  s.extra_rdoc_files = [
@@ -28,6 +30,7 @@ Gem::Specification.new do |s|
28
30
  "builtinextension.gemspec",
29
31
  "lib/array/includeeql.rb",
30
32
  "lib/array/selectindices.rb",
33
+ "lib/float/equalindelta.rb",
31
34
  "lib/string/color.rb",
32
35
  "lib/string/escapezsh.rb",
33
36
  "lib/string/mismatch.rb",
@@ -37,6 +40,7 @@ Gem::Specification.new do |s|
37
40
  "test/print_color",
38
41
  "test/test_array_include_eql.rb",
39
42
  "test/test_array_select_indices.rb",
43
+ "test/test_float_equalindelta.rb",
40
44
  "test/test_string_color.rb",
41
45
  "test/test_string_escape_zsh.rb",
42
46
  "test/test_string_mismatch.rb",
@@ -45,30 +49,29 @@ Gem::Specification.new do |s|
45
49
  ]
46
50
  s.homepage = "http://github.com/ippei94da/builtinextension"
47
51
  s.licenses = ["MIT"]
48
- s.require_paths = ["lib"]
49
- s.rubygems_version = "1.8.23"
52
+ s.rubygems_version = "2.2.2"
50
53
  s.summary = "Method as extension for builtin classes"
51
54
 
52
55
  if s.respond_to? :specification_version then
53
- s.specification_version = 3
56
+ s.specification_version = 4
54
57
 
55
58
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
56
- s.add_development_dependency(%q<test-unit>, ["~> 3.0.1"])
57
- s.add_development_dependency(%q<rdoc>, ["~> 4.1.1"])
58
- s.add_development_dependency(%q<bundler>, ["~> 1.7.2"])
59
+ s.add_development_dependency(%q<test-unit>, ["~> 3.1.2"])
60
+ s.add_development_dependency(%q<rdoc>, ["~> 4.2.0"])
61
+ s.add_development_dependency(%q<bundler>, ["~> 1.10.5"])
59
62
  s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
60
63
  s.add_development_dependency(%q<simplecov>, ["~> 0.9.0"])
61
64
  else
62
- s.add_dependency(%q<test-unit>, ["~> 3.0.1"])
63
- s.add_dependency(%q<rdoc>, ["~> 4.1.1"])
64
- s.add_dependency(%q<bundler>, ["~> 1.7.2"])
65
+ s.add_dependency(%q<test-unit>, ["~> 3.1.2"])
66
+ s.add_dependency(%q<rdoc>, ["~> 4.2.0"])
67
+ s.add_dependency(%q<bundler>, ["~> 1.10.5"])
65
68
  s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
66
69
  s.add_dependency(%q<simplecov>, ["~> 0.9.0"])
67
70
  end
68
71
  else
69
- s.add_dependency(%q<test-unit>, ["~> 3.0.1"])
70
- s.add_dependency(%q<rdoc>, ["~> 4.1.1"])
71
- s.add_dependency(%q<bundler>, ["~> 1.7.2"])
72
+ s.add_dependency(%q<test-unit>, ["~> 3.1.2"])
73
+ s.add_dependency(%q<rdoc>, ["~> 4.2.0"])
74
+ s.add_dependency(%q<bundler>, ["~> 1.10.5"])
72
75
  s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
73
76
  s.add_dependency(%q<simplecov>, ["~> 0.9.0"])
74
77
  end
@@ -0,0 +1,13 @@
1
+ #! /usr/bin/env ruby
2
+ # coding: utf-8
3
+
4
+ class Float
5
+ # return true if absolute value of the difference
6
+ # between self and other is smaller than delta.
7
+ def equal_in_delta?(other, delta)
8
+ (self - other).abs < delta
9
+ end
10
+
11
+ end
12
+
13
+
@@ -7,37 +7,37 @@ require "test/unit"
7
7
  require "array/includeeql"
8
8
 
9
9
  class Klass
10
- def initialize(val)
11
- @val = (val)
12
- end
10
+ def initialize(val)
11
+ @val = (val)
12
+ end
13
13
 
14
- def eql?(other)
15
- return @val.floor == other.floor
16
- end
14
+ def eql?(other)
15
+ return @val.floor == other.floor
16
+ end
17
17
  end
18
18
 
19
19
 
20
20
  #describe Array, "including items with eql? method" do
21
21
  #class TC_Array < Test::Unit::TestCase
22
22
  class TC_Array_include_eql < Test::Unit::TestCase
23
- def setup
24
- @a00 = [
25
- Klass.new(0.0),
26
- Klass.new(1.0),
27
- Klass.new(2.0),
28
- ]
29
- end
30
-
31
- def test_include_eql?
32
- #it "should be true" do
33
- assert_equal(true, @a00.include_eql?( 0.1))
34
- assert_equal(true, @a00.include_eql?( 1.1))
35
- assert_equal(true, @a00.include_eql?( 2.1))
36
-
37
- #it "should be false" do
38
- assert_equal(false, @a00.include_eql?( 3.1))
39
- assert_equal(false, @a00.include_eql?(-0.9))
40
- end
23
+ def setup
24
+ @a00 = [
25
+ Klass.new(0.0),
26
+ Klass.new(1.0),
27
+ Klass.new(2.0),
28
+ ]
29
+ end
30
+
31
+ def test_include_eql?
32
+ #it "should be true" do
33
+ assert_equal(true, @a00.include_eql?( 0.1))
34
+ assert_equal(true, @a00.include_eql?( 1.1))
35
+ assert_equal(true, @a00.include_eql?( 2.1))
36
+
37
+ #it "should be false" do
38
+ assert_equal(false, @a00.include_eql?( 3.1))
39
+ assert_equal(false, @a00.include_eql?(-0.9))
40
+ end
41
41
 
42
42
  end
43
43
 
@@ -10,20 +10,20 @@ require "array/selectindices.rb"
10
10
  #describe Array, "including items" do
11
11
 
12
12
  class TC_Array_select_indices < Test::Unit::TestCase
13
- #it "should do for empty array." do
14
- def test_select_indices
15
- assert_equal([], [].select_indices{ false })
16
- assert_equal([], [].select_indices{ true } )
17
-
18
- #it "should do for array of String." do
19
- assert_equal([] , %w[ a b c ].select_indices{ false } )
20
- assert_equal([0,1,2] , %w[ a b c ].select_indices{ true } )
21
-
22
- #it "should do for empty array of Integer." do
23
- assert_equal([] , [0,1,2,3].select_indices{ false } )
24
- assert_equal([0,1,2,3] , [0,1,2,3].select_indices{ true } )
25
- assert_equal([0,1] , [0,1,2,3].select_indices{ |i| i < 2 } )
26
- end
13
+ #it "should do for empty array." do
14
+ def test_select_indices
15
+ assert_equal([], [].select_indices{ false })
16
+ assert_equal([], [].select_indices{ true } )
17
+
18
+ #it "should do for array of String." do
19
+ assert_equal([] , %w[ a b c ].select_indices{ false } )
20
+ assert_equal([0,1,2] , %w[ a b c ].select_indices{ true } )
21
+
22
+ #it "should do for empty array of Integer." do
23
+ assert_equal([] , [0,1,2,3].select_indices{ false } )
24
+ assert_equal([0,1,2,3] , [0,1,2,3].select_indices{ true } )
25
+ assert_equal([0,1] , [0,1,2,3].select_indices{ |i| i < 2 } )
26
+ end
27
27
 
28
28
  end
29
29
 
@@ -0,0 +1,19 @@
1
+ #! /usr/bin/env ruby
2
+ # coding: utf-8
3
+
4
+ require "helper"
5
+ require "float/equalindelta.rb"
6
+ #require "test/unit"
7
+ #require "pkg/klass.rb"
8
+
9
+ class TC_Float < Test::Unit::TestCase
10
+ def test_equal_in_delta?
11
+ assert_equal(true , (1.0).equal_in_delta?(1.0, 0.1))
12
+ assert_equal(false, (1.0).equal_in_delta?(1.2, 0.1))
13
+ assert_equal(true , (1.0).equal_in_delta?(1.2, 0.3))
14
+ assert_equal(false, (1.2).equal_in_delta?(1.0, 0.1))
15
+ assert_equal(true , (1.2).equal_in_delta?(1.0, 0.3))
16
+ end
17
+
18
+ end
19
+
@@ -7,65 +7,65 @@ require "string/color.rb"
7
7
 
8
8
  #describe String, "to be added color information" do
9
9
  class TC_String_color < Test::Unit::TestCase
10
- def setup
11
- @s00 = ""
12
- @s01 = "abc"
13
- end
10
+ def setup
11
+ @s00 = ""
12
+ @s01 = "abc"
13
+ end
14
14
 
15
- #it "should be sandwitched escape chars of color" do
16
- def test_color
17
- assert_equal("\e[30;49m\e[39;49m" , @s00.color( :black ))
18
- assert_equal("\e[31;49m\e[39;49m" , @s00.color( :red ))
19
- assert_equal("\e[32;49m\e[39;49m" , @s00.color( :green ))
20
- assert_equal("\e[33;49m\e[39;49m" , @s00.color( :yellow ))
21
- assert_equal("\e[34;49m\e[39;49m" , @s00.color( :blue ))
22
- assert_equal("\e[35;49m\e[39;49m" , @s00.color( :magenta ))
23
- assert_equal("\e[36;49m\e[39;49m" , @s00.color( :cyan ))
24
- assert_equal("\e[37;49m\e[39;49m" , @s00.color( :white ))
25
- assert_equal("\e[39;49m\e[39;49m" , @s00.color( :default ))
26
- assert_equal("\e[39;40m\e[39;49m" , @s00.color( :default, :black ))
27
- assert_equal("\e[39;41m\e[39;49m" , @s00.color( :default, :red ))
28
- assert_equal("\e[39;42m\e[39;49m" , @s00.color( :default, :green ))
29
- assert_equal("\e[39;43m\e[39;49m" , @s00.color( :default, :yellow ))
30
- assert_equal("\e[39;44m\e[39;49m" , @s00.color( :default, :blue ))
31
- assert_equal("\e[39;45m\e[39;49m" , @s00.color( :default, :magenta))
32
- assert_equal("\e[39;46m\e[39;49m" , @s00.color( :default, :cyan ))
33
- assert_equal("\e[39;47m\e[39;49m" , @s00.color( :default, :white ))
34
- assert_equal("\e[39;49m\e[39;49m" , @s00.color( :default, :default))
35
- assert_equal("\e[37;40m\e[39;49m" , @s00.color( :white , :black ))
36
- assert_equal("\e[36;41m\e[39;49m" , @s00.color( :cyan , :red ))
37
- assert_equal("\e[35;42m\e[39;49m" , @s00.color( :magenta, :green ))
38
- assert_equal("\e[34;43m\e[39;49m" , @s00.color( :blue , :yellow ))
39
- assert_equal("\e[33;44m\e[39;49m" , @s00.color( :yellow , :blue ))
40
- assert_equal("\e[32;45m\e[39;49m" , @s00.color( :green , :magenta))
41
- assert_equal("\e[31;46m\e[39;49m" , @s00.color( :red , :cyan ))
42
- assert_equal("\e[30;47m\e[39;49m" , @s00.color( :black , :white ))
43
- assert_equal("\e[30;49mabc\e[39;49m", @s01.color( :black ))
44
- assert_equal("\e[31;49mabc\e[39;49m", @s01.color( :red ))
45
- assert_equal("\e[32;49mabc\e[39;49m", @s01.color( :green ))
46
- assert_equal("\e[33;49mabc\e[39;49m", @s01.color( :yellow ))
47
- assert_equal("\e[34;49mabc\e[39;49m", @s01.color( :blue ))
48
- assert_equal("\e[35;49mabc\e[39;49m", @s01.color( :magenta ))
49
- assert_equal("\e[36;49mabc\e[39;49m", @s01.color( :cyan ))
50
- assert_equal("\e[37;49mabc\e[39;49m", @s01.color( :white ))
51
- assert_equal("\e[39;49mabc\e[39;49m", @s01.color( :default ))
52
- assert_equal("\e[39;40mabc\e[39;49m", @s01.color( :default, :black ))
53
- assert_equal("\e[39;41mabc\e[39;49m", @s01.color( :default, :red ))
54
- assert_equal("\e[39;42mabc\e[39;49m", @s01.color( :default, :green ))
55
- assert_equal("\e[39;43mabc\e[39;49m", @s01.color( :default, :yellow ))
56
- assert_equal("\e[39;44mabc\e[39;49m", @s01.color( :default, :blue ))
57
- assert_equal("\e[39;45mabc\e[39;49m", @s01.color( :default, :magenta))
58
- assert_equal("\e[39;46mabc\e[39;49m", @s01.color( :default, :cyan ))
59
- assert_equal("\e[39;47mabc\e[39;49m", @s01.color( :default, :white ))
60
- assert_equal("\e[39;49mabc\e[39;49m", @s01.color( :default, :default))
61
- assert_equal("\e[37;40mabc\e[39;49m", @s01.color( :white , :black ))
62
- assert_equal("\e[36;41mabc\e[39;49m", @s01.color( :cyan , :red ))
63
- assert_equal("\e[35;42mabc\e[39;49m", @s01.color( :magenta, :green ))
64
- assert_equal("\e[34;43mabc\e[39;49m", @s01.color( :blue , :yellow ))
65
- assert_equal("\e[33;44mabc\e[39;49m", @s01.color( :yellow , :blue ))
66
- assert_equal("\e[32;45mabc\e[39;49m", @s01.color( :green , :magenta))
67
- assert_equal("\e[31;46mabc\e[39;49m", @s01.color( :red , :cyan ))
68
- assert_equal("\e[30;47mabc\e[39;49m", @s01.color( :black , :white ))
69
- end
15
+ #it "should be sandwitched escape chars of color" do
16
+ def test_color
17
+ assert_equal("\e[30;49m\e[39;49m" , @s00.color( :black ))
18
+ assert_equal("\e[31;49m\e[39;49m" , @s00.color( :red ))
19
+ assert_equal("\e[32;49m\e[39;49m" , @s00.color( :green ))
20
+ assert_equal("\e[33;49m\e[39;49m" , @s00.color( :yellow ))
21
+ assert_equal("\e[34;49m\e[39;49m" , @s00.color( :blue ))
22
+ assert_equal("\e[35;49m\e[39;49m" , @s00.color( :magenta ))
23
+ assert_equal("\e[36;49m\e[39;49m" , @s00.color( :cyan ))
24
+ assert_equal("\e[37;49m\e[39;49m" , @s00.color( :white ))
25
+ assert_equal("\e[39;49m\e[39;49m" , @s00.color( :default ))
26
+ assert_equal("\e[39;40m\e[39;49m" , @s00.color( :default, :black ))
27
+ assert_equal("\e[39;41m\e[39;49m" , @s00.color( :default, :red ))
28
+ assert_equal("\e[39;42m\e[39;49m" , @s00.color( :default, :green ))
29
+ assert_equal("\e[39;43m\e[39;49m" , @s00.color( :default, :yellow ))
30
+ assert_equal("\e[39;44m\e[39;49m" , @s00.color( :default, :blue ))
31
+ assert_equal("\e[39;45m\e[39;49m" , @s00.color( :default, :magenta))
32
+ assert_equal("\e[39;46m\e[39;49m" , @s00.color( :default, :cyan ))
33
+ assert_equal("\e[39;47m\e[39;49m" , @s00.color( :default, :white ))
34
+ assert_equal("\e[39;49m\e[39;49m" , @s00.color( :default, :default))
35
+ assert_equal("\e[37;40m\e[39;49m" , @s00.color( :white , :black ))
36
+ assert_equal("\e[36;41m\e[39;49m" , @s00.color( :cyan , :red ))
37
+ assert_equal("\e[35;42m\e[39;49m" , @s00.color( :magenta, :green ))
38
+ assert_equal("\e[34;43m\e[39;49m" , @s00.color( :blue , :yellow ))
39
+ assert_equal("\e[33;44m\e[39;49m" , @s00.color( :yellow , :blue ))
40
+ assert_equal("\e[32;45m\e[39;49m" , @s00.color( :green , :magenta))
41
+ assert_equal("\e[31;46m\e[39;49m" , @s00.color( :red , :cyan ))
42
+ assert_equal("\e[30;47m\e[39;49m" , @s00.color( :black , :white ))
43
+ assert_equal("\e[30;49mabc\e[39;49m", @s01.color( :black ))
44
+ assert_equal("\e[31;49mabc\e[39;49m", @s01.color( :red ))
45
+ assert_equal("\e[32;49mabc\e[39;49m", @s01.color( :green ))
46
+ assert_equal("\e[33;49mabc\e[39;49m", @s01.color( :yellow ))
47
+ assert_equal("\e[34;49mabc\e[39;49m", @s01.color( :blue ))
48
+ assert_equal("\e[35;49mabc\e[39;49m", @s01.color( :magenta ))
49
+ assert_equal("\e[36;49mabc\e[39;49m", @s01.color( :cyan ))
50
+ assert_equal("\e[37;49mabc\e[39;49m", @s01.color( :white ))
51
+ assert_equal("\e[39;49mabc\e[39;49m", @s01.color( :default ))
52
+ assert_equal("\e[39;40mabc\e[39;49m", @s01.color( :default, :black ))
53
+ assert_equal("\e[39;41mabc\e[39;49m", @s01.color( :default, :red ))
54
+ assert_equal("\e[39;42mabc\e[39;49m", @s01.color( :default, :green ))
55
+ assert_equal("\e[39;43mabc\e[39;49m", @s01.color( :default, :yellow ))
56
+ assert_equal("\e[39;44mabc\e[39;49m", @s01.color( :default, :blue ))
57
+ assert_equal("\e[39;45mabc\e[39;49m", @s01.color( :default, :magenta))
58
+ assert_equal("\e[39;46mabc\e[39;49m", @s01.color( :default, :cyan ))
59
+ assert_equal("\e[39;47mabc\e[39;49m", @s01.color( :default, :white ))
60
+ assert_equal("\e[39;49mabc\e[39;49m", @s01.color( :default, :default))
61
+ assert_equal("\e[37;40mabc\e[39;49m", @s01.color( :white , :black ))
62
+ assert_equal("\e[36;41mabc\e[39;49m", @s01.color( :cyan , :red ))
63
+ assert_equal("\e[35;42mabc\e[39;49m", @s01.color( :magenta, :green ))
64
+ assert_equal("\e[34;43mabc\e[39;49m", @s01.color( :blue , :yellow ))
65
+ assert_equal("\e[33;44mabc\e[39;49m", @s01.color( :yellow , :blue ))
66
+ assert_equal("\e[32;45mabc\e[39;49m", @s01.color( :green , :magenta))
67
+ assert_equal("\e[31;46mabc\e[39;49m", @s01.color( :red , :cyan ))
68
+ assert_equal("\e[30;47mabc\e[39;49m", @s01.color( :black , :white ))
69
+ end
70
70
 
71
71
  end
@@ -7,81 +7,81 @@ require "string/escapezsh.rb"
7
7
 
8
8
  #describe String, "with chars to be escaped" do
9
9
  class TC_String_escapezsh < Test::Unit::TestCase
10
- def setup
11
- @s00 = "0123456789abcdefghijklmnopqrstuvwxyz"
12
- @s10 = "\\abc\\"
13
- @s11 = '/abc/'
14
- @s12 = ' abc '
15
- @s13 = '!abc!'
16
- @s14 = '"abc"'
17
- @s15 = '#abc#'
18
- @s16 = '$abc$'
19
- @s17 = '%abc%'
20
- @s18 = ')abc)'
21
- @s19 = '(abc('
22
- @s20 = '*abc*'
23
- @s21 = ',abc,'
24
- @s22 = '-abc-'
25
- @s23 = '.abc.'
26
- @s24 = ':abc:'
27
- @s25 = ';abc;'
28
- @s26 = '<abc<'
29
- @s27 = '=abc='
30
- @s28 = '>abc>'
31
- @s29 = '?abc?'
32
- @s30 = '@abc@'
33
- @s31 = '[abc['
34
- @s32 = ']abc]'
35
- @s33 = '^abc^'
36
- @s34 = '_abc_'
37
- @s35 = '{abc{'
38
- @s36 = '|abc|'
39
- @s37 = '}abc}'
40
- @s38 = '~abc~'
41
- @s39 = '`abc`'
42
- @s40 = '&abc&'
43
- @s41 = '+abc+'
44
- @s42 = "'abc'"
45
- end
10
+ def setup
11
+ @s00 = "0123456789abcdefghijklmnopqrstuvwxyz"
12
+ @s10 = "\\abc\\"
13
+ @s11 = '/abc/'
14
+ @s12 = ' abc '
15
+ @s13 = '!abc!'
16
+ @s14 = '"abc"'
17
+ @s15 = '#abc#'
18
+ @s16 = '$abc$'
19
+ @s17 = '%abc%'
20
+ @s18 = ')abc)'
21
+ @s19 = '(abc('
22
+ @s20 = '*abc*'
23
+ @s21 = ',abc,'
24
+ @s22 = '-abc-'
25
+ @s23 = '.abc.'
26
+ @s24 = ':abc:'
27
+ @s25 = ';abc;'
28
+ @s26 = '<abc<'
29
+ @s27 = '=abc='
30
+ @s28 = '>abc>'
31
+ @s29 = '?abc?'
32
+ @s30 = '@abc@'
33
+ @s31 = '[abc['
34
+ @s32 = ']abc]'
35
+ @s33 = '^abc^'
36
+ @s34 = '_abc_'
37
+ @s35 = '{abc{'
38
+ @s36 = '|abc|'
39
+ @s37 = '}abc}'
40
+ @s38 = '~abc~'
41
+ @s39 = '`abc`'
42
+ @s40 = '&abc&'
43
+ @s41 = '+abc+'
44
+ @s42 = "'abc'"
45
+ end
46
46
 
47
- def test_escape_zsh
48
- #it "should not escape" do
49
- assert_equal("0123456789abcdefghijklmnopqrstuvwxyz", @s00.escape_zsh)
47
+ def test_escape_zsh
48
+ #it "should not escape" do
49
+ assert_equal("0123456789abcdefghijklmnopqrstuvwxyz", @s00.escape_zsh)
50
50
 
51
- #it "should escape" do
52
- assert_equal("\\\\abc\\\\", @s10.escape_zsh)
53
- assert_equal("/abc/" , @s11.escape_zsh)
54
- assert_equal("\\ abc\\ " , @s12.escape_zsh)
55
- assert_equal("\\!abc\\!" , @s13.escape_zsh)
56
- assert_equal('\\"abc\\"' , @s14.escape_zsh)
57
- assert_equal("\\#abc\\#" , @s15.escape_zsh)
58
- assert_equal("\\$abc\\$" , @s16.escape_zsh)
59
- assert_equal("\\%abc\\%" , @s17.escape_zsh)
60
- assert_equal("\\)abc\\)" , @s18.escape_zsh)
61
- assert_equal("\\(abc\\(" , @s19.escape_zsh)
62
- assert_equal("\\*abc\\*" , @s20.escape_zsh)
63
- assert_equal("\\,abc\\," , @s21.escape_zsh)
64
- assert_equal("-abc-" , @s22.escape_zsh)
65
- assert_equal(".abc." , @s23.escape_zsh)
66
- assert_equal("\\:abc\\:" , @s24.escape_zsh)
67
- assert_equal("\\;abc\\;" , @s25.escape_zsh)
68
- assert_equal("\\<abc\\<" , @s26.escape_zsh)
69
- assert_equal("\\=abc\\=" , @s27.escape_zsh)
70
- assert_equal("\\>abc\\>" , @s28.escape_zsh)
71
- assert_equal("\\?abc\\?" , @s29.escape_zsh)
72
- assert_equal("\\@abc\\@" , @s30.escape_zsh)
73
- assert_equal("\\[abc\\[" , @s31.escape_zsh)
74
- assert_equal("\\]abc\\]" , @s32.escape_zsh)
75
- assert_equal("\\^abc\\^" , @s33.escape_zsh)
76
- assert_equal("\\_abc\\_" , @s34.escape_zsh)
77
- assert_equal("\\{abc\\{" , @s35.escape_zsh)
78
- assert_equal("\\|abc\\|" , @s36.escape_zsh)
79
- assert_equal("\\}abc\\}" , @s37.escape_zsh)
80
- assert_equal("\\~abc\\~" , @s38.escape_zsh)
81
- assert_equal("\\`abc\\`" , @s39.escape_zsh)
82
- assert_equal("\\&abc\\&" , @s40.escape_zsh)
83
- assert_equal("\\+abc\\+" , @s41.escape_zsh)
84
- assert_equal("\\'abc\\'" , @s42.escape_zsh)
85
- end
51
+ #it "should escape" do
52
+ assert_equal("\\\\abc\\\\", @s10.escape_zsh)
53
+ assert_equal("/abc/" , @s11.escape_zsh)
54
+ assert_equal("\\ abc\\ " , @s12.escape_zsh)
55
+ assert_equal("\\!abc\\!" , @s13.escape_zsh)
56
+ assert_equal('\\"abc\\"' , @s14.escape_zsh)
57
+ assert_equal("\\#abc\\#" , @s15.escape_zsh)
58
+ assert_equal("\\$abc\\$" , @s16.escape_zsh)
59
+ assert_equal("\\%abc\\%" , @s17.escape_zsh)
60
+ assert_equal("\\)abc\\)" , @s18.escape_zsh)
61
+ assert_equal("\\(abc\\(" , @s19.escape_zsh)
62
+ assert_equal("\\*abc\\*" , @s20.escape_zsh)
63
+ assert_equal("\\,abc\\," , @s21.escape_zsh)
64
+ assert_equal("-abc-" , @s22.escape_zsh)
65
+ assert_equal(".abc." , @s23.escape_zsh)
66
+ assert_equal("\\:abc\\:" , @s24.escape_zsh)
67
+ assert_equal("\\;abc\\;" , @s25.escape_zsh)
68
+ assert_equal("\\<abc\\<" , @s26.escape_zsh)
69
+ assert_equal("\\=abc\\=" , @s27.escape_zsh)
70
+ assert_equal("\\>abc\\>" , @s28.escape_zsh)
71
+ assert_equal("\\?abc\\?" , @s29.escape_zsh)
72
+ assert_equal("\\@abc\\@" , @s30.escape_zsh)
73
+ assert_equal("\\[abc\\[" , @s31.escape_zsh)
74
+ assert_equal("\\]abc\\]" , @s32.escape_zsh)
75
+ assert_equal("\\^abc\\^" , @s33.escape_zsh)
76
+ assert_equal("\\_abc\\_" , @s34.escape_zsh)
77
+ assert_equal("\\{abc\\{" , @s35.escape_zsh)
78
+ assert_equal("\\|abc\\|" , @s36.escape_zsh)
79
+ assert_equal("\\}abc\\}" , @s37.escape_zsh)
80
+ assert_equal("\\~abc\\~" , @s38.escape_zsh)
81
+ assert_equal("\\`abc\\`" , @s39.escape_zsh)
82
+ assert_equal("\\&abc\\&" , @s40.escape_zsh)
83
+ assert_equal("\\+abc\\+" , @s41.escape_zsh)
84
+ assert_equal("\\'abc\\'" , @s42.escape_zsh)
85
+ end
86
86
 
87
87
  end
@@ -7,25 +7,25 @@ require "string/mismatch.rb"
7
7
 
8
8
  #describe String, "for mismatch check" do
9
9
  class TC_String_mismatch < Test::Unit::TestCase
10
- def setup
11
- @s00 = 'abcdefghij'
12
- @s01 = 'あいうえお'
13
- end
10
+ def setup
11
+ @s00 = 'abcdefghij'
12
+ @s01 = 'あいうえお'
13
+ end
14
14
 
15
- #it "should be indicated first mismatch char index" do
16
- def test_mismatch
17
- assert_equal(nil, @s00.mismatch( "abcdefghij" ) )
18
- assert_equal( 0 , @s00.mismatch( "_bcdefghij" ) )
19
- assert_equal( 4 , @s00.mismatch( "abcd_fghij" ) )
20
- assert_equal(10 , @s00.mismatch( "abcdefghijk" ) )
21
- assert_equal( 3 , @s00.mismatch( "abc" ) )
15
+ #it "should be indicated first mismatch char index" do
16
+ def test_mismatch
17
+ assert_equal(nil, @s00.mismatch( "abcdefghij" ) )
18
+ assert_equal( 0 , @s00.mismatch( "_bcdefghij" ) )
19
+ assert_equal( 4 , @s00.mismatch( "abcd_fghij" ) )
20
+ assert_equal(10 , @s00.mismatch( "abcdefghijk" ) )
21
+ assert_equal( 3 , @s00.mismatch( "abc" ) )
22
22
 
23
- assert_equal(nil, @s01.mismatch( "あいうえお" ) )
24
- assert_equal( 0 , @s01.mismatch( "_いうえお" ) )
25
- assert_equal( 4 , @s01.mismatch( "あいうえ_" ) )
26
- assert_equal( 5 , @s01.mismatch( "あいうえおか" ) )
27
- assert_equal( 3 , @s01.mismatch( "あいう" ) )
28
- end
23
+ assert_equal(nil, @s01.mismatch( "あいうえお" ) )
24
+ assert_equal( 0 , @s01.mismatch( "_いうえお" ) )
25
+ assert_equal( 4 , @s01.mismatch( "あいうえ_" ) )
26
+ assert_equal( 5 , @s01.mismatch( "あいうえおか" ) )
27
+ assert_equal( 3 , @s01.mismatch( "あいう" ) )
28
+ end
29
29
 
30
30
  end
31
31
 
@@ -8,83 +8,83 @@ require "string/splitparens.rb"
8
8
  #describe String, "" do
9
9
  class TC_String_splitparens < Test::Unit::TestCase
10
10
 
11
- def setup
12
- @s00 = "(ab)(cd(ef))gh(ij)kl(mn)"
13
- @s01 = "((ab)(cd(ef))gh(ij)kl(mn)" # open paren excess.
14
- @s02 = "(ab)(cd(ef)))gh(ij)kl(mn)" # close paren excess.
15
- end
11
+ def setup
12
+ @s00 = "(ab)(cd(ef))gh(ij)kl(mn)"
13
+ @s01 = "((ab)(cd(ef))gh(ij)kl(mn)" # open paren excess.
14
+ @s02 = "(ab)(cd(ef)))gh(ij)kl(mn)" # close paren excess.
15
+ end
16
16
 
17
- def test_split_parens
18
- #describe "many parens" do
19
- assert_equal(["(ab)", "(cd(ef))", "gh", "(ij)", "kl", "(mn)"],
20
- @s00.split_parens)
21
- assert_equal(["((ab)(cd(ef))gh(ij)kl(mn)"] ,
22
- @s01.split_parens)
23
- assert_equal(["(ab)", "(cd(ef))", ")gh(ij)kl(mn)"] ,
24
- @s02.split_parens)
25
- end
17
+ def test_split_parens
18
+ #describe "many parens" do
19
+ assert_equal(["(ab)", "(cd(ef))", "gh", "(ij)", "kl", "(mn)"],
20
+ @s00.split_parens)
21
+ assert_equal(["((ab)(cd(ef))gh(ij)kl(mn)"] ,
22
+ @s01.split_parens)
23
+ assert_equal(["(ab)", "(cd(ef))", ")gh(ij)kl(mn)"] ,
24
+ @s02.split_parens)
25
+ end
26
26
 
27
- def test_open_close
28
- #describe "single char" do
29
- assert_equal( false, '(' .close_paren?)
30
- assert_equal( true , '(' .open_paren? )
31
- assert_equal( true , ')' .close_paren?)
32
- assert_equal( false, ')' .open_paren? )
33
- assert_equal( false, '<' .close_paren?)
34
- assert_equal( true , '<' .open_paren? )
35
- assert_equal( true , '>' .close_paren?)
36
- assert_equal( false, '>' .open_paren? )
37
- assert_equal( false, '[' .close_paren?)
38
- assert_equal( true , '[' .open_paren? )
39
- assert_equal( true , ']' .close_paren?)
40
- assert_equal( false, ']' .open_paren? )
41
- assert_equal( false, '{' .close_paren?)
42
- assert_equal( true , '{' .open_paren? )
43
- assert_equal( true , '}' .close_paren?)
44
- assert_equal( false, '}' .open_paren? )
45
- assert_equal( false, '('.close_paren?)
46
- assert_equal( true , '('.open_paren? )
47
- assert_equal( true , ')'.close_paren?)
48
- assert_equal( false, ')'.open_paren? )
49
- assert_equal( false, '〔'.close_paren?)
50
- assert_equal( true , '〔'.open_paren? )
51
- assert_equal( true , '〕'.close_paren?)
52
- assert_equal( false, '〕'.open_paren? )
53
- assert_equal( false, '['.close_paren?)
54
- assert_equal( true , '['.open_paren? )
55
- assert_equal( true , ']'.close_paren?)
56
- assert_equal( false, ']'.open_paren? )
57
- assert_equal( false, '{'.close_paren?)
58
- assert_equal( true , '{'.open_paren? )
59
- assert_equal( true , '}'.close_paren?)
60
- assert_equal( false, '}'.open_paren? )
61
- assert_equal( false, '〈'.close_paren?)
62
- assert_equal( true , '〈'.open_paren? )
63
- assert_equal( true , '〉'.close_paren?)
64
- assert_equal( false, '〉'.open_paren? )
65
- assert_equal( false, '《'.close_paren?)
66
- assert_equal( true , '《'.open_paren? )
67
- assert_equal( true , '》'.close_paren?)
68
- assert_equal( false, '》'.open_paren? )
69
- assert_equal( false, '「'.close_paren?)
70
- assert_equal( true , '「'.open_paren? )
71
- assert_equal( true , '」'.close_paren?)
72
- assert_equal( false, '」'.open_paren? )
73
- assert_equal( false, '『'.close_paren?)
74
- assert_equal( true , '『'.open_paren? )
75
- assert_equal( true , '』'.close_paren?)
76
- assert_equal( false, '』'.open_paren? )
77
- assert_equal( false, '【'.close_paren?)
78
- assert_equal( true , '【'.open_paren? )
79
- assert_equal( true , '】'.close_paren?)
80
- assert_equal( false, '】'.open_paren? )
81
- assert_equal( false, '<'.close_paren?)
82
- assert_equal( true , '<'.open_paren? )
83
- assert_equal( true , '>'.close_paren?)
84
- assert_equal( false, '>'.open_paren? )
85
- assert_equal( false, '(('.open_paren? )
86
- assert_equal( false, '))'.open_paren? )
87
- assert_equal( false, '({'.open_paren? )
88
- assert_equal( false, ')}'.open_paren? )
89
- end
27
+ def test_open_close
28
+ #describe "single char" do
29
+ assert_equal( false, '(' .close_paren?)
30
+ assert_equal( true , '(' .open_paren? )
31
+ assert_equal( true , ')' .close_paren?)
32
+ assert_equal( false, ')' .open_paren? )
33
+ assert_equal( false, '<' .close_paren?)
34
+ assert_equal( true , '<' .open_paren? )
35
+ assert_equal( true , '>' .close_paren?)
36
+ assert_equal( false, '>' .open_paren? )
37
+ assert_equal( false, '[' .close_paren?)
38
+ assert_equal( true , '[' .open_paren? )
39
+ assert_equal( true , ']' .close_paren?)
40
+ assert_equal( false, ']' .open_paren? )
41
+ assert_equal( false, '{' .close_paren?)
42
+ assert_equal( true , '{' .open_paren? )
43
+ assert_equal( true , '}' .close_paren?)
44
+ assert_equal( false, '}' .open_paren? )
45
+ assert_equal( false, '('.close_paren?)
46
+ assert_equal( true , '('.open_paren? )
47
+ assert_equal( true , ')'.close_paren?)
48
+ assert_equal( false, ')'.open_paren? )
49
+ assert_equal( false, '〔'.close_paren?)
50
+ assert_equal( true , '〔'.open_paren? )
51
+ assert_equal( true , '〕'.close_paren?)
52
+ assert_equal( false, '〕'.open_paren? )
53
+ assert_equal( false, '['.close_paren?)
54
+ assert_equal( true , '['.open_paren? )
55
+ assert_equal( true , ']'.close_paren?)
56
+ assert_equal( false, ']'.open_paren? )
57
+ assert_equal( false, '{'.close_paren?)
58
+ assert_equal( true , '{'.open_paren? )
59
+ assert_equal( true , '}'.close_paren?)
60
+ assert_equal( false, '}'.open_paren? )
61
+ assert_equal( false, '〈'.close_paren?)
62
+ assert_equal( true , '〈'.open_paren? )
63
+ assert_equal( true , '〉'.close_paren?)
64
+ assert_equal( false, '〉'.open_paren? )
65
+ assert_equal( false, '《'.close_paren?)
66
+ assert_equal( true , '《'.open_paren? )
67
+ assert_equal( true , '》'.close_paren?)
68
+ assert_equal( false, '》'.open_paren? )
69
+ assert_equal( false, '「'.close_paren?)
70
+ assert_equal( true , '「'.open_paren? )
71
+ assert_equal( true , '」'.close_paren?)
72
+ assert_equal( false, '」'.open_paren? )
73
+ assert_equal( false, '『'.close_paren?)
74
+ assert_equal( true , '『'.open_paren? )
75
+ assert_equal( true , '』'.close_paren?)
76
+ assert_equal( false, '』'.open_paren? )
77
+ assert_equal( false, '【'.close_paren?)
78
+ assert_equal( true , '【'.open_paren? )
79
+ assert_equal( true , '】'.close_paren?)
80
+ assert_equal( false, '】'.open_paren? )
81
+ assert_equal( false, '<'.close_paren?)
82
+ assert_equal( true , '<'.open_paren? )
83
+ assert_equal( true , '>'.close_paren?)
84
+ assert_equal( false, '>'.open_paren? )
85
+ assert_equal( false, '(('.open_paren? )
86
+ assert_equal( false, '))'.open_paren? )
87
+ assert_equal( false, '({'.open_paren? )
88
+ assert_equal( false, ')}'.open_paren? )
89
+ end
90
90
  end
@@ -7,13 +7,13 @@ require "string/width.rb"
7
7
 
8
8
  class TC_String_width < Test::Unit::TestCase
9
9
  #describe String, "for width in displayed terminal" do
10
- def test_width
11
- assert_equal( 3, "abc".width )
12
- assert_equal( 6, "あいう".width )
13
- assert_equal( 9, "あaいbうc".width )
14
- assert_equal( 1, "’".width )
15
- assert_equal( 1, "”".width )
16
- end
10
+ def test_width
11
+ assert_equal( 3, "abc".width )
12
+ assert_equal( 6, "あいう".width )
13
+ assert_equal( 9, "あaいbうc".width )
14
+ assert_equal( 1, "’".width )
15
+ assert_equal( 1, "”".width )
16
+ end
17
17
 
18
18
  end
19
19
 
metadata CHANGED
@@ -1,100 +1,89 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: builtinextension
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
5
- prerelease:
4
+ version: 0.1.3
6
5
  platform: ruby
7
6
  authors:
8
7
  - ippei94da
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-08-30 00:00:00.000000000 Z
11
+ date: 2015-07-17 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: test-unit
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
- version: 3.0.1
19
+ version: 3.1.2
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ~>
24
+ - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: 3.0.1
26
+ version: 3.1.2
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rdoc
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ~>
31
+ - - "~>"
36
32
  - !ruby/object:Gem::Version
37
- version: 4.1.1
33
+ version: 4.2.0
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ~>
38
+ - - "~>"
44
39
  - !ruby/object:Gem::Version
45
- version: 4.1.1
40
+ version: 4.2.0
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: bundler
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ~>
45
+ - - "~>"
52
46
  - !ruby/object:Gem::Version
53
- version: 1.7.2
47
+ version: 1.10.5
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ~>
52
+ - - "~>"
60
53
  - !ruby/object:Gem::Version
61
- version: 1.7.2
54
+ version: 1.10.5
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: jeweler
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ~>
59
+ - - "~>"
68
60
  - !ruby/object:Gem::Version
69
61
  version: 2.0.1
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ~>
66
+ - - "~>"
76
67
  - !ruby/object:Gem::Version
77
68
  version: 2.0.1
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: simplecov
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ~>
73
+ - - "~>"
84
74
  - !ruby/object:Gem::Version
85
75
  version: 0.9.0
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ~>
80
+ - - "~>"
92
81
  - !ruby/object:Gem::Version
93
82
  version: 0.9.0
94
- description: ! "Personally frequently used methods for builtin classes,\n e.g.,
95
- String, Array, etc.\n These methods are not implemented in Ruby and\n are
96
- doubted to offer to be implemented into Ruby core system.\n A main target is
97
- my personal programming.\n "
83
+ description: "Personally frequently used methods for builtin classes,\n e.g., String,
84
+ Array, etc.\n These methods are not implemented in Ruby and\n are doubted
85
+ to offer to be implemented into Ruby core system.\n A main target is my personal
86
+ programming.\n "
98
87
  email: ippei94da@gmail.com
99
88
  executables: []
100
89
  extensions: []
@@ -102,8 +91,8 @@ extra_rdoc_files:
102
91
  - LICENSE.txt
103
92
  - README.rdoc
104
93
  files:
105
- - .document
106
- - .rspec
94
+ - ".document"
95
+ - ".rspec"
107
96
  - CHANGES
108
97
  - Gemfile
109
98
  - LICENSE.txt
@@ -113,6 +102,7 @@ files:
113
102
  - builtinextension.gemspec
114
103
  - lib/array/includeeql.rb
115
104
  - lib/array/selectindices.rb
105
+ - lib/float/equalindelta.rb
116
106
  - lib/string/color.rb
117
107
  - lib/string/escapezsh.rb
118
108
  - lib/string/mismatch.rb
@@ -122,6 +112,7 @@ files:
122
112
  - test/print_color
123
113
  - test/test_array_include_eql.rb
124
114
  - test/test_array_select_indices.rb
115
+ - test/test_float_equalindelta.rb
125
116
  - test/test_string_color.rb
126
117
  - test/test_string_escape_zsh.rb
127
118
  - test/test_string_mismatch.rb
@@ -130,29 +121,25 @@ files:
130
121
  homepage: http://github.com/ippei94da/builtinextension
131
122
  licenses:
132
123
  - MIT
124
+ metadata: {}
133
125
  post_install_message:
134
126
  rdoc_options: []
135
127
  require_paths:
136
128
  - lib
137
129
  required_ruby_version: !ruby/object:Gem::Requirement
138
- none: false
139
130
  requirements:
140
- - - ! '>='
131
+ - - ">="
141
132
  - !ruby/object:Gem::Version
142
133
  version: '0'
143
- segments:
144
- - 0
145
- hash: 4197041403979202951
146
134
  required_rubygems_version: !ruby/object:Gem::Requirement
147
- none: false
148
135
  requirements:
149
- - - ! '>='
136
+ - - ">="
150
137
  - !ruby/object:Gem::Version
151
138
  version: '0'
152
139
  requirements: []
153
140
  rubyforge_project:
154
- rubygems_version: 1.8.23
141
+ rubygems_version: 2.2.2
155
142
  signing_key:
156
- specification_version: 3
143
+ specification_version: 4
157
144
  summary: Method as extension for builtin classes
158
145
  test_files: []