simple_admin 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. data/.gitignore +6 -0
  2. data/.rspec +2 -0
  3. data/Gemfile +12 -0
  4. data/README.rdoc +318 -0
  5. data/Rakefile +67 -0
  6. data/TODO.rdoc +4 -0
  7. data/app/assets/images/simple_admin/active_admin/admin_notes_icon.png +0 -0
  8. data/app/assets/images/simple_admin/active_admin/loading.gif +0 -0
  9. data/app/assets/images/simple_admin/active_admin/nested_menu_arrow.gif +0 -0
  10. data/app/assets/images/simple_admin/active_admin/nested_menu_arrow_dark.gif +0 -0
  11. data/app/assets/images/simple_admin/active_admin/orderable.png +0 -0
  12. data/app/assets/javascripts/simple_admin/active_admin.js +434 -0
  13. data/app/assets/stylesheets/simple_admin/active_admin.css +1445 -0
  14. data/app/controllers/simple_admin/admin_controller.rb +117 -0
  15. data/app/helpers/simple_admin/admin_helper.rb +11 -0
  16. data/app/helpers/simple_admin/display_helper.rb +38 -0
  17. data/app/helpers/simple_admin/filter_helper.rb +147 -0
  18. data/app/helpers/simple_admin/header_helper.rb +60 -0
  19. data/app/helpers/simple_admin/path_helper.rb +12 -0
  20. data/app/helpers/simple_admin/sidebar_helper.rb +9 -0
  21. data/app/helpers/simple_admin/table_helper.rb +39 -0
  22. data/app/helpers/simple_admin/title_helper.rb +35 -0
  23. data/app/views/layouts/simple_admin.html.erb +41 -0
  24. data/app/views/simple_admin/admin/_form.html.erb +16 -0
  25. data/app/views/simple_admin/admin/edit.html.erb +7 -0
  26. data/app/views/simple_admin/admin/index.csv.erb +19 -0
  27. data/app/views/simple_admin/admin/index.html.erb +82 -0
  28. data/app/views/simple_admin/admin/new.html.erb +7 -0
  29. data/app/views/simple_admin/admin/show.html.erb +22 -0
  30. data/config/routes.rb +8 -0
  31. data/lib/rails/generators/simple_admin/simple_admin_generator.rb +33 -0
  32. data/lib/rails/generators/simple_admin/templates/initializer.rb +76 -0
  33. data/lib/simple_admin.rb +100 -0
  34. data/lib/simple_admin/attributes.rb +80 -0
  35. data/lib/simple_admin/breadcrumbs.rb +24 -0
  36. data/lib/simple_admin/builder.rb +35 -0
  37. data/lib/simple_admin/engine.rb +8 -0
  38. data/lib/simple_admin/filters.rb +5 -0
  39. data/lib/simple_admin/interface.rb +55 -0
  40. data/lib/simple_admin/section.rb +30 -0
  41. data/lib/simple_admin/version.rb +3 -0
  42. data/rails/init.rb +2 -0
  43. data/simple_admin.gemspec +34 -0
  44. data/spec/acceptance/admin_thing_spec.rb +13 -0
  45. data/spec/controllers/simple_admin/admin_controller_spec.rb +95 -0
  46. data/spec/factories.rb +14 -0
  47. data/spec/simple_admin/attributes_spec.rb +106 -0
  48. data/spec/simple_admin/breadcrumbs_spec.rb +18 -0
  49. data/spec/simple_admin/builder_spec.rb +57 -0
  50. data/spec/simple_admin/engine_spec.rb +9 -0
  51. data/spec/simple_admin/filters_spec.rb +16 -0
  52. data/spec/simple_admin/interface_spec.rb +98 -0
  53. data/spec/simple_admin/section_spec.rb +63 -0
  54. data/spec/simple_admin/simple_admin_spec.rb +68 -0
  55. data/spec/spec_helper.rb +32 -0
  56. metadata +285 -0
@@ -0,0 +1,57 @@
1
+ require 'spec_helper'
2
+
3
+ describe SimpleAdmin::Builder do
4
+ before :each do
5
+ @interface = SimpleAdmin.register(:thing)
6
+ @builder = SimpleAdmin::Builder.new(@interface)
7
+ end
8
+
9
+ it "does not require a block when initializing" do
10
+ @builder.should_not be_nil
11
+ end
12
+
13
+ it "executes the block when initializing" do
14
+ SimpleAdmin::Builder.any_instance.expects(:success)
15
+ SimpleAdmin::Builder.new(@interface) do
16
+ success
17
+ end
18
+ end
19
+
20
+ describe "sections" do
21
+ before :each do
22
+ @options = {}
23
+ end
24
+
25
+ it "creates a section" do
26
+ SimpleAdmin::Section.expects(:new)
27
+ @section = @builder.section(:index)
28
+ @interface.sections[:index].should == @section
29
+ end
30
+
31
+ it "creates an index" do
32
+ @builder.expects(:section).with(:index, @options).returns(true)
33
+ @builder.index(@options)
34
+ end
35
+
36
+ it "creates a show" do
37
+ @builder.expects(:section).with(:show, @options).returns(true)
38
+ @builder.show(@options)
39
+ end
40
+
41
+ it "creates a form" do
42
+ @builder.expects(:section).with(:form, @options).returns(true)
43
+ @builder.form(@options)
44
+ end
45
+
46
+ end
47
+
48
+ it "creates a before block" do
49
+ SimpleAdmin::Builder.expects(:success)
50
+ @builder.before do
51
+ SimpleAdmin::Builder.success
52
+ end
53
+ @interface.before.each{|before| before[:data].call}
54
+ end
55
+
56
+ end
57
+
@@ -0,0 +1,9 @@
1
+ require 'spec_helper'
2
+
3
+ describe SimpleAdmin::Engine do
4
+ it "isolates the namespace for the engine" do
5
+ SimpleAdmin::Engine.routes.default_scope.should == {:module => "simple_admin"}
6
+ SimpleAdmin::Engine.isolated.should == true
7
+ end
8
+ end
9
+
@@ -0,0 +1,16 @@
1
+ require 'spec_helper'
2
+
3
+ describe SimpleAdmin::Filters do
4
+ before :each do
5
+ @interface = SimpleAdmin.register(:thing)
6
+ @section = @interface.send(:section, :index)
7
+ @filters = SimpleAdmin::Filters.new(@interface, @section)
8
+ end
9
+
10
+ it "allows new filter definitions and treats them like attributes" do
11
+ @filters.clear
12
+ @filters.filter(:name)
13
+ @filters.attributes.map(&:attribute).should == [:name]
14
+ end
15
+ end
16
+
@@ -0,0 +1,98 @@
1
+ require 'spec_helper'
2
+
3
+ describe SimpleAdmin::Interface do
4
+ it "accepts a constant as the resource" do
5
+ @interface = SimpleAdmin.register(Thing)
6
+ @interface.constant.should == Thing
7
+ end
8
+
9
+ it "accepts a symbol as the resource" do
10
+ @interface = SimpleAdmin.register(:thing)
11
+ @interface.constant.should == Thing
12
+ end
13
+
14
+ it "accepts a string as the resource" do
15
+ @interface = SimpleAdmin.register("thing")
16
+ @interface.constant.should == Thing
17
+ end
18
+
19
+ it "accepts a plural as the resource" do
20
+ @interface = SimpleAdmin.register(:things)
21
+ @interface.constant.should == Thing
22
+ end
23
+
24
+ it "has a collection" do
25
+ @interface = SimpleAdmin.register(:thing)
26
+ @interface.collection.should == "things"
27
+ end
28
+
29
+ it "has a member" do
30
+ @interface = SimpleAdmin.register(:things)
31
+ @interface.member.should == "thing"
32
+ end
33
+
34
+ it "does not require a block" do
35
+ @interface = SimpleAdmin.register(:things)
36
+ @interface.should_not be_nil
37
+ end
38
+
39
+ it "executes a block using a builder if submitted" do
40
+ SimpleAdmin::Builder.any_instance.expects(:success)
41
+ @interface = SimpleAdmin.register(:things) do
42
+ success
43
+ end
44
+ end
45
+
46
+ it "retrieves the attributes for a section" do
47
+ @interface = SimpleAdmin.register(:things)
48
+ @interface.attributes_for(:form).map(&:attribute).should == [:name, :happy, :age, :place]
49
+ end
50
+
51
+ it "retrieves the filters for a section" do
52
+ @interface = SimpleAdmin.register(:things)
53
+ @interface.filters_for(:index).map(&:attribute).should == [:id, :name, :happy, :age, :place_id, :created_at, :updated_at]
54
+ end
55
+
56
+ it "retrieves the sidebars for a section" do
57
+ SimpleAdmin.expects(:success)
58
+ @interface = SimpleAdmin.register(:things) do
59
+ index do
60
+ sidebar do
61
+ SimpleAdmin.success
62
+ end
63
+ end
64
+ end
65
+ @interface.sidebars_for(:index).each{|sidebar| sidebar[:data].call}
66
+ end
67
+
68
+ it "retrieves or defaults a section" do
69
+ @interface = SimpleAdmin.register(:things) do
70
+ index :title => 'All of the things'
71
+ end
72
+ # Testing section method by proxy
73
+ @interface.options_for(:index)[:title].should == "All of the things"
74
+ @interface.options_for(:form)[:title].should be_nil
75
+ end
76
+
77
+ it "defaults to allowing all actions" do
78
+ @interface = SimpleAdmin.register(:things)
79
+ @interface.actions.should == [:index, :show, :edit, :new, :delete, :create, :update]
80
+ end
81
+
82
+ it "allows overrides to the default set of actions" do
83
+ @interface = SimpleAdmin.register(:things, :actions => [:index, :show])
84
+ @interface.actions.should == [:index, :show]
85
+ end
86
+
87
+ it "excludes actions from the default set of actions" do
88
+ @interface = SimpleAdmin.register(:things, :except => [:delete])
89
+ @interface.actions.should == [:index, :show, :edit, :new, :create, :update]
90
+ end
91
+
92
+ it "limits the allowable actions" do
93
+ @interface = SimpleAdmin.register(:things, :only => [:index])
94
+ @interface.actions.should == [:index]
95
+ end
96
+
97
+ end
98
+
@@ -0,0 +1,63 @@
1
+ require 'spec_helper'
2
+
3
+ describe SimpleAdmin::Section do
4
+
5
+ before :each do
6
+ @interface = SimpleAdmin.register(:thing)
7
+ end
8
+
9
+ it "creates a default set of attributes" do
10
+ SimpleAdmin::Section.any_instance.expects(:attributes)
11
+ @section = SimpleAdmin::Section.new(@interface, :index)
12
+ end
13
+
14
+ it "creates a default set of filters for the index" do
15
+ SimpleAdmin::Section.any_instance.expects(:filters)
16
+ @section = SimpleAdmin::Section.new(@interface, :index)
17
+ end
18
+
19
+ it "does not create a default set of filters for non-index actions" do
20
+ SimpleAdmin::Section.any_instance.expects(:filters).never
21
+ @section = SimpleAdmin::Section.new(@interface, :form)
22
+ end
23
+
24
+ it "accepts a block" do
25
+ SimpleAdmin::Section.any_instance.expects(:success)
26
+ @section = SimpleAdmin::Section.new(@interface, :form) do
27
+ success
28
+ end
29
+ end
30
+
31
+ it "does not require a block" do
32
+ @section = SimpleAdmin::Section.new(@interface, :form)
33
+ @section.should_not be_nil
34
+ end
35
+
36
+ it "allows you to specify an attributes section" do
37
+ @section = SimpleAdmin::Section.new(@interface, :form)
38
+ @section.attributes(:only => [:name])
39
+ @section.options[:attributes].attributes.map(&:attribute).should == [:name]
40
+ end
41
+
42
+ it "allows you to specify a filters section for index actions" do
43
+ @section = SimpleAdmin::Section.new(@interface, :index)
44
+ @section.filters(:only => [:name])
45
+ @section.options[:filters].attributes.map(&:attribute).should == [:name]
46
+ end
47
+
48
+ it "does not allow you to specify a filters section for non-index actions" do
49
+ @section = SimpleAdmin::Section.new(@interface, :form)
50
+ expect {
51
+ @section.filters(:only => [:name])
52
+ }.to raise_error
53
+ end
54
+
55
+ it "allows you to specify sidebar sections" do
56
+ SimpleAdmin::Section.expects(:success).times(2)
57
+ @section = SimpleAdmin::Section.new(@interface, :index)
58
+ @section.sidebar { SimpleAdmin::Section.success }
59
+ @section.sidebar { SimpleAdmin::Section.success }
60
+ @section.options[:sidebars].each{|s| s[:data].call}
61
+ end
62
+
63
+ end
@@ -0,0 +1,68 @@
1
+ require 'spec_helper'
2
+
3
+ describe SimpleAdmin do
4
+ describe "config" do
5
+ it "has configurable attributes" do
6
+ [:require_user_method,
7
+ :current_user_method,
8
+ :current_user_name_method,
9
+ :site_title,
10
+ :default_per_page,
11
+ :form_for_helper,
12
+ :stylesheet,
13
+ :javascript].each do |method|
14
+ SimpleAdmin.should respond_to("#{method}=".to_sym)
15
+ end
16
+ end
17
+
18
+ it "can be setup" do
19
+ SimpleAdmin.expects(:success)
20
+ SimpleAdmin.setup do |config|
21
+ config.success
22
+ end
23
+ end
24
+ end
25
+
26
+ it "has a default site title" do
27
+ SimpleAdmin.site_title.should == "Sample"
28
+ SimpleAdmin.setup {|config| config.site_title = "Yay!"}
29
+ SimpleAdmin.site_title.should == "Yay!"
30
+ end
31
+
32
+ it "has a default number of items per page" do
33
+ SimpleAdmin.default_per_page.should == 25
34
+ SimpleAdmin.setup {|config| config.default_per_page = 50}
35
+ SimpleAdmin.default_per_page.should == 50
36
+ end
37
+
38
+ it "has a default form helper" do
39
+ SimpleAdmin.form_for_helper.should == :semantic_form_for
40
+ SimpleAdmin.setup {|config| config.form_for_helper = :simple_form_for }
41
+ SimpleAdmin.form_for_helper.should == :simple_form_for
42
+ end
43
+
44
+ it "has a default stylesheet" do
45
+ SimpleAdmin.stylesheet.should == "simple_admin/active_admin.css"
46
+ SimpleAdmin.setup {|config| config.stylesheet = "nyan-cat.css"}
47
+ SimpleAdmin.stylesheet.should == "nyan-cat.css"
48
+ end
49
+
50
+ it "has a default script" do
51
+ SimpleAdmin.javascript.should == "simple_admin/active_admin.js"
52
+ SimpleAdmin.setup {|config| config.javascript = "nyan-cat.js"}
53
+ SimpleAdmin.javascript.should == "nyan-cat.js"
54
+ end
55
+
56
+ describe "registering" do
57
+ before :each do
58
+ SimpleAdmin.registered
59
+ SimpleAdmin.send(:class_variable_set, "@@registered", [])
60
+ end
61
+
62
+ it "can register an interface" do
63
+ SimpleAdmin::Interface.expects(:new).returns(@interface)
64
+ SimpleAdmin.register(:new_thing)
65
+ SimpleAdmin.registered.should == [@interface]
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,32 @@
1
+ ENV["RAILS_ENV"] = 'test'
2
+
3
+ require File.expand_path("../sample/config/environment.rb", __FILE__)
4
+ require "rails/test_help"
5
+ require "rspec/rails"
6
+ require "factory_girl"
7
+ require "mocha"
8
+ require "shoulda"
9
+
10
+ Rails.backtrace_cleaner.remove_silencers!
11
+
12
+ require 'capybara/rails'
13
+ Capybara.default_driver = :rack_test
14
+
15
+ # We are going to need some stubs
16
+ require File.expand_path("../factories.rb", __FILE__)
17
+
18
+ # Run any available migration
19
+ ActiveRecord::Migrator.migrate File.expand_path("../sample/db/migrate/", __FILE__)
20
+
21
+ Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
22
+
23
+ RSpec.configure do |config|
24
+ # Remove this line if you don't want RSpec's should and should_not
25
+ # methods or matchers
26
+ require 'rspec/expectations'
27
+ config.include RSpec::Matchers
28
+
29
+ # == Mock Framework
30
+ config.mock_with :mocha
31
+ end
32
+
metadata ADDED
@@ -0,0 +1,285 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: simple_admin
3
+ version: !ruby/object:Gem::Version
4
+ hash: 27
5
+ prerelease:
6
+ segments:
7
+ - 0
8
+ - 1
9
+ - 0
10
+ version: 0.1.0
11
+ platform: ruby
12
+ authors:
13
+ - Jeff Rafter
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2011-06-21 00:00:00 -07:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: rails
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 15424109
30
+ segments:
31
+ - 3
32
+ - 1
33
+ - 0
34
+ - rc
35
+ - 4
36
+ version: 3.1.0rc4
37
+ type: :runtime
38
+ version_requirements: *id001
39
+ - !ruby/object:Gem::Dependency
40
+ name: kaminari
41
+ prerelease: false
42
+ requirement: &id002 !ruby/object:Gem::Requirement
43
+ none: false
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ hash: 3
48
+ segments:
49
+ - 0
50
+ version: "0"
51
+ type: :runtime
52
+ version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
54
+ name: meta_search
55
+ prerelease: false
56
+ requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ hash: 961915996
62
+ segments:
63
+ - 1
64
+ - 1
65
+ - 0
66
+ - pre
67
+ version: 1.1.0.pre
68
+ type: :runtime
69
+ version_requirements: *id003
70
+ - !ruby/object:Gem::Dependency
71
+ name: rspec
72
+ prerelease: false
73
+ requirement: &id004 !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ">="
77
+ - !ruby/object:Gem::Version
78
+ hash: 23
79
+ segments:
80
+ - 2
81
+ - 6
82
+ - 0
83
+ version: 2.6.0
84
+ type: :development
85
+ version_requirements: *id004
86
+ - !ruby/object:Gem::Dependency
87
+ name: rspec-rails
88
+ prerelease: false
89
+ requirement: &id005 !ruby/object:Gem::Requirement
90
+ none: false
91
+ requirements:
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ hash: 23
95
+ segments:
96
+ - 2
97
+ - 6
98
+ - 0
99
+ version: 2.6.0
100
+ type: :development
101
+ version_requirements: *id005
102
+ - !ruby/object:Gem::Dependency
103
+ name: shoulda
104
+ prerelease: false
105
+ requirement: &id006 !ruby/object:Gem::Requirement
106
+ none: false
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ hash: 3
111
+ segments:
112
+ - 0
113
+ version: "0"
114
+ type: :development
115
+ version_requirements: *id006
116
+ - !ruby/object:Gem::Dependency
117
+ name: factory_girl
118
+ prerelease: false
119
+ requirement: &id007 !ruby/object:Gem::Requirement
120
+ none: false
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ hash: 3
125
+ segments:
126
+ - 0
127
+ version: "0"
128
+ type: :development
129
+ version_requirements: *id007
130
+ - !ruby/object:Gem::Dependency
131
+ name: mocha
132
+ prerelease: false
133
+ requirement: &id008 !ruby/object:Gem::Requirement
134
+ none: false
135
+ requirements:
136
+ - - ">"
137
+ - !ruby/object:Gem::Version
138
+ hash: 3
139
+ segments:
140
+ - 0
141
+ version: "0"
142
+ type: :development
143
+ version_requirements: *id008
144
+ - !ruby/object:Gem::Dependency
145
+ name: capybara
146
+ prerelease: false
147
+ requirement: &id009 !ruby/object:Gem::Requirement
148
+ none: false
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ hash: 15
153
+ segments:
154
+ - 0
155
+ - 4
156
+ - 0
157
+ version: 0.4.0
158
+ type: :development
159
+ version_requirements: *id009
160
+ - !ruby/object:Gem::Dependency
161
+ name: sqlite3-ruby
162
+ prerelease: false
163
+ requirement: &id010 !ruby/object:Gem::Requirement
164
+ none: false
165
+ requirements:
166
+ - - ">="
167
+ - !ruby/object:Gem::Version
168
+ hash: 3
169
+ segments:
170
+ - 0
171
+ version: "0"
172
+ type: :development
173
+ version_requirements: *id010
174
+ description: Use SimpleAdmin to build out filtering, searchable, editable interfaces for your models
175
+ email:
176
+ - jeffrafter@gmail.com
177
+ executables: []
178
+
179
+ extensions: []
180
+
181
+ extra_rdoc_files: []
182
+
183
+ files:
184
+ - .gitignore
185
+ - .rspec
186
+ - Gemfile
187
+ - README.rdoc
188
+ - Rakefile
189
+ - TODO.rdoc
190
+ - app/assets/images/simple_admin/active_admin/admin_notes_icon.png
191
+ - app/assets/images/simple_admin/active_admin/loading.gif
192
+ - app/assets/images/simple_admin/active_admin/nested_menu_arrow.gif
193
+ - app/assets/images/simple_admin/active_admin/nested_menu_arrow_dark.gif
194
+ - app/assets/images/simple_admin/active_admin/orderable.png
195
+ - app/assets/javascripts/simple_admin/active_admin.js
196
+ - app/assets/stylesheets/simple_admin/active_admin.css
197
+ - app/controllers/simple_admin/admin_controller.rb
198
+ - app/helpers/simple_admin/admin_helper.rb
199
+ - app/helpers/simple_admin/display_helper.rb
200
+ - app/helpers/simple_admin/filter_helper.rb
201
+ - app/helpers/simple_admin/header_helper.rb
202
+ - app/helpers/simple_admin/path_helper.rb
203
+ - app/helpers/simple_admin/sidebar_helper.rb
204
+ - app/helpers/simple_admin/table_helper.rb
205
+ - app/helpers/simple_admin/title_helper.rb
206
+ - app/views/layouts/simple_admin.html.erb
207
+ - app/views/simple_admin/admin/_form.html.erb
208
+ - app/views/simple_admin/admin/edit.html.erb
209
+ - app/views/simple_admin/admin/index.csv.erb
210
+ - app/views/simple_admin/admin/index.html.erb
211
+ - app/views/simple_admin/admin/new.html.erb
212
+ - app/views/simple_admin/admin/show.html.erb
213
+ - config/routes.rb
214
+ - lib/rails/generators/simple_admin/simple_admin_generator.rb
215
+ - lib/rails/generators/simple_admin/templates/initializer.rb
216
+ - lib/simple_admin.rb
217
+ - lib/simple_admin/attributes.rb
218
+ - lib/simple_admin/breadcrumbs.rb
219
+ - lib/simple_admin/builder.rb
220
+ - lib/simple_admin/engine.rb
221
+ - lib/simple_admin/filters.rb
222
+ - lib/simple_admin/interface.rb
223
+ - lib/simple_admin/section.rb
224
+ - lib/simple_admin/version.rb
225
+ - rails/init.rb
226
+ - simple_admin.gemspec
227
+ - spec/acceptance/admin_thing_spec.rb
228
+ - spec/controllers/simple_admin/admin_controller_spec.rb
229
+ - spec/factories.rb
230
+ - spec/simple_admin/attributes_spec.rb
231
+ - spec/simple_admin/breadcrumbs_spec.rb
232
+ - spec/simple_admin/builder_spec.rb
233
+ - spec/simple_admin/engine_spec.rb
234
+ - spec/simple_admin/filters_spec.rb
235
+ - spec/simple_admin/interface_spec.rb
236
+ - spec/simple_admin/section_spec.rb
237
+ - spec/simple_admin/simple_admin_spec.rb
238
+ - spec/spec_helper.rb
239
+ has_rdoc: true
240
+ homepage: http://github.com/jeffrafter/simple_admin
241
+ licenses: []
242
+
243
+ post_install_message:
244
+ rdoc_options: []
245
+
246
+ require_paths:
247
+ - lib
248
+ required_ruby_version: !ruby/object:Gem::Requirement
249
+ none: false
250
+ requirements:
251
+ - - ">="
252
+ - !ruby/object:Gem::Version
253
+ hash: 3
254
+ segments:
255
+ - 0
256
+ version: "0"
257
+ required_rubygems_version: !ruby/object:Gem::Requirement
258
+ none: false
259
+ requirements:
260
+ - - ">="
261
+ - !ruby/object:Gem::Version
262
+ hash: 3
263
+ segments:
264
+ - 0
265
+ version: "0"
266
+ requirements: []
267
+
268
+ rubyforge_project: simple_admin
269
+ rubygems_version: 1.4.1
270
+ signing_key:
271
+ specification_version: 3
272
+ summary: Simple administrative interfaces for data in your rails application
273
+ test_files:
274
+ - spec/acceptance/admin_thing_spec.rb
275
+ - spec/controllers/simple_admin/admin_controller_spec.rb
276
+ - spec/factories.rb
277
+ - spec/simple_admin/attributes_spec.rb
278
+ - spec/simple_admin/breadcrumbs_spec.rb
279
+ - spec/simple_admin/builder_spec.rb
280
+ - spec/simple_admin/engine_spec.rb
281
+ - spec/simple_admin/filters_spec.rb
282
+ - spec/simple_admin/interface_spec.rb
283
+ - spec/simple_admin/section_spec.rb
284
+ - spec/simple_admin/simple_admin_spec.rb
285
+ - spec/spec_helper.rb