thefox-ext 1.1.1 → 1.2.0
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/.travis.yml +9 -0
- data/Gemfile.lock +4 -1
- data/Makefile +4 -0
- data/Makefile.common +4 -3
- data/lib/thefox-ext.rb +2 -0
- data/lib/thefox-ext/console.rb +50 -0
- data/lib/thefox-ext/ext/nil.rb +1 -1
- data/lib/thefox-ext/ext/string.rb +4 -0
- data/lib/thefox-ext/version.rb +2 -2
- data/tests/tc_false.rb +11 -0
- data/tests/tc_integer.rb +20 -0
- data/tests/tc_nil.rb +11 -0
- data/tests/tc_string.rb +87 -0
- data/tests/tc_true.rb +11 -0
- data/tests/ts_all.rb +7 -0
- data/thefox-ext.gemspec +4 -1
- metadata +40 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ee911e444424c00f4bd6a4e18f439e8121057000
|
4
|
+
data.tar.gz: 4b2a22e6b4bc4b93e9306e9930b3780bc86a64b9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 10a470cfb54127d0bc24b1bc62b2d5b31e6cb1a7c2ca7d1577c956e9746d804be27b661437ee7117dc6157f4c8cda5a610feba95589de60f8cc0b5c846a2c45c
|
7
|
+
data.tar.gz: 76ca6d660005fa7d8e7564445fc1eaae37f2cb4f21821d765e0af62872d37227f85202ebaff4146f40fe1833dbf2a7f3f19a4261d7a9e5089dc627a74c063b4e
|
data/.travis.yml
ADDED
data/Gemfile.lock
CHANGED
@@ -1,16 +1,19 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
thefox-ext (1.
|
4
|
+
thefox-ext (1.2.0)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
8
8
|
specs:
|
9
|
+
minitest (5.8.3)
|
9
10
|
|
10
11
|
PLATFORMS
|
11
12
|
ruby
|
12
13
|
|
13
14
|
DEPENDENCIES
|
15
|
+
bundler (~> 1.10)
|
16
|
+
minitest (~> 5.8)
|
14
17
|
thefox-ext!
|
15
18
|
|
16
19
|
BUNDLED WITH
|
data/Makefile
CHANGED
data/Makefile.common
CHANGED
@@ -1,21 +1,22 @@
|
|
1
1
|
|
2
2
|
# Ruby Common Big
|
3
|
-
# 2015-12-
|
3
|
+
# 2015-12-15
|
4
4
|
|
5
5
|
MV = mv -nv
|
6
6
|
RM = rm -rf
|
7
7
|
MKDIR = mkdir -p
|
8
8
|
BUNDLER = bundle
|
9
|
+
BUNDLER_OPTIONS = --jobs=5 --retry=3
|
9
10
|
GEMSPEC_FILE = $(GEM_NAME).gemspec
|
10
11
|
|
11
|
-
.PHONY: all
|
12
|
+
.PHONY: all $(ALL_TARGETS_EXT)
|
12
13
|
all: setup
|
13
14
|
|
14
15
|
.PHONY: setup
|
15
16
|
setup: .setup
|
16
17
|
|
17
18
|
.setup:
|
18
|
-
$(BUNDLER) install
|
19
|
+
$(BUNDLER) install $(BUNDLER_OPTIONS)
|
19
20
|
touch $@
|
20
21
|
|
21
22
|
.PHONY: install
|
data/lib/thefox-ext.rb
CHANGED
@@ -0,0 +1,50 @@
|
|
1
|
+
|
2
|
+
class Console
|
3
|
+
|
4
|
+
CHAR_ESCAPE = "\x1b"
|
5
|
+
|
6
|
+
def self.cursor_up(rows = 1)
|
7
|
+
print "#{CHAR_ESCAPE}[#{rows}A"
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.cursor_down(rows = 1)
|
11
|
+
print "#{CHAR_ESCAPE}[#{rows}B"
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.cursor_jump_to_top
|
15
|
+
print "#{CHAR_ESCAPE}[1;1f"
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.cursor_jump_to_column(col = 1)
|
19
|
+
print "#{CHAR_ESCAPE}[#{col}G"
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.cursor_right(offset = 1)
|
23
|
+
print "#{CHAR_ESCAPE}[#{offset}C"
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.cursor_left(offset = 1)
|
27
|
+
print "#{CHAR_ESCAPE}[#{offset}D"
|
28
|
+
end
|
29
|
+
|
30
|
+
def self.line_clear
|
31
|
+
print "\r#{CHAR_ESCAPE}[K"
|
32
|
+
end
|
33
|
+
|
34
|
+
def self.line_clear_right
|
35
|
+
print "#{CHAR_ESCAPE}[0K"
|
36
|
+
end
|
37
|
+
|
38
|
+
def self.screen_clear_to_bottom
|
39
|
+
print "#{CHAR_ESCAPE}[J"
|
40
|
+
end
|
41
|
+
|
42
|
+
def self.scroll_up
|
43
|
+
print "#{CHAR_ESCAPE}[S"
|
44
|
+
end
|
45
|
+
|
46
|
+
def self.scroll_down
|
47
|
+
print "#{CHAR_ESCAPE}[T"
|
48
|
+
end
|
49
|
+
|
50
|
+
end
|
data/lib/thefox-ext/ext/nil.rb
CHANGED
data/lib/thefox-ext/version.rb
CHANGED
data/tests/tc_false.rb
ADDED
data/tests/tc_integer.rb
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'bundler/setup'
|
4
|
+
require 'minitest/autorun'
|
5
|
+
require 'thefox-ext'
|
6
|
+
|
7
|
+
class TestInteger < MiniTest::Test
|
8
|
+
def test_to_b
|
9
|
+
assert_equal(true, 3.to_b)
|
10
|
+
assert_equal(true, 2.to_b)
|
11
|
+
assert_equal(true, 1.to_b)
|
12
|
+
|
13
|
+
assert_equal(false, 0.to_b)
|
14
|
+
|
15
|
+
assert_equal(true, -1.to_b)
|
16
|
+
assert_equal(true, -2.to_b)
|
17
|
+
assert_equal(true, -3.to_b)
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
data/tests/tc_nil.rb
ADDED
data/tests/tc_string.rb
ADDED
@@ -0,0 +1,87 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'bundler/setup'
|
4
|
+
require 'minitest/autorun'
|
5
|
+
require 'thefox-ext'
|
6
|
+
|
7
|
+
class TestString < MiniTest::Test
|
8
|
+
def test_is_digit
|
9
|
+
assert_equal(true, '0123456789'.is_digit?)
|
10
|
+
assert_equal(true, '1'.is_digit?)
|
11
|
+
assert_equal(true, '2'.is_digit?)
|
12
|
+
|
13
|
+
assert_equal(false, 'ABC'.is_digit?)
|
14
|
+
assert_equal(false, 'A'.is_digit?)
|
15
|
+
assert_equal(false, 'A123'.is_digit?)
|
16
|
+
assert_equal(false, '123B'.is_digit?)
|
17
|
+
|
18
|
+
assert_equal(false, 'abc'.is_digit?)
|
19
|
+
assert_equal(false, 'a'.is_digit?)
|
20
|
+
assert_equal(false, 'a123'.is_digit?)
|
21
|
+
assert_equal(false, '123b'.is_digit?)
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_is_lower
|
25
|
+
assert_equal(false, '0123456789'.is_lower?)
|
26
|
+
assert_equal(false, '1'.is_lower?)
|
27
|
+
assert_equal(false, '2'.is_lower?)
|
28
|
+
|
29
|
+
assert_equal(false, 'ABC'.is_lower?)
|
30
|
+
assert_equal(false, 'A'.is_lower?)
|
31
|
+
assert_equal(false, 'A123'.is_lower?)
|
32
|
+
assert_equal(false, '123B'.is_lower?)
|
33
|
+
|
34
|
+
assert_equal(true, 'abc'.is_lower?)
|
35
|
+
assert_equal(true, 'a'.is_lower?)
|
36
|
+
assert_equal(false, 'a123'.is_lower?)
|
37
|
+
assert_equal(false, '123b'.is_lower?)
|
38
|
+
end
|
39
|
+
|
40
|
+
def test_is_upper
|
41
|
+
assert_equal(false, '0123456789'.is_upper?)
|
42
|
+
assert_equal(false, '1'.is_upper?)
|
43
|
+
assert_equal(false, '2'.is_upper?)
|
44
|
+
|
45
|
+
assert_equal(true, 'ABC'.is_upper?)
|
46
|
+
assert_equal(true, 'A'.is_upper?)
|
47
|
+
assert_equal(false, 'A123'.is_upper?)
|
48
|
+
assert_equal(false, '123B'.is_upper?)
|
49
|
+
|
50
|
+
assert_equal(false, 'abc'.is_upper?)
|
51
|
+
assert_equal(false, 'a'.is_upper?)
|
52
|
+
assert_equal(false, 'a123'.is_upper?)
|
53
|
+
assert_equal(false, '123b'.is_upper?)
|
54
|
+
end
|
55
|
+
|
56
|
+
def test_is_utf8
|
57
|
+
assert_equal(true, 'ABC'.is_utf8?)
|
58
|
+
assert_equal(true, 'üäöß'.is_utf8?)
|
59
|
+
end
|
60
|
+
|
61
|
+
def test_titlecase
|
62
|
+
assert_equal('Abc Abc', 'ABC ABC'.titlecase)
|
63
|
+
assert_equal('Abc Abc', 'ABC abc'.titlecase)
|
64
|
+
assert_equal('Abc Abc', 'abc ABC'.titlecase)
|
65
|
+
assert_equal('Abc Abc', 'Abc Abc'.titlecase)
|
66
|
+
assert_equal('Abc Abc', 'abc abc'.titlecase)
|
67
|
+
assert_equal('Abc Abc', 'aBc abc'.titlecase)
|
68
|
+
assert_equal('Abc Abc', 'aBc abC'.titlecase)
|
69
|
+
|
70
|
+
assert_equal('Abc1 Abc2', 'ABC1 ABC2'.titlecase)
|
71
|
+
|
72
|
+
assert_equal('(abc Abc)', '(ABC ABC)'.titlecase)
|
73
|
+
end
|
74
|
+
|
75
|
+
def test_to_hex
|
76
|
+
assert_equal('41424320414243', 'ABC ABC'.to_hex)
|
77
|
+
end
|
78
|
+
|
79
|
+
def test_to_i32a
|
80
|
+
assert_equal({0 => 1090519040}, 'A'.to_i32a)
|
81
|
+
end
|
82
|
+
|
83
|
+
def test_to_utf8
|
84
|
+
assert_equal('Abc', 'Abc'.to_utf8)
|
85
|
+
assert_equal('AüäößE', 'AüäößE'.to_utf8)
|
86
|
+
end
|
87
|
+
end
|
data/tests/tc_true.rb
ADDED
data/tests/ts_all.rb
ADDED
data/thefox-ext.gemspec
CHANGED
@@ -19,5 +19,8 @@ Gem::Specification.new do |spec|
|
|
19
19
|
|
20
20
|
spec.files = `git ls-files -z`.split("\x0").reject{ |f| f.match(%r{^(test|spec|features)/}) }
|
21
21
|
spec.require_paths = ['lib']
|
22
|
-
spec.required_ruby_version = '>=2.
|
22
|
+
spec.required_ruby_version = '>=2.1.0'
|
23
|
+
|
24
|
+
spec.add_development_dependency 'bundler', '~>1.10'
|
25
|
+
spec.add_development_dependency 'minitest', '~>5.8'
|
23
26
|
end
|
metadata
CHANGED
@@ -1,15 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: thefox-ext
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Christian Mayer
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-12-
|
12
|
-
dependencies:
|
11
|
+
date: 2015-12-17 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.10'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.10'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: minitest
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '5.8'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '5.8'
|
13
41
|
description: Extended and useful helper classes for Ruby.
|
14
42
|
email: christian@fox21.at
|
15
43
|
executables: []
|
@@ -17,18 +45,26 @@ extensions: []
|
|
17
45
|
extra_rdoc_files: []
|
18
46
|
files:
|
19
47
|
- ".gitignore"
|
48
|
+
- ".travis.yml"
|
20
49
|
- Gemfile
|
21
50
|
- Gemfile.lock
|
22
51
|
- Makefile
|
23
52
|
- Makefile.common
|
24
53
|
- README.md
|
25
54
|
- lib/thefox-ext.rb
|
55
|
+
- lib/thefox-ext/console.rb
|
26
56
|
- lib/thefox-ext/ext/false.rb
|
27
57
|
- lib/thefox-ext/ext/integer.rb
|
28
58
|
- lib/thefox-ext/ext/nil.rb
|
29
59
|
- lib/thefox-ext/ext/string.rb
|
30
60
|
- lib/thefox-ext/ext/true.rb
|
31
61
|
- lib/thefox-ext/version.rb
|
62
|
+
- tests/tc_false.rb
|
63
|
+
- tests/tc_integer.rb
|
64
|
+
- tests/tc_nil.rb
|
65
|
+
- tests/tc_string.rb
|
66
|
+
- tests/tc_true.rb
|
67
|
+
- tests/ts_all.rb
|
32
68
|
- thefox-ext.gemspec
|
33
69
|
- thefox-ext.sublime-project
|
34
70
|
homepage: https://github.com/TheFox/ext.rb
|
@@ -43,7 +79,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
43
79
|
requirements:
|
44
80
|
- - ">="
|
45
81
|
- !ruby/object:Gem::Version
|
46
|
-
version: 2.
|
82
|
+
version: 2.1.0
|
47
83
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
48
84
|
requirements:
|
49
85
|
- - ">="
|