hirber 0.8.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 +7 -0
- data/.gemspec +21 -0
- data/.travis.yml +11 -0
- data/CHANGELOG.rdoc +165 -0
- data/CONTRIBUTING.md +1 -0
- data/LICENSE.txt +22 -0
- data/README.rdoc +205 -0
- data/Rakefile +35 -0
- data/lib/bond/completions/hirb.rb +15 -0
- data/lib/hirb.rb +84 -0
- data/lib/hirb/console.rb +43 -0
- data/lib/hirb/dynamic_view.rb +113 -0
- data/lib/hirb/formatter.rb +126 -0
- data/lib/hirb/helpers.rb +18 -0
- data/lib/hirb/helpers/auto_table.rb +24 -0
- data/lib/hirb/helpers/markdown_table.rb +14 -0
- data/lib/hirb/helpers/object_table.rb +14 -0
- data/lib/hirb/helpers/parent_child_tree.rb +24 -0
- data/lib/hirb/helpers/tab_table.rb +24 -0
- data/lib/hirb/helpers/table.rb +376 -0
- data/lib/hirb/helpers/table/filters.rb +10 -0
- data/lib/hirb/helpers/table/resizer.rb +82 -0
- data/lib/hirb/helpers/tree.rb +181 -0
- data/lib/hirb/helpers/unicode_table.rb +15 -0
- data/lib/hirb/helpers/vertical_table.rb +37 -0
- data/lib/hirb/import_object.rb +10 -0
- data/lib/hirb/menu.rb +226 -0
- data/lib/hirb/pager.rb +106 -0
- data/lib/hirb/string.rb +44 -0
- data/lib/hirb/util.rb +96 -0
- data/lib/hirb/version.rb +3 -0
- data/lib/hirb/view.rb +272 -0
- data/lib/hirb/views.rb +8 -0
- data/lib/hirb/views/couch_db.rb +11 -0
- data/lib/hirb/views/misc_db.rb +15 -0
- data/lib/hirb/views/mongo_db.rb +17 -0
- data/lib/hirb/views/orm.rb +11 -0
- data/lib/hirb/views/rails.rb +19 -0
- data/lib/ripl/hirb.rb +15 -0
- data/test/auto_table_test.rb +33 -0
- data/test/console_test.rb +27 -0
- data/test/dynamic_view_test.rb +94 -0
- data/test/formatter_test.rb +176 -0
- data/test/hirb_test.rb +39 -0
- data/test/import_test.rb +9 -0
- data/test/menu_test.rb +272 -0
- data/test/object_table_test.rb +79 -0
- data/test/pager_test.rb +162 -0
- data/test/resizer_test.rb +62 -0
- data/test/table_test.rb +667 -0
- data/test/test_helper.rb +60 -0
- data/test/tree_test.rb +184 -0
- data/test/util_test.rb +59 -0
- data/test/view_test.rb +178 -0
- data/test/views_test.rb +22 -0
- metadata +164 -0
data/test/views_test.rb
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), 'test_helper')
|
2
|
+
|
3
|
+
describe "activerecord table" do
|
4
|
+
it "with no select gets default options" do
|
5
|
+
pet = stub(:name=>'rufus', :age=>7, :attributes=>{"name"=>'rufus', 'age'=>7}, :class=>stub(:column_names=>%w{age name}))
|
6
|
+
Helpers::AutoTable.active_record__base_view(pet).should == {:fields=>[:age, :name]}
|
7
|
+
end
|
8
|
+
|
9
|
+
it "with select gets default options" do
|
10
|
+
pet = stub(:name=>'rufus', :age=>7, :attributes=>{'name'=>'rufus'}, :class=>stub(:column_names=>%w{age name}))
|
11
|
+
Helpers::AutoTable.active_record__base_view(pet).should == {:fields=>[:name]}
|
12
|
+
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
ADDED
@@ -0,0 +1,164 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: hirber
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.8.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Gabriel Horner
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2020-10-09 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bacon
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 1.1.0
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 1.1.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: mocha
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.12.1
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.12.1
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: mocha-on-bacon
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 0.2.1
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 0.2.1
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: bacon-bits
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
description: Hirb provides a mini view framework for console applications and uses
|
70
|
+
it to improve ripl(irb)'s default inspect output. Given an object or array of objects,
|
71
|
+
hirb renders a view based on the object's class and/or ancestry. Hirb offers reusable
|
72
|
+
views in the form of helper classes. The two main helpers, Hirb::Helpers::Table
|
73
|
+
and Hirb::Helpers::Tree, provide several options for generating ascii tables and
|
74
|
+
trees. Using Hirb::Helpers::AutoTable, hirb has useful default views for at least
|
75
|
+
ten popular database gems i.e. Rails' ActiveRecord::Base. Other than views, hirb
|
76
|
+
offers a smart pager and a console menu. The smart pager only pages when the output
|
77
|
+
exceeds the current screen size. The menu is used in conjunction with tables to
|
78
|
+
offer two dimensional menus.
|
79
|
+
email: gabriel.horner@gmail.com
|
80
|
+
executables: []
|
81
|
+
extensions: []
|
82
|
+
extra_rdoc_files:
|
83
|
+
- README.rdoc
|
84
|
+
- LICENSE.txt
|
85
|
+
files:
|
86
|
+
- ".gemspec"
|
87
|
+
- ".travis.yml"
|
88
|
+
- CHANGELOG.rdoc
|
89
|
+
- CONTRIBUTING.md
|
90
|
+
- LICENSE.txt
|
91
|
+
- README.rdoc
|
92
|
+
- Rakefile
|
93
|
+
- lib/bond/completions/hirb.rb
|
94
|
+
- lib/hirb.rb
|
95
|
+
- lib/hirb/console.rb
|
96
|
+
- lib/hirb/dynamic_view.rb
|
97
|
+
- lib/hirb/formatter.rb
|
98
|
+
- lib/hirb/helpers.rb
|
99
|
+
- lib/hirb/helpers/auto_table.rb
|
100
|
+
- lib/hirb/helpers/markdown_table.rb
|
101
|
+
- lib/hirb/helpers/object_table.rb
|
102
|
+
- lib/hirb/helpers/parent_child_tree.rb
|
103
|
+
- lib/hirb/helpers/tab_table.rb
|
104
|
+
- lib/hirb/helpers/table.rb
|
105
|
+
- lib/hirb/helpers/table/filters.rb
|
106
|
+
- lib/hirb/helpers/table/resizer.rb
|
107
|
+
- lib/hirb/helpers/tree.rb
|
108
|
+
- lib/hirb/helpers/unicode_table.rb
|
109
|
+
- lib/hirb/helpers/vertical_table.rb
|
110
|
+
- lib/hirb/import_object.rb
|
111
|
+
- lib/hirb/menu.rb
|
112
|
+
- lib/hirb/pager.rb
|
113
|
+
- lib/hirb/string.rb
|
114
|
+
- lib/hirb/util.rb
|
115
|
+
- lib/hirb/version.rb
|
116
|
+
- lib/hirb/view.rb
|
117
|
+
- lib/hirb/views.rb
|
118
|
+
- lib/hirb/views/couch_db.rb
|
119
|
+
- lib/hirb/views/misc_db.rb
|
120
|
+
- lib/hirb/views/mongo_db.rb
|
121
|
+
- lib/hirb/views/orm.rb
|
122
|
+
- lib/hirb/views/rails.rb
|
123
|
+
- lib/ripl/hirb.rb
|
124
|
+
- test/auto_table_test.rb
|
125
|
+
- test/console_test.rb
|
126
|
+
- test/dynamic_view_test.rb
|
127
|
+
- test/formatter_test.rb
|
128
|
+
- test/hirb_test.rb
|
129
|
+
- test/import_test.rb
|
130
|
+
- test/menu_test.rb
|
131
|
+
- test/object_table_test.rb
|
132
|
+
- test/pager_test.rb
|
133
|
+
- test/resizer_test.rb
|
134
|
+
- test/table_test.rb
|
135
|
+
- test/test_helper.rb
|
136
|
+
- test/tree_test.rb
|
137
|
+
- test/util_test.rb
|
138
|
+
- test/view_test.rb
|
139
|
+
- test/views_test.rb
|
140
|
+
homepage: http://tagaholic.me/hirb/
|
141
|
+
licenses:
|
142
|
+
- MIT
|
143
|
+
metadata: {}
|
144
|
+
post_install_message:
|
145
|
+
rdoc_options: []
|
146
|
+
require_paths:
|
147
|
+
- lib
|
148
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - ">="
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0'
|
153
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
154
|
+
requirements:
|
155
|
+
- - ">="
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: 1.3.5
|
158
|
+
requirements: []
|
159
|
+
rubygems_version: 3.1.2
|
160
|
+
signing_key:
|
161
|
+
specification_version: 4
|
162
|
+
summary: A mini view framework for console/irb that's easy to use, even while under
|
163
|
+
its influence.
|
164
|
+
test_files: []
|