resource_controller 0.4.9

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 (211) hide show
  1. data/LICENSE +22 -0
  2. data/README +282 -0
  3. data/README.rdoc +282 -0
  4. data/Rakefile +35 -0
  5. data/generators/scaffold_resource/USAGE +29 -0
  6. data/generators/scaffold_resource/scaffold_resource_generator.rb +179 -0
  7. data/generators/scaffold_resource/templates/controller.rb +2 -0
  8. data/generators/scaffold_resource/templates/fixtures.yml +10 -0
  9. data/generators/scaffold_resource/templates/functional_test.rb +57 -0
  10. data/generators/scaffold_resource/templates/helper.rb +2 -0
  11. data/generators/scaffold_resource/templates/migration.rb +15 -0
  12. data/generators/scaffold_resource/templates/model.rb +2 -0
  13. data/generators/scaffold_resource/templates/old_migration.rb +13 -0
  14. data/generators/scaffold_resource/templates/rspec/functional_spec.rb +255 -0
  15. data/generators/scaffold_resource/templates/rspec/helper_spec.rb +11 -0
  16. data/generators/scaffold_resource/templates/rspec/routing_spec.rb +61 -0
  17. data/generators/scaffold_resource/templates/rspec/unit_spec.rb +11 -0
  18. data/generators/scaffold_resource/templates/rspec/views/edit_spec.rb +28 -0
  19. data/generators/scaffold_resource/templates/rspec/views/index_spec.rb +26 -0
  20. data/generators/scaffold_resource/templates/rspec/views/new_spec.rb +30 -0
  21. data/generators/scaffold_resource/templates/rspec/views/show_spec.rb +25 -0
  22. data/generators/scaffold_resource/templates/shoulda_functional_test.rb +19 -0
  23. data/generators/scaffold_resource/templates/unit_test.rb +7 -0
  24. data/generators/scaffold_resource/templates/view__form.erb +6 -0
  25. data/generators/scaffold_resource/templates/view__form.haml +5 -0
  26. data/generators/scaffold_resource/templates/view_edit.erb +16 -0
  27. data/generators/scaffold_resource/templates/view_edit.haml +11 -0
  28. data/generators/scaffold_resource/templates/view_index.erb +22 -0
  29. data/generators/scaffold_resource/templates/view_index.haml +19 -0
  30. data/generators/scaffold_resource/templates/view_new.erb +12 -0
  31. data/generators/scaffold_resource/templates/view_new.haml +9 -0
  32. data/generators/scaffold_resource/templates/view_show.erb +9 -0
  33. data/generators/scaffold_resource/templates/view_show.haml +9 -0
  34. data/init.rb +1 -0
  35. data/lib/resource_controller.rb +15 -0
  36. data/lib/resource_controller/accessors.rb +77 -0
  37. data/lib/resource_controller/action_options.rb +40 -0
  38. data/lib/resource_controller/actions.rb +75 -0
  39. data/lib/resource_controller/base.rb +15 -0
  40. data/lib/resource_controller/class_methods.rb +22 -0
  41. data/lib/resource_controller/controller.rb +63 -0
  42. data/lib/resource_controller/failable_action_options.rb +25 -0
  43. data/lib/resource_controller/helpers.rb +28 -0
  44. data/lib/resource_controller/helpers/current_objects.rb +69 -0
  45. data/lib/resource_controller/helpers/internal.rb +76 -0
  46. data/lib/resource_controller/helpers/nested.rb +45 -0
  47. data/lib/resource_controller/helpers/urls.rb +124 -0
  48. data/lib/resource_controller/response_collector.rb +27 -0
  49. data/lib/resource_controller/version.rb +9 -0
  50. data/lib/tasks/gem.rake +67 -0
  51. data/lib/urligence.rb +50 -0
  52. data/rails/init.rb +6 -0
  53. data/test/Rakefile +10 -0
  54. data/test/app/controllers/application.rb +7 -0
  55. data/test/app/controllers/cms/options_controller.rb +3 -0
  56. data/test/app/controllers/cms/products_controller.rb +3 -0
  57. data/test/app/controllers/comments_controller.rb +3 -0
  58. data/test/app/controllers/people_controller.rb +9 -0
  59. data/test/app/controllers/photos_controller.rb +11 -0
  60. data/test/app/controllers/posts_controller.rb +10 -0
  61. data/test/app/controllers/projects_controller.rb +3 -0
  62. data/test/app/controllers/somethings_controller.rb +3 -0
  63. data/test/app/controllers/tags_controller.rb +13 -0
  64. data/test/app/controllers/users_controller.rb +12 -0
  65. data/test/app/helpers/application_helper.rb +3 -0
  66. data/test/app/helpers/cms/products_helper.rb +2 -0
  67. data/test/app/helpers/comments_helper.rb +2 -0
  68. data/test/app/helpers/options_helper.rb +2 -0
  69. data/test/app/helpers/people_helper.rb +2 -0
  70. data/test/app/helpers/photos_helper.rb +2 -0
  71. data/test/app/helpers/posts_helper.rb +2 -0
  72. data/test/app/helpers/projects_helper.rb +2 -0
  73. data/test/app/helpers/somethings_helper.rb +2 -0
  74. data/test/app/helpers/tags_helper.rb +2 -0
  75. data/test/app/helpers/users_helper.rb +2 -0
  76. data/test/app/models/account.rb +3 -0
  77. data/test/app/models/comment.rb +3 -0
  78. data/test/app/models/option.rb +3 -0
  79. data/test/app/models/photo.rb +4 -0
  80. data/test/app/models/post.rb +3 -0
  81. data/test/app/models/product.rb +3 -0
  82. data/test/app/models/project.rb +2 -0
  83. data/test/app/models/something.rb +2 -0
  84. data/test/app/models/tag.rb +3 -0
  85. data/test/app/views/cms/options/edit.rhtml +17 -0
  86. data/test/app/views/cms/options/index.rhtml +20 -0
  87. data/test/app/views/cms/options/new.rhtml +16 -0
  88. data/test/app/views/cms/options/show.rhtml +8 -0
  89. data/test/app/views/cms/products/edit.rhtml +17 -0
  90. data/test/app/views/cms/products/index.rhtml +20 -0
  91. data/test/app/views/cms/products/new.rhtml +16 -0
  92. data/test/app/views/cms/products/show.rhtml +8 -0
  93. data/test/app/views/comments/edit.rhtml +27 -0
  94. data/test/app/views/comments/index.rhtml +24 -0
  95. data/test/app/views/comments/new.rhtml +26 -0
  96. data/test/app/views/comments/show.rhtml +18 -0
  97. data/test/app/views/layouts/application.rhtml +17 -0
  98. data/test/app/views/layouts/comments.rhtml +17 -0
  99. data/test/app/views/layouts/options.rhtml +17 -0
  100. data/test/app/views/layouts/people.rhtml +17 -0
  101. data/test/app/views/layouts/photos.rhtml +17 -0
  102. data/test/app/views/layouts/projects.rhtml +17 -0
  103. data/test/app/views/layouts/somethings.rhtml +17 -0
  104. data/test/app/views/layouts/tags.rhtml +17 -0
  105. data/test/app/views/people/edit.rhtml +17 -0
  106. data/test/app/views/people/index.rhtml +20 -0
  107. data/test/app/views/people/new.rhtml +16 -0
  108. data/test/app/views/people/show.rhtml +8 -0
  109. data/test/app/views/photos/edit.rhtml +17 -0
  110. data/test/app/views/photos/index.rhtml +20 -0
  111. data/test/app/views/photos/new.rhtml +16 -0
  112. data/test/app/views/photos/show.rhtml +8 -0
  113. data/test/app/views/posts/edit.rhtml +22 -0
  114. data/test/app/views/posts/index.rhtml +22 -0
  115. data/test/app/views/posts/new.rhtml +21 -0
  116. data/test/app/views/posts/show.rhtml +13 -0
  117. data/test/app/views/projects/edit.rhtml +17 -0
  118. data/test/app/views/projects/index.rhtml +20 -0
  119. data/test/app/views/projects/new.rhtml +16 -0
  120. data/test/app/views/projects/show.rhtml +8 -0
  121. data/test/app/views/somethings/edit.rhtml +17 -0
  122. data/test/app/views/somethings/index.rhtml +20 -0
  123. data/test/app/views/somethings/new.rhtml +16 -0
  124. data/test/app/views/somethings/show.rhtml +8 -0
  125. data/test/app/views/tags/edit.rhtml +17 -0
  126. data/test/app/views/tags/index.rhtml +20 -0
  127. data/test/app/views/tags/index.rjs +0 -0
  128. data/test/app/views/tags/new.rhtml +16 -0
  129. data/test/app/views/tags/show.rhtml +8 -0
  130. data/test/app/views/users/edit.rhtml +17 -0
  131. data/test/app/views/users/index.rhtml +20 -0
  132. data/test/app/views/users/new.rhtml +16 -0
  133. data/test/app/views/users/show.rhtml +8 -0
  134. data/test/config/boot.rb +109 -0
  135. data/test/config/database.yml +16 -0
  136. data/test/config/environment.rb +64 -0
  137. data/test/config/environments/development.rb +21 -0
  138. data/test/config/environments/test.rb +19 -0
  139. data/test/config/routes.rb +51 -0
  140. data/test/db/migrate/001_create_posts.rb +12 -0
  141. data/test/db/migrate/002_create_products.rb +11 -0
  142. data/test/db/migrate/003_create_comments.rb +13 -0
  143. data/test/db/migrate/004_create_options.rb +12 -0
  144. data/test/db/migrate/005_create_photos.rb +11 -0
  145. data/test/db/migrate/006_create_tags.rb +17 -0
  146. data/test/db/migrate/007_create_somethings.rb +11 -0
  147. data/test/db/migrate/008_create_accounts.rb +11 -0
  148. data/test/db/migrate/009_add_account_id_to_photos.rb +9 -0
  149. data/test/db/migrate/010_create_projects.rb +11 -0
  150. data/test/db/schema.rb +65 -0
  151. data/test/log/development.log +2918 -0
  152. data/test/log/test.log +135619 -0
  153. data/test/log/thin.log +12 -0
  154. data/test/script/console +3 -0
  155. data/test/script/destroy +3 -0
  156. data/test/script/generate +3 -0
  157. data/test/script/server +3 -0
  158. data/test/test/fixtures/accounts.yml +7 -0
  159. data/test/test/fixtures/comments.yml +11 -0
  160. data/test/test/fixtures/options.yml +9 -0
  161. data/test/test/fixtures/photos.yml +9 -0
  162. data/test/test/fixtures/photos_tags.yml +3 -0
  163. data/test/test/fixtures/posts.yml +9 -0
  164. data/test/test/fixtures/products.yml +7 -0
  165. data/test/test/fixtures/projects.yml +7 -0
  166. data/test/test/fixtures/somethings.yml +7 -0
  167. data/test/test/fixtures/tags.yml +7 -0
  168. data/test/test/functional/cms/options_controller_test.rb +23 -0
  169. data/test/test/functional/cms/products_controller_test.rb +23 -0
  170. data/test/test/functional/comments_controller_test.rb +26 -0
  171. data/test/test/functional/people_controller_test.rb +34 -0
  172. data/test/test/functional/photos_controller_test.rb +130 -0
  173. data/test/test/functional/posts_controller_test.rb +34 -0
  174. data/test/test/functional/projects_controller_test.rb +18 -0
  175. data/test/test/functional/somethings_controller_test.rb +28 -0
  176. data/test/test/functional/tags_controller_test.rb +64 -0
  177. data/test/test/functional/users_controller_test.rb +24 -0
  178. data/test/test/test_helper.rb +12 -0
  179. data/test/test/unit/accessors_test.rb +110 -0
  180. data/test/test/unit/account_test.rb +7 -0
  181. data/test/test/unit/action_options_test.rb +109 -0
  182. data/test/test/unit/base_test.rb +11 -0
  183. data/test/test/unit/comment_test.rb +10 -0
  184. data/test/test/unit/failable_action_options_test.rb +77 -0
  185. data/test/test/unit/helpers/current_objects_test.rb +127 -0
  186. data/test/test/unit/helpers/internal_test.rb +106 -0
  187. data/test/test/unit/helpers/nested_test.rb +82 -0
  188. data/test/test/unit/helpers/urls_test.rb +71 -0
  189. data/test/test/unit/helpers_test.rb +25 -0
  190. data/test/test/unit/option_test.rb +10 -0
  191. data/test/test/unit/photo_test.rb +10 -0
  192. data/test/test/unit/post_test.rb +10 -0
  193. data/test/test/unit/project_test.rb +10 -0
  194. data/test/test/unit/response_collector_test.rb +49 -0
  195. data/test/test/unit/something_test.rb +10 -0
  196. data/test/test/unit/tag_test.rb +10 -0
  197. data/test/test/unit/urligence_test.rb +203 -0
  198. data/test/vendor/plugins/shoulda/Rakefile +32 -0
  199. data/test/vendor/plugins/shoulda/bin/convert_to_should_syntax +40 -0
  200. data/test/vendor/plugins/shoulda/init.rb +3 -0
  201. data/test/vendor/plugins/shoulda/lib/shoulda.rb +43 -0
  202. data/test/vendor/plugins/shoulda/lib/shoulda/active_record_helpers.rb +580 -0
  203. data/test/vendor/plugins/shoulda/lib/shoulda/color.rb +77 -0
  204. data/test/vendor/plugins/shoulda/lib/shoulda/controller_tests/controller_tests.rb +467 -0
  205. data/test/vendor/plugins/shoulda/lib/shoulda/controller_tests/formats/html.rb +201 -0
  206. data/test/vendor/plugins/shoulda/lib/shoulda/controller_tests/formats/xml.rb +170 -0
  207. data/test/vendor/plugins/shoulda/lib/shoulda/gem/proc_extensions.rb +14 -0
  208. data/test/vendor/plugins/shoulda/lib/shoulda/gem/shoulda.rb +239 -0
  209. data/test/vendor/plugins/shoulda/lib/shoulda/general.rb +118 -0
  210. data/test/vendor/plugins/shoulda/lib/shoulda/private_helpers.rb +22 -0
  211. metadata +312 -0
@@ -0,0 +1,118 @@
1
+ module ThoughtBot # :nodoc:
2
+ module Shoulda # :nodoc:
3
+ module General
4
+ def self.included(other) # :nodoc:
5
+ other.class_eval do
6
+ extend ThoughtBot::Shoulda::General::ClassMethods
7
+ end
8
+ end
9
+
10
+ module ClassMethods
11
+ # Loads all fixture files (<tt>test/fixtures/*.yml</tt>)
12
+ def load_all_fixtures
13
+ all_fixtures = Dir.glob(File.join(Test::Unit::TestCase.fixture_path, "*.yml")).collect do |f|
14
+ File.basename(f, '.yml').to_sym
15
+ end
16
+ fixtures *all_fixtures
17
+ end
18
+ end
19
+
20
+ # Prints a message to stdout, tagged with the name of the calling method.
21
+ def report!(msg = "")
22
+ puts("#{caller.first}: #{msg}")
23
+ end
24
+
25
+ # Asserts that two arrays contain the same elements, the same number of times. Essentially ==, but unordered.
26
+ #
27
+ # assert_same_elements([:a, :b, :c], [:c, :a, :b]) => passes
28
+ def assert_same_elements(a1, a2, msg = nil)
29
+ [:select, :inject, :size].each do |m|
30
+ [a1, a2].each {|a| assert_respond_to(a, m, "Are you sure that #{a.inspect} is an array? It doesn't respond to #{m}.") }
31
+ end
32
+
33
+ assert a1h = a1.inject({}) { |h,e| h[e] = a1.select { |i| i == e }.size; h }
34
+ assert a2h = a2.inject({}) { |h,e| h[e] = a2.select { |i| i == e }.size; h }
35
+
36
+ assert_equal(a1h, a2h, msg)
37
+ end
38
+
39
+ # Asserts that the given collection contains item x. If x is a regular expression, ensure that
40
+ # at least one element from the collection matches x. +extra_msg+ is appended to the error message if the assertion fails.
41
+ #
42
+ # assert_contains(['a', '1'], /\d/) => passes
43
+ # assert_contains(['a', '1'], 'a') => passes
44
+ # assert_contains(['a', '1'], /not there/) => fails
45
+ def assert_contains(collection, x, extra_msg = "")
46
+ collection = [collection] unless collection.is_a?(Array)
47
+ msg = "#{x.inspect} not found in #{collection.to_a.inspect} #{extra_msg}"
48
+ case x
49
+ when Regexp: assert(collection.detect { |e| e =~ x }, msg)
50
+ else assert(collection.include?(x), msg)
51
+ end
52
+ end
53
+
54
+ # Asserts that the given collection does not contain item x. If x is a regular expression, ensure that
55
+ # none of the elements from the collection match x.
56
+ def assert_does_not_contain(collection, x, extra_msg = "")
57
+ collection = [collection] unless collection.is_a?(Array)
58
+ msg = "#{x.inspect} found in #{collection.to_a.inspect} " + extra_msg
59
+ case x
60
+ when Regexp: assert(!collection.detect { |e| e =~ x }, msg)
61
+ else assert(!collection.include?(x), msg)
62
+ end
63
+ end
64
+
65
+ # Asserts that the given object can be saved
66
+ #
67
+ # assert_save User.new(params)
68
+ def assert_save(obj)
69
+ assert obj.save, "Errors: #{pretty_error_messages obj}"
70
+ obj.reload
71
+ end
72
+
73
+ # Asserts that the given object is valid
74
+ #
75
+ # assert_valid User.new(params)
76
+ def assert_valid(obj)
77
+ assert obj.valid?, "Errors: #{pretty_error_messages obj}"
78
+ end
79
+
80
+ # Asserts that an email was delivered. Can take a block that can further
81
+ # narrow down the types of emails you're expecting.
82
+ #
83
+ # assert_sent_email
84
+ #
85
+ # Passes if ActionMailer::Base.deliveries has an email
86
+ #
87
+ # assert_sent_email do |email|
88
+ # email.subject =~ /hi there/ && email.to.include?('none@none.com')
89
+ # end
90
+ #
91
+ # Passes if there is an email with subject containing 'hi there' and
92
+ # 'none@none.com' as one of the recipients.
93
+ #
94
+ def assert_sent_email
95
+ emails = ActionMailer::Base.deliveries
96
+ assert !emails.empty?, "No emails were sent"
97
+ if block_given?
98
+ matching_emails = emails.select {|email| yield email }
99
+ assert !matching_emails.empty?, "None of the emails matched."
100
+ end
101
+ end
102
+
103
+ # Asserts that no ActionMailer mails were delivered
104
+ #
105
+ # assert_did_not_send_email
106
+ def assert_did_not_send_email
107
+ msg = "Sent #{ActionMailer::Base.deliveries.size} emails.\n"
108
+ ActionMailer::Base.deliveries.each { |m| msg << " '#{m.subject}' sent to #{m.to.to_sentence}\n" }
109
+ assert ActionMailer::Base.deliveries.empty?, msg
110
+ end
111
+
112
+ def pretty_error_messages(obj)
113
+ obj.errors.map { |a, m| "#{a} #{m} (#{obj.send(a).inspect})" }
114
+ end
115
+
116
+ end
117
+ end
118
+ end
@@ -0,0 +1,22 @@
1
+ module ThoughtBot # :nodoc:
2
+ module Shoulda # :nodoc:
3
+ module Private # :nodoc:
4
+ # Returns the values for the entries in the args hash who's keys are listed in the wanted array.
5
+ # Will raise if there are keys in the args hash that aren't listed.
6
+ def get_options!(args, *wanted)
7
+ ret = []
8
+ opts = (args.last.is_a?(Hash) ? args.pop : {})
9
+ wanted.each {|w| ret << opts.delete(w)}
10
+ raise ArgumentError, "Unsupported options given: #{opts.keys.join(', ')}" unless opts.keys.empty?
11
+ return *ret
12
+ end
13
+
14
+ # Returns the model class constant, as determined by the test class name.
15
+ #
16
+ # class TestUser; model_class; end => User
17
+ def model_class
18
+ self.name.gsub(/Test$/, '').constantize
19
+ end
20
+ end
21
+ end
22
+ end
metadata ADDED
@@ -0,0 +1,312 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: resource_controller
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.4.9
5
+ platform: ruby
6
+ authors:
7
+ - James Golick
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-08-04 00:00:00 -04:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description: Rails RESTful controller abstraction plugin.
17
+ email: james@giraffesoft.ca
18
+ executables: []
19
+
20
+ extensions: []
21
+
22
+ extra_rdoc_files: []
23
+
24
+ files:
25
+ - README.rdoc
26
+ - README
27
+ - LICENSE
28
+ - init.rb
29
+ - Rakefile
30
+ - lib/resource_controller
31
+ - lib/resource_controller/accessors.rb
32
+ - lib/resource_controller/action_options.rb
33
+ - lib/resource_controller/actions.rb
34
+ - lib/resource_controller/base.rb
35
+ - lib/resource_controller/class_methods.rb
36
+ - lib/resource_controller/controller.rb
37
+ - lib/resource_controller/failable_action_options.rb
38
+ - lib/resource_controller/helpers
39
+ - lib/resource_controller/helpers/current_objects.rb
40
+ - lib/resource_controller/helpers/internal.rb
41
+ - lib/resource_controller/helpers/nested.rb
42
+ - lib/resource_controller/helpers/urls.rb
43
+ - lib/resource_controller/helpers.rb
44
+ - lib/resource_controller/response_collector.rb
45
+ - lib/resource_controller/version.rb
46
+ - lib/resource_controller.rb
47
+ - lib/tasks
48
+ - lib/tasks/gem.rake
49
+ - lib/urligence.rb
50
+ - test/app
51
+ - test/app/controllers
52
+ - test/app/controllers/application.rb
53
+ - test/app/controllers/cms
54
+ - test/app/controllers/cms/options_controller.rb
55
+ - test/app/controllers/cms/products_controller.rb
56
+ - test/app/controllers/comments_controller.rb
57
+ - test/app/controllers/people_controller.rb
58
+ - test/app/controllers/photos_controller.rb
59
+ - test/app/controllers/posts_controller.rb
60
+ - test/app/controllers/projects_controller.rb
61
+ - test/app/controllers/somethings_controller.rb
62
+ - test/app/controllers/tags_controller.rb
63
+ - test/app/controllers/users_controller.rb
64
+ - test/app/helpers
65
+ - test/app/helpers/application_helper.rb
66
+ - test/app/helpers/cms
67
+ - test/app/helpers/cms/products_helper.rb
68
+ - test/app/helpers/comments_helper.rb
69
+ - test/app/helpers/options_helper.rb
70
+ - test/app/helpers/people_helper.rb
71
+ - test/app/helpers/photos_helper.rb
72
+ - test/app/helpers/posts_helper.rb
73
+ - test/app/helpers/projects_helper.rb
74
+ - test/app/helpers/somethings_helper.rb
75
+ - test/app/helpers/tags_helper.rb
76
+ - test/app/helpers/users_helper.rb
77
+ - test/app/models
78
+ - test/app/models/account.rb
79
+ - test/app/models/comment.rb
80
+ - test/app/models/option.rb
81
+ - test/app/models/photo.rb
82
+ - test/app/models/post.rb
83
+ - test/app/models/product.rb
84
+ - test/app/models/project.rb
85
+ - test/app/models/something.rb
86
+ - test/app/models/tag.rb
87
+ - test/app/views
88
+ - test/app/views/cms
89
+ - test/app/views/cms/options
90
+ - test/app/views/cms/options/edit.rhtml
91
+ - test/app/views/cms/options/index.rhtml
92
+ - test/app/views/cms/options/new.rhtml
93
+ - test/app/views/cms/options/show.rhtml
94
+ - test/app/views/cms/products
95
+ - test/app/views/cms/products/edit.rhtml
96
+ - test/app/views/cms/products/index.rhtml
97
+ - test/app/views/cms/products/new.rhtml
98
+ - test/app/views/cms/products/show.rhtml
99
+ - test/app/views/comments
100
+ - test/app/views/comments/edit.rhtml
101
+ - test/app/views/comments/index.rhtml
102
+ - test/app/views/comments/new.rhtml
103
+ - test/app/views/comments/show.rhtml
104
+ - test/app/views/layouts
105
+ - test/app/views/layouts/application.rhtml
106
+ - test/app/views/layouts/comments.rhtml
107
+ - test/app/views/layouts/options.rhtml
108
+ - test/app/views/layouts/people.rhtml
109
+ - test/app/views/layouts/photos.rhtml
110
+ - test/app/views/layouts/projects.rhtml
111
+ - test/app/views/layouts/somethings.rhtml
112
+ - test/app/views/layouts/tags.rhtml
113
+ - test/app/views/people
114
+ - test/app/views/people/edit.rhtml
115
+ - test/app/views/people/index.rhtml
116
+ - test/app/views/people/new.rhtml
117
+ - test/app/views/people/show.rhtml
118
+ - test/app/views/photos
119
+ - test/app/views/photos/edit.rhtml
120
+ - test/app/views/photos/index.rhtml
121
+ - test/app/views/photos/new.rhtml
122
+ - test/app/views/photos/show.rhtml
123
+ - test/app/views/posts
124
+ - test/app/views/posts/edit.rhtml
125
+ - test/app/views/posts/index.rhtml
126
+ - test/app/views/posts/new.rhtml
127
+ - test/app/views/posts/show.rhtml
128
+ - test/app/views/projects
129
+ - test/app/views/projects/edit.rhtml
130
+ - test/app/views/projects/index.rhtml
131
+ - test/app/views/projects/new.rhtml
132
+ - test/app/views/projects/show.rhtml
133
+ - test/app/views/somethings
134
+ - test/app/views/somethings/edit.rhtml
135
+ - test/app/views/somethings/index.rhtml
136
+ - test/app/views/somethings/new.rhtml
137
+ - test/app/views/somethings/show.rhtml
138
+ - test/app/views/tags
139
+ - test/app/views/tags/edit.rhtml
140
+ - test/app/views/tags/index.rhtml
141
+ - test/app/views/tags/index.rjs
142
+ - test/app/views/tags/new.rhtml
143
+ - test/app/views/tags/show.rhtml
144
+ - test/app/views/users
145
+ - test/app/views/users/edit.rhtml
146
+ - test/app/views/users/index.rhtml
147
+ - test/app/views/users/new.rhtml
148
+ - test/app/views/users/show.rhtml
149
+ - test/config
150
+ - test/config/boot.rb
151
+ - test/config/database.yml
152
+ - test/config/environment.rb
153
+ - test/config/environments
154
+ - test/config/environments/development.rb
155
+ - test/config/environments/test.rb
156
+ - test/config/routes.rb
157
+ - test/db
158
+ - test/db/migrate
159
+ - test/db/migrate/001_create_posts.rb
160
+ - test/db/migrate/002_create_products.rb
161
+ - test/db/migrate/003_create_comments.rb
162
+ - test/db/migrate/004_create_options.rb
163
+ - test/db/migrate/005_create_photos.rb
164
+ - test/db/migrate/006_create_tags.rb
165
+ - test/db/migrate/007_create_somethings.rb
166
+ - test/db/migrate/008_create_accounts.rb
167
+ - test/db/migrate/009_add_account_id_to_photos.rb
168
+ - test/db/migrate/010_create_projects.rb
169
+ - test/db/schema.rb
170
+ - test/log
171
+ - test/log/development.log
172
+ - test/log/test.log
173
+ - test/log/thin.log
174
+ - test/Rakefile
175
+ - test/script
176
+ - test/script/console
177
+ - test/script/destroy
178
+ - test/script/generate
179
+ - test/script/server
180
+ - test/test
181
+ - test/test/fixtures
182
+ - test/test/fixtures/accounts.yml
183
+ - test/test/fixtures/comments.yml
184
+ - test/test/fixtures/options.yml
185
+ - test/test/fixtures/photos.yml
186
+ - test/test/fixtures/photos_tags.yml
187
+ - test/test/fixtures/posts.yml
188
+ - test/test/fixtures/products.yml
189
+ - test/test/fixtures/projects.yml
190
+ - test/test/fixtures/somethings.yml
191
+ - test/test/fixtures/tags.yml
192
+ - test/test/functional
193
+ - test/test/functional/cms
194
+ - test/test/functional/cms/options_controller_test.rb
195
+ - test/test/functional/cms/products_controller_test.rb
196
+ - test/test/functional/comments_controller_test.rb
197
+ - test/test/functional/people_controller_test.rb
198
+ - test/test/functional/photos_controller_test.rb
199
+ - test/test/functional/posts_controller_test.rb
200
+ - test/test/functional/projects_controller_test.rb
201
+ - test/test/functional/somethings_controller_test.rb
202
+ - test/test/functional/tags_controller_test.rb
203
+ - test/test/functional/users_controller_test.rb
204
+ - test/test/test_helper.rb
205
+ - test/test/unit
206
+ - test/test/unit/accessors_test.rb
207
+ - test/test/unit/account_test.rb
208
+ - test/test/unit/action_options_test.rb
209
+ - test/test/unit/base_test.rb
210
+ - test/test/unit/comment_test.rb
211
+ - test/test/unit/failable_action_options_test.rb
212
+ - test/test/unit/helpers
213
+ - test/test/unit/helpers/current_objects_test.rb
214
+ - test/test/unit/helpers/internal_test.rb
215
+ - test/test/unit/helpers/nested_test.rb
216
+ - test/test/unit/helpers/urls_test.rb
217
+ - test/test/unit/helpers_test.rb
218
+ - test/test/unit/option_test.rb
219
+ - test/test/unit/photo_test.rb
220
+ - test/test/unit/post_test.rb
221
+ - test/test/unit/project_test.rb
222
+ - test/test/unit/response_collector_test.rb
223
+ - test/test/unit/something_test.rb
224
+ - test/test/unit/tag_test.rb
225
+ - test/test/unit/urligence_test.rb
226
+ - test/tmp
227
+ - test/tmp/pids
228
+ - test/vendor
229
+ - test/vendor/plugins
230
+ - test/vendor/plugins/shoulda
231
+ - test/vendor/plugins/shoulda/bin
232
+ - test/vendor/plugins/shoulda/bin/convert_to_should_syntax
233
+ - test/vendor/plugins/shoulda/init.rb
234
+ - test/vendor/plugins/shoulda/lib
235
+ - test/vendor/plugins/shoulda/lib/shoulda
236
+ - test/vendor/plugins/shoulda/lib/shoulda/active_record_helpers.rb
237
+ - test/vendor/plugins/shoulda/lib/shoulda/color.rb
238
+ - test/vendor/plugins/shoulda/lib/shoulda/controller_tests
239
+ - test/vendor/plugins/shoulda/lib/shoulda/controller_tests/controller_tests.rb
240
+ - test/vendor/plugins/shoulda/lib/shoulda/controller_tests/formats
241
+ - test/vendor/plugins/shoulda/lib/shoulda/controller_tests/formats/html.rb
242
+ - test/vendor/plugins/shoulda/lib/shoulda/controller_tests/formats/xml.rb
243
+ - test/vendor/plugins/shoulda/lib/shoulda/gem
244
+ - test/vendor/plugins/shoulda/lib/shoulda/gem/proc_extensions.rb
245
+ - test/vendor/plugins/shoulda/lib/shoulda/gem/shoulda.rb
246
+ - test/vendor/plugins/shoulda/lib/shoulda/general.rb
247
+ - test/vendor/plugins/shoulda/lib/shoulda/private_helpers.rb
248
+ - test/vendor/plugins/shoulda/lib/shoulda.rb
249
+ - test/vendor/plugins/shoulda/Rakefile
250
+ - test/vendor/plugins/shoulda/tasks
251
+ - generators/scaffold_resource
252
+ - generators/scaffold_resource/scaffold_resource_generator.rb
253
+ - generators/scaffold_resource/templates
254
+ - generators/scaffold_resource/templates/controller.rb
255
+ - generators/scaffold_resource/templates/fixtures.yml
256
+ - generators/scaffold_resource/templates/functional_test.rb
257
+ - generators/scaffold_resource/templates/helper.rb
258
+ - generators/scaffold_resource/templates/migration.rb
259
+ - generators/scaffold_resource/templates/model.rb
260
+ - generators/scaffold_resource/templates/old_migration.rb
261
+ - generators/scaffold_resource/templates/rspec
262
+ - generators/scaffold_resource/templates/rspec/functional_spec.rb
263
+ - generators/scaffold_resource/templates/rspec/helper_spec.rb
264
+ - generators/scaffold_resource/templates/rspec/routing_spec.rb
265
+ - generators/scaffold_resource/templates/rspec/unit_spec.rb
266
+ - generators/scaffold_resource/templates/rspec/views
267
+ - generators/scaffold_resource/templates/rspec/views/edit_spec.rb
268
+ - generators/scaffold_resource/templates/rspec/views/index_spec.rb
269
+ - generators/scaffold_resource/templates/rspec/views/new_spec.rb
270
+ - generators/scaffold_resource/templates/rspec/views/show_spec.rb
271
+ - generators/scaffold_resource/templates/shoulda_functional_test.rb
272
+ - generators/scaffold_resource/templates/unit_test.rb
273
+ - generators/scaffold_resource/templates/view__form.erb
274
+ - generators/scaffold_resource/templates/view__form.haml
275
+ - generators/scaffold_resource/templates/view_edit.erb
276
+ - generators/scaffold_resource/templates/view_edit.haml
277
+ - generators/scaffold_resource/templates/view_index.erb
278
+ - generators/scaffold_resource/templates/view_index.haml
279
+ - generators/scaffold_resource/templates/view_new.erb
280
+ - generators/scaffold_resource/templates/view_new.haml
281
+ - generators/scaffold_resource/templates/view_show.erb
282
+ - generators/scaffold_resource/templates/view_show.haml
283
+ - generators/scaffold_resource/USAGE
284
+ - rails/init.rb
285
+ has_rdoc: true
286
+ homepage: http://jamesgolick.com/resource_controller
287
+ post_install_message:
288
+ rdoc_options: []
289
+
290
+ require_paths:
291
+ - lib
292
+ required_ruby_version: !ruby/object:Gem::Requirement
293
+ requirements:
294
+ - - ">="
295
+ - !ruby/object:Gem::Version
296
+ version: 1.8.5
297
+ version:
298
+ required_rubygems_version: !ruby/object:Gem::Requirement
299
+ requirements:
300
+ - - ">="
301
+ - !ruby/object:Gem::Version
302
+ version: "0"
303
+ version:
304
+ requirements: []
305
+
306
+ rubyforge_project: giraffesoft
307
+ rubygems_version: 1.2.0
308
+ signing_key:
309
+ specification_version: 2
310
+ summary: resource_controller makes RESTful controllers easier, more maintainable, and super readable. With the RESTful controller pattern hidden away, you can focus on what makes your controller special.
311
+ test_files: []
312
+