hirb 0.6.0 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gemspec +1 -1
- data/.travis.yml +8 -0
- data/CHANGELOG.rdoc +4 -0
- data/README.rdoc +1 -1
- data/lib/hirb/util.rb +1 -1
- data/lib/hirb/version.rb +1 -1
- data/lib/hirb/views/mongo_db.rb +5 -2
- data/test/auto_table_test.rb +7 -4
- data/test/view_test.rb +19 -6
- data/test/views_test.rb +10 -1
- metadata +13 -11
data/.gemspec
CHANGED
@@ -15,7 +15,7 @@ Gem::Specification.new do |s|
|
|
15
15
|
s.add_development_dependency 'mocha', '>= 0.9.8'
|
16
16
|
s.add_development_dependency 'mocha-on-bacon', '>= 0.1.1'
|
17
17
|
s.add_development_dependency 'bacon-bits'
|
18
|
-
s.files = Dir.glob(%w[{lib,test}/**/*.rb bin/* [A-Z]*.{txt,rdoc} ext/**/*.{rb,c} **/deps.rip]) + %w{Rakefile .gemspec}
|
18
|
+
s.files = Dir.glob(%w[{lib,test}/**/*.rb bin/* [A-Z]*.{txt,rdoc} ext/**/*.{rb,c} **/deps.rip]) + %w{Rakefile .gemspec .travis.yml}
|
19
19
|
s.extra_rdoc_files = ["README.rdoc", "LICENSE.txt"]
|
20
20
|
s.license = 'MIT'
|
21
21
|
end
|
data/.travis.yml
ADDED
data/CHANGELOG.rdoc
CHANGED
data/README.rdoc
CHANGED
@@ -180,7 +180,7 @@ Table code from http://gist.github.com/72234 and {my console app's needs}[http:/
|
|
180
180
|
== Credits
|
181
181
|
* Chrononaut for vertical table helper.
|
182
182
|
* janlelis for unicode table helper.
|
183
|
-
* crafterm, spastorino, xaviershay, bogdan, asanghi and joshua for patches.
|
183
|
+
* crafterm, spastorino, xaviershay, bogdan, asanghi, vwall and joshua for patches.
|
184
184
|
|
185
185
|
== Bugs/Issues
|
186
186
|
Please report them {on github}[http://github.com/cldwalker/hirb/issues].
|
data/lib/hirb/util.rb
CHANGED
data/lib/hirb/version.rb
CHANGED
data/lib/hirb/views/mongo_db.rb
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
module Hirb::Views::MongoDb #:nodoc:
|
2
2
|
def mongoid__document_view(obj)
|
3
|
-
|
3
|
+
fields = obj.class.fields.keys
|
4
|
+
fields.delete('_id')
|
5
|
+
fields.unshift('_id')
|
6
|
+
{:fields=>fields}
|
4
7
|
end
|
5
8
|
|
6
9
|
def mongo_mapper__document_view(obj)
|
@@ -11,4 +14,4 @@ module Hirb::Views::MongoDb #:nodoc:
|
|
11
14
|
alias_method :mongo_mapper__embedded_document_view, :mongo_mapper__document_view
|
12
15
|
end
|
13
16
|
|
14
|
-
Hirb::DynamicView.add Hirb::Views::MongoDb, :helper=>:auto_table
|
17
|
+
Hirb::DynamicView.add Hirb::Views::MongoDb, :helper=>:auto_table
|
data/test/auto_table_test.rb
CHANGED
@@ -3,13 +3,16 @@ require File.join(File.dirname(__FILE__), 'test_helper')
|
|
3
3
|
describe "auto table" do
|
4
4
|
it "converts nonarrays to arrays and renders" do
|
5
5
|
require 'set'
|
6
|
+
# rubinius sorts Set#to_a differently
|
7
|
+
arr = RUBY_DESCRIPTION.include?('rubinius') ? Set.new([1,2,3]).to_a : [1,2,3]
|
8
|
+
|
6
9
|
expected_table = <<-TABLE.unindent
|
7
10
|
+-------+
|
8
11
|
| value |
|
9
12
|
+-------+
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
+
| #{arr[0]} |
|
14
|
+
| #{arr[1]} |
|
15
|
+
| #{arr[2]} |
|
13
16
|
+-------+
|
14
17
|
3 rows in set
|
15
18
|
TABLE
|
@@ -27,4 +30,4 @@ describe "auto table" do
|
|
27
30
|
TABLE
|
28
31
|
Helpers::AutoTable.render({:a=>12345}).should == expected_table
|
29
32
|
end
|
30
|
-
end
|
33
|
+
end
|
data/test/view_test.rb
CHANGED
@@ -4,7 +4,7 @@ describe "View" do
|
|
4
4
|
def formatter_config
|
5
5
|
View.formatter.config
|
6
6
|
end
|
7
|
-
|
7
|
+
|
8
8
|
it "page_output pages when view is enabled" do
|
9
9
|
Hirb.enable
|
10
10
|
View.pager.stubs(:activated_by?).returns(true)
|
@@ -101,12 +101,22 @@ describe "View" do
|
|
101
101
|
|
102
102
|
describe "resize" do
|
103
103
|
def pager; View.pager; end
|
104
|
-
before
|
104
|
+
before do
|
105
|
+
View.pager = nil; reset_config; Hirb.enable
|
106
|
+
end
|
107
|
+
|
105
108
|
after { Hirb.disable}
|
106
109
|
it "changes width and height with stty" do
|
110
|
+
if RUBY_PLATFORM[/java/]
|
111
|
+
Util.expects(:command_exists?).with('tput').returns(false)
|
112
|
+
end
|
113
|
+
# stub tty? since running with rake sets
|
114
|
+
STDIN.stubs(:tty?).returns(true)
|
107
115
|
Util.expects(:command_exists?).with('stty').returns(true)
|
108
116
|
ENV['COLUMNS'] = ENV['LINES'] = nil # bypasses env usage
|
109
|
-
|
117
|
+
|
118
|
+
capture_stderr { View.resize }
|
119
|
+
|
110
120
|
pager.width.should.not == 10
|
111
121
|
pager.height.should.not == 10
|
112
122
|
reset_terminal_size
|
@@ -121,8 +131,11 @@ describe "View" do
|
|
121
131
|
|
122
132
|
it "with no environment or stty still has valid width and height" do
|
123
133
|
View.config[:width] = View.config[:height] = nil
|
124
|
-
|
134
|
+
unless RUBY_PLATFORM[/java/]
|
135
|
+
Util.expects(:command_exists?).with('stty').returns(false)
|
136
|
+
end
|
125
137
|
ENV['COLUMNS'] = ENV['LINES'] = nil
|
138
|
+
|
126
139
|
View.resize
|
127
140
|
pager.width.is_a?(Integer).should == true
|
128
141
|
pager.height.is_a?(Integer).should == true
|
@@ -150,13 +163,13 @@ describe "View" do
|
|
150
163
|
View.render_method.expects(:call).with(string)
|
151
164
|
View.capture_and_render { print string }
|
152
165
|
end
|
153
|
-
|
166
|
+
|
154
167
|
it "state is toggled by toggle_pager" do
|
155
168
|
previous_state = View.config[:pager]
|
156
169
|
View.toggle_pager
|
157
170
|
View.config[:pager].should == !previous_state
|
158
171
|
end
|
159
|
-
|
172
|
+
|
160
173
|
it "state is toggled by toggle_formatter" do
|
161
174
|
previous_state = View.config[:formatter]
|
162
175
|
View.toggle_formatter
|
data/test/views_test.rb
CHANGED
@@ -10,4 +10,13 @@ describe "activerecord table" do
|
|
10
10
|
pet = stub(:name=>'rufus', :age=>7, :attributes=>{'name'=>'rufus'}, :class=>stub(:column_names=>%w{age name}))
|
11
11
|
Helpers::AutoTable.active_record__base_view(pet).should == {:fields=>[:name]}
|
12
12
|
end
|
13
|
-
end
|
13
|
+
end
|
14
|
+
|
15
|
+
describe "mongoid table" do
|
16
|
+
it "only has one _id" do
|
17
|
+
fields = {'_id' => 'x0f0x', 'name' => 'blah'}
|
18
|
+
mongoid_stub = stub(:class => stub(:fields => fields))
|
19
|
+
Helpers::AutoTable.mongoid__document_view(mongoid_stub).should ==
|
20
|
+
{:fields => fields.keys.sort}
|
21
|
+
end
|
22
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hirb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.1
|
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:
|
12
|
+
date: 2012-03-07 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bacon
|
16
|
-
requirement: &
|
16
|
+
requirement: &70230866543140 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 1.1.0
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70230866543140
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: mocha
|
27
|
-
requirement: &
|
27
|
+
requirement: &70230866542680 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 0.9.8
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70230866542680
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: mocha-on-bacon
|
38
|
-
requirement: &
|
38
|
+
requirement: &70230866514280 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 0.1.1
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70230866514280
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: bacon-bits
|
49
|
-
requirement: &
|
49
|
+
requirement: &70230866513900 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,7 +54,7 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70230866513900
|
58
58
|
description: Hirb provides a mini view framework for console applications and uses
|
59
59
|
it to improve ripl(irb)'s default inspect output. Given an object or array of objects,
|
60
60
|
hirb renders a view based on the object's class and/or ancestry. Hirb offers reusable
|
@@ -124,6 +124,7 @@ files:
|
|
124
124
|
- test/deps.rip
|
125
125
|
- Rakefile
|
126
126
|
- .gemspec
|
127
|
+
- .travis.yml
|
127
128
|
homepage: http://tagaholic.me/hirb/
|
128
129
|
licenses:
|
129
130
|
- MIT
|
@@ -145,9 +146,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
145
146
|
version: 1.3.5
|
146
147
|
requirements: []
|
147
148
|
rubyforge_project:
|
148
|
-
rubygems_version: 1.8.
|
149
|
+
rubygems_version: 1.8.15
|
149
150
|
signing_key:
|
150
151
|
specification_version: 3
|
151
152
|
summary: A mini view framework for console/irb that's easy to use, even while under
|
152
153
|
its influence.
|
153
154
|
test_files: []
|
155
|
+
has_rdoc:
|