radar-resource_controller 0.6.6

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 (233) hide show
  1. data/LICENSE +22 -0
  2. data/README.rdoc +336 -0
  3. data/VERSION.yml +4 -0
  4. data/generators/scaffold_resource/USAGE +29 -0
  5. data/generators/scaffold_resource/scaffold_resource_generator.rb +179 -0
  6. data/generators/scaffold_resource/templates/controller.rb +2 -0
  7. data/generators/scaffold_resource/templates/fixtures.yml +10 -0
  8. data/generators/scaffold_resource/templates/functional_test.rb +57 -0
  9. data/generators/scaffold_resource/templates/helper.rb +2 -0
  10. data/generators/scaffold_resource/templates/migration.rb +15 -0
  11. data/generators/scaffold_resource/templates/model.rb +2 -0
  12. data/generators/scaffold_resource/templates/old_migration.rb +13 -0
  13. data/generators/scaffold_resource/templates/rspec/functional_spec.rb +255 -0
  14. data/generators/scaffold_resource/templates/rspec/helper_spec.rb +11 -0
  15. data/generators/scaffold_resource/templates/rspec/routing_spec.rb +61 -0
  16. data/generators/scaffold_resource/templates/rspec/unit_spec.rb +11 -0
  17. data/generators/scaffold_resource/templates/rspec/views/edit_spec.rb +28 -0
  18. data/generators/scaffold_resource/templates/rspec/views/index_spec.rb +26 -0
  19. data/generators/scaffold_resource/templates/rspec/views/new_spec.rb +30 -0
  20. data/generators/scaffold_resource/templates/rspec/views/show_spec.rb +25 -0
  21. data/generators/scaffold_resource/templates/shoulda_functional_test.rb +19 -0
  22. data/generators/scaffold_resource/templates/unit_test.rb +7 -0
  23. data/generators/scaffold_resource/templates/view__form.erb +6 -0
  24. data/generators/scaffold_resource/templates/view__form.haml +5 -0
  25. data/generators/scaffold_resource/templates/view_edit.erb +16 -0
  26. data/generators/scaffold_resource/templates/view_edit.haml +11 -0
  27. data/generators/scaffold_resource/templates/view_index.erb +22 -0
  28. data/generators/scaffold_resource/templates/view_index.haml +19 -0
  29. data/generators/scaffold_resource/templates/view_new.erb +12 -0
  30. data/generators/scaffold_resource/templates/view_new.haml +9 -0
  31. data/generators/scaffold_resource/templates/view_show.erb +9 -0
  32. data/generators/scaffold_resource/templates/view_show.haml +9 -0
  33. data/lib/resource_controller/accessors.rb +77 -0
  34. data/lib/resource_controller/action_options.rb +40 -0
  35. data/lib/resource_controller/actions.rb +75 -0
  36. data/lib/resource_controller/base.rb +15 -0
  37. data/lib/resource_controller/class_methods.rb +24 -0
  38. data/lib/resource_controller/controller.rb +70 -0
  39. data/lib/resource_controller/failable_action_options.rb +25 -0
  40. data/lib/resource_controller/helpers/current_objects.rb +73 -0
  41. data/lib/resource_controller/helpers/internal.rb +90 -0
  42. data/lib/resource_controller/helpers/nested.rb +67 -0
  43. data/lib/resource_controller/helpers/singleton_customizations.rb +64 -0
  44. data/lib/resource_controller/helpers/urls.rb +132 -0
  45. data/lib/resource_controller/helpers.rb +28 -0
  46. data/lib/resource_controller/response_collector.rb +27 -0
  47. data/lib/resource_controller/singleton.rb +15 -0
  48. data/lib/resource_controller.rb +26 -0
  49. data/lib/urligence.rb +50 -0
  50. data/rails/init.rb +6 -0
  51. data/test/Rakefile +10 -0
  52. data/test/app/controllers/accounts_controller.rb +6 -0
  53. data/test/app/controllers/application_controller.rb +6 -0
  54. data/test/app/controllers/cms/options_controller.rb +3 -0
  55. data/test/app/controllers/cms/personnel_controller.rb +2 -0
  56. data/test/app/controllers/cms/photos_controller.rb +6 -0
  57. data/test/app/controllers/cms/products_controller.rb +3 -0
  58. data/test/app/controllers/comments_controller.rb +3 -0
  59. data/test/app/controllers/images_controller.rb +4 -0
  60. data/test/app/controllers/options_controller.rb +8 -0
  61. data/test/app/controllers/people_controller.rb +9 -0
  62. data/test/app/controllers/photos_controller.rb +12 -0
  63. data/test/app/controllers/posts_controller.rb +10 -0
  64. data/test/app/controllers/projects_controller.rb +11 -0
  65. data/test/app/controllers/somethings_controller.rb +3 -0
  66. data/test/app/controllers/tags_controller.rb +13 -0
  67. data/test/app/controllers/users_controller.rb +12 -0
  68. data/test/app/helpers/accounts_helper.rb +2 -0
  69. data/test/app/helpers/application_helper.rb +3 -0
  70. data/test/app/helpers/cms/products_helper.rb +2 -0
  71. data/test/app/helpers/comments_helper.rb +2 -0
  72. data/test/app/helpers/images_helper.rb +2 -0
  73. data/test/app/helpers/options_helper.rb +2 -0
  74. data/test/app/helpers/people_helper.rb +2 -0
  75. data/test/app/helpers/photos_helper.rb +2 -0
  76. data/test/app/helpers/posts_helper.rb +2 -0
  77. data/test/app/helpers/projects_helper.rb +2 -0
  78. data/test/app/helpers/somethings_helper.rb +2 -0
  79. data/test/app/helpers/tags_helper.rb +2 -0
  80. data/test/app/helpers/users_helper.rb +2 -0
  81. data/test/app/models/account.rb +4 -0
  82. data/test/app/models/comment.rb +3 -0
  83. data/test/app/models/image.rb +3 -0
  84. data/test/app/models/option.rb +3 -0
  85. data/test/app/models/personnel.rb +3 -0
  86. data/test/app/models/photo.rb +5 -0
  87. data/test/app/models/post.rb +3 -0
  88. data/test/app/models/product.rb +3 -0
  89. data/test/app/models/project.rb +3 -0
  90. data/test/app/models/something.rb +2 -0
  91. data/test/app/models/tag.rb +3 -0
  92. data/test/app/models/user.rb +3 -0
  93. data/test/app/views/accounts/_form.html.erb +4 -0
  94. data/test/app/views/accounts/edit.html.erb +14 -0
  95. data/test/app/views/accounts/new.html.erb +12 -0
  96. data/test/app/views/accounts/show.html.erb +5 -0
  97. data/test/app/views/cms/options/edit.rhtml +17 -0
  98. data/test/app/views/cms/options/index.rhtml +20 -0
  99. data/test/app/views/cms/options/new.rhtml +16 -0
  100. data/test/app/views/cms/options/show.rhtml +8 -0
  101. data/test/app/views/cms/photos/edit.rhtml +17 -0
  102. data/test/app/views/cms/photos/index.rhtml +20 -0
  103. data/test/app/views/cms/photos/new.rhtml +16 -0
  104. data/test/app/views/cms/photos/show.rhtml +8 -0
  105. data/test/app/views/cms/products/edit.rhtml +17 -0
  106. data/test/app/views/cms/products/index.rhtml +20 -0
  107. data/test/app/views/cms/products/new.rhtml +16 -0
  108. data/test/app/views/cms/products/show.rhtml +8 -0
  109. data/test/app/views/comments/edit.rhtml +27 -0
  110. data/test/app/views/comments/index.rhtml +24 -0
  111. data/test/app/views/comments/new.rhtml +26 -0
  112. data/test/app/views/comments/show.rhtml +18 -0
  113. data/test/app/views/images/_form.html.erb +4 -0
  114. data/test/app/views/images/edit.html.erb +14 -0
  115. data/test/app/views/images/new.html.erb +12 -0
  116. data/test/app/views/layouts/application.rhtml +17 -0
  117. data/test/app/views/layouts/comments.rhtml +17 -0
  118. data/test/app/views/layouts/options.rhtml +17 -0
  119. data/test/app/views/layouts/people.rhtml +17 -0
  120. data/test/app/views/layouts/photos.rhtml +17 -0
  121. data/test/app/views/layouts/projects.rhtml +17 -0
  122. data/test/app/views/layouts/somethings.rhtml +17 -0
  123. data/test/app/views/layouts/tags.rhtml +17 -0
  124. data/test/app/views/options/_form.html.erb +8 -0
  125. data/test/app/views/options/edit.html.erb +16 -0
  126. data/test/app/views/options/index.html.erb +21 -0
  127. data/test/app/views/options/new.html.erb +12 -0
  128. data/test/app/views/options/show.html.erb +10 -0
  129. data/test/app/views/people/edit.rhtml +17 -0
  130. data/test/app/views/people/index.rhtml +20 -0
  131. data/test/app/views/people/new.rhtml +16 -0
  132. data/test/app/views/people/show.rhtml +8 -0
  133. data/test/app/views/photos/edit.rhtml +17 -0
  134. data/test/app/views/photos/index.rhtml +20 -0
  135. data/test/app/views/photos/new.rhtml +16 -0
  136. data/test/app/views/photos/show.rhtml +8 -0
  137. data/test/app/views/posts/edit.rhtml +22 -0
  138. data/test/app/views/posts/index.rhtml +22 -0
  139. data/test/app/views/posts/new.rhtml +21 -0
  140. data/test/app/views/posts/show.rhtml +13 -0
  141. data/test/app/views/projects/edit.rhtml +17 -0
  142. data/test/app/views/projects/index.rhtml +20 -0
  143. data/test/app/views/projects/new.rhtml +16 -0
  144. data/test/app/views/projects/show.rhtml +8 -0
  145. data/test/app/views/somethings/edit.rhtml +17 -0
  146. data/test/app/views/somethings/index.rhtml +20 -0
  147. data/test/app/views/somethings/new.rhtml +16 -0
  148. data/test/app/views/somethings/show.rhtml +8 -0
  149. data/test/app/views/tags/edit.rhtml +17 -0
  150. data/test/app/views/tags/index.rhtml +20 -0
  151. data/test/app/views/tags/index.rjs +0 -0
  152. data/test/app/views/tags/new.rhtml +16 -0
  153. data/test/app/views/tags/show.rhtml +8 -0
  154. data/test/app/views/users/edit.rhtml +17 -0
  155. data/test/app/views/users/index.rhtml +20 -0
  156. data/test/app/views/users/new.rhtml +16 -0
  157. data/test/app/views/users/show.rhtml +8 -0
  158. data/test/config/boot.rb +110 -0
  159. data/test/config/database.yml +9 -0
  160. data/test/config/environment.rb +49 -0
  161. data/test/config/environments/development.rb +17 -0
  162. data/test/config/environments/test.rb +19 -0
  163. data/test/config/initializers/inflections.rb +14 -0
  164. data/test/config/routes.rb +61 -0
  165. data/test/db/migrate/001_create_posts.rb +12 -0
  166. data/test/db/migrate/002_create_products.rb +11 -0
  167. data/test/db/migrate/003_create_comments.rb +13 -0
  168. data/test/db/migrate/004_create_options.rb +13 -0
  169. data/test/db/migrate/005_create_photos.rb +11 -0
  170. data/test/db/migrate/006_create_tags.rb +17 -0
  171. data/test/db/migrate/007_create_somethings.rb +11 -0
  172. data/test/db/migrate/008_create_accounts.rb +11 -0
  173. data/test/db/migrate/009_add_account_id_to_photos.rb +9 -0
  174. data/test/db/migrate/010_create_projects.rb +11 -0
  175. data/test/db/migrate/011_create_images.rb +12 -0
  176. data/test/db/migrate/012_create_users.rb +11 -0
  177. data/test/db/migrate/013_create_personnel.rb +11 -0
  178. data/test/db/migrate/014_add_personnel_id_to_photos.rb +9 -0
  179. data/test/db/schema.rb +78 -0
  180. data/test/script/console +3 -0
  181. data/test/script/destroy +3 -0
  182. data/test/script/generate +3 -0
  183. data/test/script/server +3 -0
  184. data/test/test/fixtures/accounts.yml +7 -0
  185. data/test/test/fixtures/comments.yml +11 -0
  186. data/test/test/fixtures/images.yml +6 -0
  187. data/test/test/fixtures/options.yml +9 -0
  188. data/test/test/fixtures/personnel.yml +5 -0
  189. data/test/test/fixtures/photos.yml +9 -0
  190. data/test/test/fixtures/photos_tags.yml +3 -0
  191. data/test/test/fixtures/posts.yml +9 -0
  192. data/test/test/fixtures/products.yml +7 -0
  193. data/test/test/fixtures/projects.yml +7 -0
  194. data/test/test/fixtures/somethings.yml +7 -0
  195. data/test/test/fixtures/tags.yml +7 -0
  196. data/test/test/fixtures/users.yml +5 -0
  197. data/test/test/functional/cms/options_controller_test.rb +23 -0
  198. data/test/test/functional/cms/photos_controller_test.rb +43 -0
  199. data/test/test/functional/cms/products_controller_test.rb +23 -0
  200. data/test/test/functional/comments_controller_test.rb +26 -0
  201. data/test/test/functional/images_controller_test.rb +37 -0
  202. data/test/test/functional/people_controller_test.rb +34 -0
  203. data/test/test/functional/photos_controller_test.rb +130 -0
  204. data/test/test/functional/posts_controller_test.rb +34 -0
  205. data/test/test/functional/projects_controller_test.rb +44 -0
  206. data/test/test/functional/somethings_controller_test.rb +28 -0
  207. data/test/test/functional/tags_controller_test.rb +64 -0
  208. data/test/test/functional/users_controller_test.rb +24 -0
  209. data/test/test/test_helper.rb +13 -0
  210. data/test/test/unit/accessors_test.rb +110 -0
  211. data/test/test/unit/account_test.rb +7 -0
  212. data/test/test/unit/action_options_test.rb +109 -0
  213. data/test/test/unit/base_test.rb +11 -0
  214. data/test/test/unit/comment_test.rb +10 -0
  215. data/test/test/unit/failable_action_options_test.rb +77 -0
  216. data/test/test/unit/helpers/current_objects_test.rb +133 -0
  217. data/test/test/unit/helpers/internal_test.rb +106 -0
  218. data/test/test/unit/helpers/nested_test.rb +86 -0
  219. data/test/test/unit/helpers/singleton_current_objects_test.rb +68 -0
  220. data/test/test/unit/helpers/singleton_nested_test.rb +77 -0
  221. data/test/test/unit/helpers/singleton_urls_test.rb +67 -0
  222. data/test/test/unit/helpers/urls_test.rb +75 -0
  223. data/test/test/unit/helpers_test.rb +25 -0
  224. data/test/test/unit/image_test.rb +7 -0
  225. data/test/test/unit/option_test.rb +10 -0
  226. data/test/test/unit/photo_test.rb +10 -0
  227. data/test/test/unit/post_test.rb +10 -0
  228. data/test/test/unit/project_test.rb +10 -0
  229. data/test/test/unit/response_collector_test.rb +49 -0
  230. data/test/test/unit/something_test.rb +10 -0
  231. data/test/test/unit/tag_test.rb +10 -0
  232. data/test/test/unit/urligence_test.rb +203 -0
  233. metadata +383 -0
@@ -0,0 +1,49 @@
1
+ require File.dirname(__FILE__)+'/../test_helper'
2
+
3
+ class ResponseCollectorTest < ActiveSupport::TestCase
4
+ context "yielding a block to a collector object" do
5
+ setup do
6
+ @collector = ResourceController::ResponseCollector.new
7
+ block = lambda do |wants|
8
+ wants.html {}
9
+ wants.js {}
10
+ wants.xml
11
+ end
12
+ block.call(@collector)
13
+ end
14
+
15
+ should "collect responses" do
16
+ assert_equal Proc, @collector[:html][1].class, @collector[:html].inspect
17
+ assert_equal Proc, @collector[:js][1].class, @collector[:js].inspect
18
+ assert @collector[:xml][1].nil?, @collector[:xml].inspect
19
+ end
20
+
21
+ should "clear responses with clear method" do
22
+ @collector.clear
23
+ assert @collector.responses.empty?
24
+ end
25
+
26
+ should "destroy methods before readding them, if they're already there" do
27
+ @collector.html
28
+ assert @collector[:html][1].nil?
29
+ end
30
+ end
31
+
32
+ context "duplicating a response collector" do
33
+ setup do
34
+ @collector = ResourceController::ResponseCollector.new
35
+ @collector.js
36
+ @duplicate = @collector.dup
37
+ @collector.css
38
+ end
39
+
40
+ should "not bleed in to the original" do
41
+ assert @duplicate[:css].nil?
42
+ end
43
+
44
+ should "duplicate existing responses at the time of duplication" do
45
+ assert_equal :js, @duplicate[:js].first
46
+ end
47
+ end
48
+
49
+ end
@@ -0,0 +1,10 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class SomethingTest < ActiveSupport::TestCase
4
+ fixtures :somethings
5
+
6
+ # Replace this with your real tests.
7
+ def test_truth
8
+ assert true
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class TagTest < ActiveSupport::TestCase
4
+ fixtures :tags
5
+
6
+ # Replace this with your real tests.
7
+ def test_truth
8
+ assert true
9
+ end
10
+ end
@@ -0,0 +1,203 @@
1
+ require File.dirname(__FILE__)+'/../test_helper'
2
+ require 'urligence'
3
+
4
+ class PhotosController
5
+ include Urligence
6
+ end
7
+
8
+ class UrligenceTest < ActiveSupport::TestCase
9
+ def setup
10
+ @controller = PhotosController.new
11
+ @tag = stub(:class => stub(:name => "Tag"), :to_param => 'awesomestuff')
12
+ @photo = stub(:class => stub(:name => "Photo"), :to_param => 1)
13
+ end
14
+
15
+ context "with one object" do
16
+ setup do
17
+ setup_mocks "/photos/#{@photo.to_param}", :photo, @photo
18
+ end
19
+
20
+ context "urligence" do
21
+ should "return the correct path" do
22
+ assert_equal @expected_path, @controller.urligence(@photo, :path)
23
+ end
24
+ end
25
+
26
+ context "smart_url" do
27
+ should "return the correct url" do
28
+ assert_equal @expected_url, @controller.smart_url(@photo)
29
+ end
30
+ end
31
+
32
+ context "smart_path" do
33
+ should "return the correct path" do
34
+ assert_equal @expected_path, @controller.smart_path(@photo)
35
+ end
36
+ end
37
+ end
38
+
39
+ context "with two objects" do
40
+ setup do
41
+ setup_mocks "/tags/#{@tag.to_param}/photos/#{@photo.to_param}", :tag_photo, @tag, @photo
42
+ end
43
+
44
+ should "return the correct path" do
45
+ assert_equal @expected_path, @controller.urligence(@tag, @photo, :path)
46
+ end
47
+ end
48
+
49
+ context "with a namespace as first param" do
50
+ setup do
51
+ setup_mocks "/admin/tags/#{@tag.to_param}/photos/#{@photo.to_param}", :admin_tag_photo, @tag, @photo
52
+ end
53
+
54
+ should "return the correct path" do
55
+ assert_equal @expected_path, @controller.urligence(:admin, @tag, @photo, :path)
56
+ end
57
+ end
58
+
59
+ context "with many nil options anywhere in the arguments" do
60
+ setup do
61
+ setup_mocks "/tags/#{@tag.to_param}/photos/#{@photo.to_param}", :tag_photo, @tag, @photo
62
+ end
63
+
64
+ should "return the correct path" do
65
+ assert_equal @expected_path, @controller.urligence(nil, nil, nil, @tag, nil, @photo, nil, :path)
66
+ end
67
+ end
68
+
69
+ context "with a symbol as the last parameter" do
70
+ setup do
71
+ setup_mocks "/tags/#{@tag.to_param}/photos", :tag_photos, @tag
72
+ end
73
+
74
+ should "use that as the last fragment of the url" do
75
+ assert_equal @expected_path, @controller.urligence(@tag, :photos, :path)
76
+ end
77
+ end
78
+
79
+ context "with a symbol as the only parameter" do
80
+ setup do
81
+ setup_mocks "/photos", :photos
82
+ end
83
+
84
+ should "use that as the only url fragment" do
85
+ assert_equal @expected_path, @controller.urligence(nil, :photos, :path)
86
+ end
87
+ end
88
+
89
+ context "with a namespace, and a plural symbol" do
90
+ setup do
91
+ setup_mocks "/admin/products", :admin_products
92
+ end
93
+
94
+ should "call the correct url handler" do
95
+ assert_equal @expected_path, @controller.urligence(:admin, :products, :path)
96
+ end
97
+ end
98
+
99
+ context "with only symbols" do
100
+ setup do
101
+ setup_mocks '/admin/products/new', :new_admin_products
102
+ end
103
+
104
+ should "return the correct path" do
105
+ assert_equal @expected_path, @controller.urligence(:new, :admin, :products, :path)
106
+ end
107
+ end
108
+
109
+ context "with array parameters for specifying the names of routes that don't match the class name of the object" do
110
+ setup do
111
+ setup_mocks '/something_tags/1', :something_tag, @tag
112
+ end
113
+
114
+ context "urligence" do
115
+ should "use the name of the symbol as the url fragment" do
116
+ assert_equal @expected_path, @controller.urligence([:something_tag, @tag], :path)
117
+ end
118
+ end
119
+
120
+ context "smart_url" do
121
+ should "return the correct path" do
122
+ assert_equal @expected_url, @controller.smart_url([:something_tag, @tag])
123
+ end
124
+ end
125
+
126
+ context "smart_path" do
127
+ should "return the correct path" do
128
+ assert_equal @expected_path, @controller.smart_path([:something_tag, @tag])
129
+ end
130
+ end
131
+ end
132
+
133
+ context "with array parameters and a namespace" do
134
+ setup do
135
+ setup_mocks '/admin/something_tags/1', :admin_something_tag, @tag
136
+ end
137
+
138
+ should "return the correct url" do
139
+ assert_equal @expected_path, @controller.urligence(:admin, [:something_tag, @tag], :path)
140
+ end
141
+ end
142
+
143
+ context "with array parameters, a namespace, and an ending symbol" do
144
+ setup do
145
+ setup_mocks '/admin/something_tags/1/photos', :admin_something_tag_photos, @tag
146
+ end
147
+
148
+ should "return the correct url" do
149
+ assert_equal @expected_path, @controller.urligence(:admin, [:something_tag, @tag], :photos, :path)
150
+ end
151
+ end
152
+
153
+ context "with array parameters, a symbol namespace, and normal model parameters" do
154
+ setup do
155
+ setup_mocks '/admin/something_tags/1/photos/1', :admin_something_tag_photo, @tag, @photo
156
+ end
157
+
158
+ should "return the correct url" do
159
+ assert_equal @expected_path, @controller.urligence(:admin, [:something_tag, @tag], @photo, :path)
160
+ end
161
+ end
162
+
163
+ context "hash_for" do
164
+ context "url" do
165
+ setup do
166
+ @controller.stubs(:hash_for_photo_tag_url).with(:id => @tag.to_param, :photo_id => @photo.to_param).returns("something")
167
+ end
168
+
169
+ should "return the correct hash" do
170
+ assert_equal "something", @controller.hash_for_smart_url(@photo, @tag)
171
+ end
172
+ end
173
+
174
+ context "path" do
175
+ setup do
176
+ @photo_tag = stub(:class => stub(:name => "PhotoTag"), :to_param => 'awesomestuff')
177
+ @controller.stubs(:hash_for_photo_tag_path).with(:id => @tag.to_param, :photo_id => @photo.to_param).returns("something")
178
+ end
179
+
180
+ should "return the correct hash" do
181
+ assert_equal "something", @controller.hash_for_smart_path(@photo, [:tag, @photo_tag])
182
+ end
183
+ end
184
+
185
+ context "collection path" do
186
+ setup do
187
+ @controller.stubs(:hash_for_photos_path).with({}).returns('something')
188
+ end
189
+
190
+ should "call the correct methods" do
191
+ assert_equal 'something', @controller.hash_for_smart_path(:photos)
192
+ end
193
+ end
194
+ end
195
+
196
+ private
197
+ def setup_mocks(expected_path, method, *params)
198
+ @expected_path = expected_path
199
+ @controller.stubs("#{method}_path".to_sym).with(*params).returns(@expected_path)
200
+ @controller.stubs("#{method}_url".to_sym).with(*params).returns(@expected_url = "http://localhost#{@expected_path}")
201
+ @controller.stubs("hash_for_#{method}_url".to_sym).with(*params).returns(@expected_hash = @expected_url)
202
+ end
203
+ end
metadata ADDED
@@ -0,0 +1,383 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: radar-resource_controller
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.6.6
5
+ platform: ruby
6
+ authors:
7
+ - James Golick
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-09-14 00:00:00 -07:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description: ""
17
+ email: james@giraffesoft.ca
18
+ executables: []
19
+
20
+ extensions: []
21
+
22
+ extra_rdoc_files:
23
+ - LICENSE
24
+ - README.rdoc
25
+ files:
26
+ - README.rdoc
27
+ - VERSION.yml
28
+ - generators/scaffold_resource/USAGE
29
+ - generators/scaffold_resource/scaffold_resource_generator.rb
30
+ - generators/scaffold_resource/templates/controller.rb
31
+ - generators/scaffold_resource/templates/fixtures.yml
32
+ - generators/scaffold_resource/templates/functional_test.rb
33
+ - generators/scaffold_resource/templates/helper.rb
34
+ - generators/scaffold_resource/templates/migration.rb
35
+ - generators/scaffold_resource/templates/model.rb
36
+ - generators/scaffold_resource/templates/old_migration.rb
37
+ - generators/scaffold_resource/templates/rspec/functional_spec.rb
38
+ - generators/scaffold_resource/templates/rspec/helper_spec.rb
39
+ - generators/scaffold_resource/templates/rspec/routing_spec.rb
40
+ - generators/scaffold_resource/templates/rspec/unit_spec.rb
41
+ - generators/scaffold_resource/templates/rspec/views/edit_spec.rb
42
+ - generators/scaffold_resource/templates/rspec/views/index_spec.rb
43
+ - generators/scaffold_resource/templates/rspec/views/new_spec.rb
44
+ - generators/scaffold_resource/templates/rspec/views/show_spec.rb
45
+ - generators/scaffold_resource/templates/shoulda_functional_test.rb
46
+ - generators/scaffold_resource/templates/unit_test.rb
47
+ - generators/scaffold_resource/templates/view__form.erb
48
+ - generators/scaffold_resource/templates/view__form.haml
49
+ - generators/scaffold_resource/templates/view_edit.erb
50
+ - generators/scaffold_resource/templates/view_edit.haml
51
+ - generators/scaffold_resource/templates/view_index.erb
52
+ - generators/scaffold_resource/templates/view_index.haml
53
+ - generators/scaffold_resource/templates/view_new.erb
54
+ - generators/scaffold_resource/templates/view_new.haml
55
+ - generators/scaffold_resource/templates/view_show.erb
56
+ - generators/scaffold_resource/templates/view_show.haml
57
+ - lib/resource_controller.rb
58
+ - lib/resource_controller/accessors.rb
59
+ - lib/resource_controller/action_options.rb
60
+ - lib/resource_controller/actions.rb
61
+ - lib/resource_controller/base.rb
62
+ - lib/resource_controller/class_methods.rb
63
+ - lib/resource_controller/controller.rb
64
+ - lib/resource_controller/failable_action_options.rb
65
+ - lib/resource_controller/helpers.rb
66
+ - lib/resource_controller/helpers/current_objects.rb
67
+ - lib/resource_controller/helpers/internal.rb
68
+ - lib/resource_controller/helpers/nested.rb
69
+ - lib/resource_controller/helpers/singleton_customizations.rb
70
+ - lib/resource_controller/helpers/urls.rb
71
+ - lib/resource_controller/response_collector.rb
72
+ - lib/resource_controller/singleton.rb
73
+ - lib/urligence.rb
74
+ - rails/init.rb
75
+ - test/Rakefile
76
+ - test/app/controllers/accounts_controller.rb
77
+ - test/app/controllers/application_controller.rb
78
+ - test/app/controllers/cms/options_controller.rb
79
+ - test/app/controllers/cms/personnel_controller.rb
80
+ - test/app/controllers/cms/photos_controller.rb
81
+ - test/app/controllers/cms/products_controller.rb
82
+ - test/app/controllers/comments_controller.rb
83
+ - test/app/controllers/images_controller.rb
84
+ - test/app/controllers/options_controller.rb
85
+ - test/app/controllers/people_controller.rb
86
+ - test/app/controllers/photos_controller.rb
87
+ - test/app/controllers/posts_controller.rb
88
+ - test/app/controllers/projects_controller.rb
89
+ - test/app/controllers/somethings_controller.rb
90
+ - test/app/controllers/tags_controller.rb
91
+ - test/app/controllers/users_controller.rb
92
+ - test/app/helpers/accounts_helper.rb
93
+ - test/app/helpers/application_helper.rb
94
+ - test/app/helpers/cms/products_helper.rb
95
+ - test/app/helpers/comments_helper.rb
96
+ - test/app/helpers/images_helper.rb
97
+ - test/app/helpers/options_helper.rb
98
+ - test/app/helpers/people_helper.rb
99
+ - test/app/helpers/photos_helper.rb
100
+ - test/app/helpers/posts_helper.rb
101
+ - test/app/helpers/projects_helper.rb
102
+ - test/app/helpers/somethings_helper.rb
103
+ - test/app/helpers/tags_helper.rb
104
+ - test/app/helpers/users_helper.rb
105
+ - test/app/models/account.rb
106
+ - test/app/models/comment.rb
107
+ - test/app/models/image.rb
108
+ - test/app/models/option.rb
109
+ - test/app/models/personnel.rb
110
+ - test/app/models/photo.rb
111
+ - test/app/models/post.rb
112
+ - test/app/models/product.rb
113
+ - test/app/models/project.rb
114
+ - test/app/models/something.rb
115
+ - test/app/models/tag.rb
116
+ - test/app/models/user.rb
117
+ - test/app/views/accounts/_form.html.erb
118
+ - test/app/views/accounts/edit.html.erb
119
+ - test/app/views/accounts/new.html.erb
120
+ - test/app/views/accounts/show.html.erb
121
+ - test/app/views/cms/options/edit.rhtml
122
+ - test/app/views/cms/options/index.rhtml
123
+ - test/app/views/cms/options/new.rhtml
124
+ - test/app/views/cms/options/show.rhtml
125
+ - test/app/views/cms/photos/edit.rhtml
126
+ - test/app/views/cms/photos/index.rhtml
127
+ - test/app/views/cms/photos/new.rhtml
128
+ - test/app/views/cms/photos/show.rhtml
129
+ - test/app/views/cms/products/edit.rhtml
130
+ - test/app/views/cms/products/index.rhtml
131
+ - test/app/views/cms/products/new.rhtml
132
+ - test/app/views/cms/products/show.rhtml
133
+ - test/app/views/comments/edit.rhtml
134
+ - test/app/views/comments/index.rhtml
135
+ - test/app/views/comments/new.rhtml
136
+ - test/app/views/comments/show.rhtml
137
+ - test/app/views/images/_form.html.erb
138
+ - test/app/views/images/edit.html.erb
139
+ - test/app/views/images/new.html.erb
140
+ - test/app/views/layouts/application.rhtml
141
+ - test/app/views/layouts/comments.rhtml
142
+ - test/app/views/layouts/options.rhtml
143
+ - test/app/views/layouts/people.rhtml
144
+ - test/app/views/layouts/photos.rhtml
145
+ - test/app/views/layouts/projects.rhtml
146
+ - test/app/views/layouts/somethings.rhtml
147
+ - test/app/views/layouts/tags.rhtml
148
+ - test/app/views/options/_form.html.erb
149
+ - test/app/views/options/edit.html.erb
150
+ - test/app/views/options/index.html.erb
151
+ - test/app/views/options/new.html.erb
152
+ - test/app/views/options/show.html.erb
153
+ - test/app/views/people/edit.rhtml
154
+ - test/app/views/people/index.rhtml
155
+ - test/app/views/people/new.rhtml
156
+ - test/app/views/people/show.rhtml
157
+ - test/app/views/photos/edit.rhtml
158
+ - test/app/views/photos/index.rhtml
159
+ - test/app/views/photos/new.rhtml
160
+ - test/app/views/photos/show.rhtml
161
+ - test/app/views/posts/edit.rhtml
162
+ - test/app/views/posts/index.rhtml
163
+ - test/app/views/posts/new.rhtml
164
+ - test/app/views/posts/show.rhtml
165
+ - test/app/views/projects/edit.rhtml
166
+ - test/app/views/projects/index.rhtml
167
+ - test/app/views/projects/new.rhtml
168
+ - test/app/views/projects/show.rhtml
169
+ - test/app/views/somethings/edit.rhtml
170
+ - test/app/views/somethings/index.rhtml
171
+ - test/app/views/somethings/new.rhtml
172
+ - test/app/views/somethings/show.rhtml
173
+ - test/app/views/tags/edit.rhtml
174
+ - test/app/views/tags/index.rhtml
175
+ - test/app/views/tags/index.rjs
176
+ - test/app/views/tags/new.rhtml
177
+ - test/app/views/tags/show.rhtml
178
+ - test/app/views/users/edit.rhtml
179
+ - test/app/views/users/index.rhtml
180
+ - test/app/views/users/new.rhtml
181
+ - test/app/views/users/show.rhtml
182
+ - test/config/boot.rb
183
+ - test/config/database.yml
184
+ - test/config/environment.rb
185
+ - test/config/environments/development.rb
186
+ - test/config/environments/test.rb
187
+ - test/config/initializers/inflections.rb
188
+ - test/config/routes.rb
189
+ - test/db/migrate/001_create_posts.rb
190
+ - test/db/migrate/002_create_products.rb
191
+ - test/db/migrate/003_create_comments.rb
192
+ - test/db/migrate/004_create_options.rb
193
+ - test/db/migrate/005_create_photos.rb
194
+ - test/db/migrate/006_create_tags.rb
195
+ - test/db/migrate/007_create_somethings.rb
196
+ - test/db/migrate/008_create_accounts.rb
197
+ - test/db/migrate/009_add_account_id_to_photos.rb
198
+ - test/db/migrate/010_create_projects.rb
199
+ - test/db/migrate/011_create_images.rb
200
+ - test/db/migrate/012_create_users.rb
201
+ - test/db/migrate/013_create_personnel.rb
202
+ - test/db/migrate/014_add_personnel_id_to_photos.rb
203
+ - test/db/schema.rb
204
+ - test/script/console
205
+ - test/script/destroy
206
+ - test/script/generate
207
+ - test/script/server
208
+ - test/test/fixtures/accounts.yml
209
+ - test/test/fixtures/comments.yml
210
+ - test/test/fixtures/images.yml
211
+ - test/test/fixtures/options.yml
212
+ - test/test/fixtures/personnel.yml
213
+ - test/test/fixtures/photos.yml
214
+ - test/test/fixtures/photos_tags.yml
215
+ - test/test/fixtures/posts.yml
216
+ - test/test/fixtures/products.yml
217
+ - test/test/fixtures/projects.yml
218
+ - test/test/fixtures/somethings.yml
219
+ - test/test/fixtures/tags.yml
220
+ - test/test/fixtures/users.yml
221
+ - test/test/functional/cms/options_controller_test.rb
222
+ - test/test/functional/cms/photos_controller_test.rb
223
+ - test/test/functional/cms/products_controller_test.rb
224
+ - test/test/functional/comments_controller_test.rb
225
+ - test/test/functional/images_controller_test.rb
226
+ - test/test/functional/people_controller_test.rb
227
+ - test/test/functional/photos_controller_test.rb
228
+ - test/test/functional/posts_controller_test.rb
229
+ - test/test/functional/projects_controller_test.rb
230
+ - test/test/functional/somethings_controller_test.rb
231
+ - test/test/functional/tags_controller_test.rb
232
+ - test/test/functional/users_controller_test.rb
233
+ - test/test/test_helper.rb
234
+ - test/test/unit/accessors_test.rb
235
+ - test/test/unit/account_test.rb
236
+ - test/test/unit/action_options_test.rb
237
+ - test/test/unit/base_test.rb
238
+ - test/test/unit/comment_test.rb
239
+ - test/test/unit/failable_action_options_test.rb
240
+ - test/test/unit/helpers/current_objects_test.rb
241
+ - test/test/unit/helpers/internal_test.rb
242
+ - test/test/unit/helpers/nested_test.rb
243
+ - test/test/unit/helpers/singleton_current_objects_test.rb
244
+ - test/test/unit/helpers/singleton_nested_test.rb
245
+ - test/test/unit/helpers/singleton_urls_test.rb
246
+ - test/test/unit/helpers/urls_test.rb
247
+ - test/test/unit/helpers_test.rb
248
+ - test/test/unit/image_test.rb
249
+ - test/test/unit/option_test.rb
250
+ - test/test/unit/photo_test.rb
251
+ - test/test/unit/post_test.rb
252
+ - test/test/unit/project_test.rb
253
+ - test/test/unit/response_collector_test.rb
254
+ - test/test/unit/something_test.rb
255
+ - test/test/unit/tag_test.rb
256
+ - test/test/unit/urligence_test.rb
257
+ - LICENSE
258
+ has_rdoc: false
259
+ homepage: http://jamesgolick.com/resource_controller
260
+ licenses:
261
+ post_install_message:
262
+ rdoc_options:
263
+ - --charset=UTF-8
264
+ require_paths:
265
+ - lib
266
+ required_ruby_version: !ruby/object:Gem::Requirement
267
+ requirements:
268
+ - - ">="
269
+ - !ruby/object:Gem::Version
270
+ version: "0"
271
+ version:
272
+ required_rubygems_version: !ruby/object:Gem::Requirement
273
+ requirements:
274
+ - - ">="
275
+ - !ruby/object:Gem::Version
276
+ version: "0"
277
+ version:
278
+ requirements: []
279
+
280
+ rubyforge_project:
281
+ rubygems_version: 1.3.5
282
+ signing_key:
283
+ specification_version: 3
284
+ summary: Rails RESTful controller abstraction plugin.
285
+ test_files:
286
+ - test/app/controllers/accounts_controller.rb
287
+ - test/app/controllers/application_controller.rb
288
+ - test/app/controllers/cms/options_controller.rb
289
+ - test/app/controllers/cms/personnel_controller.rb
290
+ - test/app/controllers/cms/photos_controller.rb
291
+ - test/app/controllers/cms/products_controller.rb
292
+ - test/app/controllers/comments_controller.rb
293
+ - test/app/controllers/images_controller.rb
294
+ - test/app/controllers/options_controller.rb
295
+ - test/app/controllers/people_controller.rb
296
+ - test/app/controllers/photos_controller.rb
297
+ - test/app/controllers/posts_controller.rb
298
+ - test/app/controllers/projects_controller.rb
299
+ - test/app/controllers/somethings_controller.rb
300
+ - test/app/controllers/tags_controller.rb
301
+ - test/app/controllers/users_controller.rb
302
+ - test/app/helpers/accounts_helper.rb
303
+ - test/app/helpers/application_helper.rb
304
+ - test/app/helpers/cms/products_helper.rb
305
+ - test/app/helpers/comments_helper.rb
306
+ - test/app/helpers/images_helper.rb
307
+ - test/app/helpers/options_helper.rb
308
+ - test/app/helpers/people_helper.rb
309
+ - test/app/helpers/photos_helper.rb
310
+ - test/app/helpers/posts_helper.rb
311
+ - test/app/helpers/projects_helper.rb
312
+ - test/app/helpers/somethings_helper.rb
313
+ - test/app/helpers/tags_helper.rb
314
+ - test/app/helpers/users_helper.rb
315
+ - test/app/models/account.rb
316
+ - test/app/models/comment.rb
317
+ - test/app/models/image.rb
318
+ - test/app/models/option.rb
319
+ - test/app/models/personnel.rb
320
+ - test/app/models/photo.rb
321
+ - test/app/models/post.rb
322
+ - test/app/models/product.rb
323
+ - test/app/models/project.rb
324
+ - test/app/models/something.rb
325
+ - test/app/models/tag.rb
326
+ - test/app/models/user.rb
327
+ - test/config/boot.rb
328
+ - test/config/environment.rb
329
+ - test/config/environments/development.rb
330
+ - test/config/environments/test.rb
331
+ - test/config/initializers/inflections.rb
332
+ - test/config/routes.rb
333
+ - test/db/migrate/001_create_posts.rb
334
+ - test/db/migrate/002_create_products.rb
335
+ - test/db/migrate/003_create_comments.rb
336
+ - test/db/migrate/004_create_options.rb
337
+ - test/db/migrate/005_create_photos.rb
338
+ - test/db/migrate/006_create_tags.rb
339
+ - test/db/migrate/007_create_somethings.rb
340
+ - test/db/migrate/008_create_accounts.rb
341
+ - test/db/migrate/009_add_account_id_to_photos.rb
342
+ - test/db/migrate/010_create_projects.rb
343
+ - test/db/migrate/011_create_images.rb
344
+ - test/db/migrate/012_create_users.rb
345
+ - test/db/migrate/013_create_personnel.rb
346
+ - test/db/migrate/014_add_personnel_id_to_photos.rb
347
+ - test/db/schema.rb
348
+ - test/test/functional/cms/options_controller_test.rb
349
+ - test/test/functional/cms/photos_controller_test.rb
350
+ - test/test/functional/cms/products_controller_test.rb
351
+ - test/test/functional/comments_controller_test.rb
352
+ - test/test/functional/images_controller_test.rb
353
+ - test/test/functional/people_controller_test.rb
354
+ - test/test/functional/photos_controller_test.rb
355
+ - test/test/functional/posts_controller_test.rb
356
+ - test/test/functional/projects_controller_test.rb
357
+ - test/test/functional/somethings_controller_test.rb
358
+ - test/test/functional/tags_controller_test.rb
359
+ - test/test/functional/users_controller_test.rb
360
+ - test/test/test_helper.rb
361
+ - test/test/unit/accessors_test.rb
362
+ - test/test/unit/account_test.rb
363
+ - test/test/unit/action_options_test.rb
364
+ - test/test/unit/base_test.rb
365
+ - test/test/unit/comment_test.rb
366
+ - test/test/unit/failable_action_options_test.rb
367
+ - test/test/unit/helpers/current_objects_test.rb
368
+ - test/test/unit/helpers/internal_test.rb
369
+ - test/test/unit/helpers/nested_test.rb
370
+ - test/test/unit/helpers/singleton_current_objects_test.rb
371
+ - test/test/unit/helpers/singleton_nested_test.rb
372
+ - test/test/unit/helpers/singleton_urls_test.rb
373
+ - test/test/unit/helpers/urls_test.rb
374
+ - test/test/unit/helpers_test.rb
375
+ - test/test/unit/image_test.rb
376
+ - test/test/unit/option_test.rb
377
+ - test/test/unit/photo_test.rb
378
+ - test/test/unit/post_test.rb
379
+ - test/test/unit/project_test.rb
380
+ - test/test/unit/response_collector_test.rb
381
+ - test/test/unit/something_test.rb
382
+ - test/test/unit/tag_test.rb
383
+ - test/test/unit/urligence_test.rb