table_print 1.5.1 → 1.5.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 +8 -8
- data/lib/table_print.rb +2 -2
- data/lib/table_print/config.rb +11 -0
- data/lib/table_print/version.rb +1 -1
- data/spec/config_spec.rb +26 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZTViMjhhZmQ0MTQ4MjAzOWE2YjY3YmQzYzMyMjNkMmNiYzI5MzFhZg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
M2U2ZGI4ZjA1OTUyOWY1YTY1OGVhY2Q4OWE5NWY3YWJhMWFiNTdkOQ==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
NWRlZGRjZmY5ZWY1OWU0YzYxODdhNmJkMzAwZjdhOGU3MGY2MjhiY2UxZmY3
|
10
|
+
M2Q3OTVmZGMyZDI3MTE0NDJiZjNkZjkxNzM4MjFhMmIzNWIxYWE0NWYwZGY4
|
11
|
+
OGM3ZmU5MzliYmI1M2I2MTg1Y2YxMTcxOTk4ZmY3OTk4NjAxYzQ=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
Y2QzYTFiOWQ2ZmQyMTJjZDE3OWQ5ZDQyNzFhOTc2MjI1MjNkZmQ1ZGJhMGMx
|
14
|
+
ZTViYWRlNTI4MTNmMDYzMmYyMDU4OTE5ODQ2ZDRmMzM1Y2NjZDc5NTJiNzI0
|
15
|
+
NzU4OGE2MGQwYTM0ZjRlYjhlODBlYWIyZTU0OTFmYzNkZjdlZWM=
|
data/lib/table_print.rb
CHANGED
@@ -17,7 +17,7 @@ module TablePrint
|
|
17
17
|
end
|
18
18
|
|
19
19
|
def initialize(data, options={})
|
20
|
-
@data =
|
20
|
+
@data = Array(data).compact
|
21
21
|
@options = options
|
22
22
|
@columns = nil
|
23
23
|
@start_time = Time.now
|
@@ -70,6 +70,6 @@ end
|
|
70
70
|
|
71
71
|
def tp(data=Class, *options)
|
72
72
|
printer = TablePrint::Printer.new(data, options)
|
73
|
-
puts printer.table_print unless data.is_a? Class
|
73
|
+
TablePrint::Config.io.puts printer.table_print unless data.is_a? Class
|
74
74
|
TablePrint::Returnable.new(printer.message) # we have to return *something*, might as well be execution time.
|
75
75
|
end
|
data/lib/table_print/config.rb
CHANGED
@@ -3,10 +3,12 @@ module TablePrint
|
|
3
3
|
|
4
4
|
DEFAULT_MAX_WIDTH = 30
|
5
5
|
DEFAULT_TIME_FORMAT = "%Y-%m-%d %H:%M:%S"
|
6
|
+
DEFAULT_IO = STDOUT
|
6
7
|
|
7
8
|
@@max_width = DEFAULT_MAX_WIDTH
|
8
9
|
@@time_format = DEFAULT_TIME_FORMAT
|
9
10
|
@@multibyte = false
|
11
|
+
@@io = STDOUT
|
10
12
|
|
11
13
|
@@klasses = {}
|
12
14
|
|
@@ -54,5 +56,14 @@ module TablePrint
|
|
54
56
|
def self.time_format=(format)
|
55
57
|
@@time_format = format
|
56
58
|
end
|
59
|
+
|
60
|
+
def self.io
|
61
|
+
@@io
|
62
|
+
end
|
63
|
+
|
64
|
+
def self.io=(io)
|
65
|
+
raise StandardError.new("IO object must respond to :puts") unless io.respond_to? :puts
|
66
|
+
@@io = io
|
67
|
+
end
|
57
68
|
end
|
58
69
|
end
|
data/lib/table_print/version.rb
CHANGED
data/spec/config_spec.rb
CHANGED
@@ -47,5 +47,31 @@ describe TablePrint::Config do
|
|
47
47
|
end
|
48
48
|
end
|
49
49
|
end
|
50
|
+
|
51
|
+
describe "io" do
|
52
|
+
before :all do
|
53
|
+
Sandbox.add_class("MyIO")
|
54
|
+
Sandbox.add_method("MyIO", :puts) {}
|
55
|
+
end
|
56
|
+
|
57
|
+
it "accepts object that respond to puts" do
|
58
|
+
myIO = Sandbox::MyIO.new
|
59
|
+
TablePrint::Config.set(:io, [myIO])
|
60
|
+
TablePrint::Config.io.should == myIO
|
61
|
+
end
|
62
|
+
|
63
|
+
it "doesn't accept objects unless they respond to puts" do
|
64
|
+
lambda {
|
65
|
+
TablePrint::Config.set(:io, [""])
|
66
|
+
}.should raise_error StandardError
|
67
|
+
end
|
68
|
+
|
69
|
+
it "defaults to STDOUT" do
|
70
|
+
myIO = Sandbox::MyIO.new
|
71
|
+
TablePrint::Config.set(:io, [myIO])
|
72
|
+
TablePrint::Config.clear(:io)
|
73
|
+
TablePrint::Config.io.should == STDOUT
|
74
|
+
end
|
75
|
+
end
|
50
76
|
end
|
51
77
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: table_print
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.5.
|
4
|
+
version: 1.5.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Doyle
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2014-06-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cat
|