admino 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,71 @@
1
+ require 'spec_helper'
2
+
3
+ module Admino
4
+ module Table
5
+ describe Row do
6
+ subject(:row) { Row.new(view) }
7
+ let(:view) { double('View Context') }
8
+
9
+ it 'takes view context' do
10
+ expect(row.view_context).to eq view
11
+ end
12
+
13
+ it 'aliases view_context to h' do
14
+ expect(row.h).to eq view
15
+ end
16
+
17
+ describe '#parse_column_args' do
18
+ subject do
19
+ row.parse_column_args(arguments)
20
+ end
21
+
22
+ context 'with a symbol param' do
23
+ let(:arguments) { [:title] }
24
+ it { should eq(attribute_name: :title, label: nil, html_options: {}) }
25
+ end
26
+
27
+ context 'with a string param' do
28
+ let(:arguments) { ['Title'] }
29
+ it { should eq(attribute_name: nil, label: 'Title', html_options: {}) }
30
+ end
31
+
32
+ context 'with a string and a symbol param' do
33
+ let(:arguments) { [:title, 'Title'] }
34
+ it { should eq(attribute_name: :title, label: 'Title', html_options: {}) }
35
+ end
36
+
37
+ context 'with options' do
38
+ let(:arguments) { [{ foo: 'bar' }] }
39
+ it { should eq(attribute_name: nil, label: nil, html_options: { foo: 'bar' }) }
40
+ end
41
+ end
42
+
43
+ describe '#parse_action_args' do
44
+ subject do
45
+ row.parse_action_args(arguments)
46
+ end
47
+
48
+ context 'with a symbol param' do
49
+ let(:arguments) { [:show] }
50
+ it { should eq(action_name: :show, url: nil, label: nil, html_options: {}) }
51
+ end
52
+
53
+ context 'with a one string param' do
54
+ let(:arguments) { ['/'] }
55
+ it { should eq(action_name: nil, url: '/', label: nil, html_options: {}) }
56
+ end
57
+
58
+ context 'with a two string params' do
59
+ let(:arguments) { ['/', 'Details'] }
60
+ it { should eq(action_name: nil, url: '/', label: 'Details', html_options: {}) }
61
+ end
62
+
63
+ context 'with options' do
64
+ let(:arguments) { [{ foo: 'bar' }] }
65
+ it { should eq(action_name: nil, url: nil, label: nil, html_options: { foo: 'bar' }) }
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
71
+
@@ -0,0 +1,82 @@
1
+ require 'simplecov'
2
+ require 'coveralls'
3
+
4
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
5
+ SimpleCov::Formatter::HTMLFormatter,
6
+ Coveralls::SimpleCov::Formatter
7
+ ]
8
+
9
+ SimpleCov.start do
10
+ add_filter 'spec'
11
+ end
12
+
13
+ require 'admino'
14
+ require 'pry'
15
+ require 'rspec-html-matchers'
16
+
17
+ I18n.enforce_available_locales = true
18
+ I18n.available_locales = [:en]
19
+ I18n.locale = :en
20
+
21
+ class ScopeMock
22
+ attr_reader :chain, :name
23
+
24
+ def initialize(name = nil, chain = [])
25
+ @name = name
26
+ @chain = chain
27
+ end
28
+
29
+ def method_missing(method_name, *args, &block)
30
+ ::ScopeMock.new(name, chain + [method_name, args])
31
+ end
32
+ end
33
+
34
+ class TestQuery < Admino::Query::Base
35
+ field :foo
36
+ field :starting_from, coerce: :to_date
37
+
38
+ group :bar, [:one, :two]
39
+
40
+ starting_scope { 'start' }
41
+ ending_scope { 'end' }
42
+ end
43
+
44
+ class Post < Struct.new(:key)
45
+ extend ActiveModel::Naming
46
+ extend ActiveModel::Translation
47
+
48
+ def title
49
+ "Post #{key}"
50
+ end
51
+
52
+ def author_name
53
+ "steffoz"
54
+ end
55
+
56
+ def to_param
57
+ key
58
+ end
59
+
60
+ def to_key
61
+ [key]
62
+ end
63
+ end
64
+
65
+ require 'showcase/traits'
66
+
67
+ class PostPresenter < Showcase::Presenter
68
+ include Showcase::Traits::Record
69
+ end
70
+
71
+ require 'action_view'
72
+
73
+ class RailsViewContext < ActionView::Base
74
+ include ActionView::Helpers::TagHelper
75
+ end
76
+
77
+ RSpec.configure do |c|
78
+ c.before(:each) do
79
+ I18n.backend = I18n::Backend::Simple.new
80
+ end
81
+ end
82
+
metadata ADDED
@@ -0,0 +1,244 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: admino
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Stefano Verna
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-03-16 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: showcase
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: 0.2.5
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: 0.2.5
27
+ - !ruby/object:Gem::Dependency
28
+ name: activesupport
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: activemodel
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: coercible
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: bundler
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: '1.3'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: '1.3'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rake
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rspec
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - '>='
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - '>='
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: pry
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - '>='
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: i18n
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - '>='
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: rspec-html-matchers
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - '>='
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - '>='
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: actionpack
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - '>='
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - '>='
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
167
+ description: Make administrative views creation less repetitive
168
+ email:
169
+ - s.verna@cantierecreativo.net
170
+ executables: []
171
+ extensions: []
172
+ extra_rdoc_files: []
173
+ files:
174
+ - .gitignore
175
+ - .travis.yml
176
+ - CHANGELOG.md
177
+ - Gemfile
178
+ - LICENSE.txt
179
+ - README.md
180
+ - Rakefile
181
+ - admino.gemspec
182
+ - lib/admino.rb
183
+ - lib/admino/query.rb
184
+ - lib/admino/query/base.rb
185
+ - lib/admino/query/base_presenter.rb
186
+ - lib/admino/query/configuration.rb
187
+ - lib/admino/query/dsl.rb
188
+ - lib/admino/query/field.rb
189
+ - lib/admino/query/group.rb
190
+ - lib/admino/query/group_presenter.rb
191
+ - lib/admino/table.rb
192
+ - lib/admino/table/head_row.rb
193
+ - lib/admino/table/presenter.rb
194
+ - lib/admino/table/resource_row.rb
195
+ - lib/admino/table/row.rb
196
+ - lib/admino/version.rb
197
+ - spec/admino/query/base_presenter_spec.rb
198
+ - spec/admino/query/base_spec.rb
199
+ - spec/admino/query/dsl_spec.rb
200
+ - spec/admino/query/field_spec.rb
201
+ - spec/admino/query/group_presenter_spec.rb
202
+ - spec/admino/query/group_spec.rb
203
+ - spec/admino/table/head_row_spec.rb
204
+ - spec/admino/table/presenter_spec.rb
205
+ - spec/admino/table/resource_row_spec.rb
206
+ - spec/admino/table/row_spec.rb
207
+ - spec/spec_helper.rb
208
+ homepage: https://github.com/cantierecreativo/admino
209
+ licenses:
210
+ - MIT
211
+ metadata: {}
212
+ post_install_message:
213
+ rdoc_options: []
214
+ require_paths:
215
+ - lib
216
+ required_ruby_version: !ruby/object:Gem::Requirement
217
+ requirements:
218
+ - - '>='
219
+ - !ruby/object:Gem::Version
220
+ version: '0'
221
+ required_rubygems_version: !ruby/object:Gem::Requirement
222
+ requirements:
223
+ - - '>='
224
+ - !ruby/object:Gem::Version
225
+ version: '0'
226
+ requirements: []
227
+ rubyforge_project:
228
+ rubygems_version: 2.2.2
229
+ signing_key:
230
+ specification_version: 4
231
+ summary: Make administrative views creation less repetitive
232
+ test_files:
233
+ - spec/admino/query/base_presenter_spec.rb
234
+ - spec/admino/query/base_spec.rb
235
+ - spec/admino/query/dsl_spec.rb
236
+ - spec/admino/query/field_spec.rb
237
+ - spec/admino/query/group_presenter_spec.rb
238
+ - spec/admino/query/group_spec.rb
239
+ - spec/admino/table/head_row_spec.rb
240
+ - spec/admino/table/presenter_spec.rb
241
+ - spec/admino/table/resource_row_spec.rb
242
+ - spec/admino/table/row_spec.rb
243
+ - spec/spec_helper.rb
244
+ has_rdoc: