simple_admin 0.1.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.
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