diff --git a/.autotest b/.autotest new file mode 100644 index 00000000..5c71b3c5 --- /dev/null +++ b/.autotest @@ -0,0 +1,8 @@ +Autotest.add_hook :initialize do |at| + at.add_mapping(%r{^test/rails_root/\w.*}) do + at.files_matching(%r{^test/*/\w.*_test\.rb}) + end + + at.add_exception(%r{.svn}) + at.add_exception(%r{.log$}) +end diff --git a/lib/shoulda/controller_tests/controller_tests.rb b/lib/shoulda/controller_tests/controller_tests.rb index dc1a60a9..41ae92b2 100644 --- a/lib/shoulda/controller_tests/controller_tests.rb +++ b/lib/shoulda/controller_tests/controller_tests.rb @@ -244,7 +244,7 @@ module ThoughtBot # :nodoc: @parent ||= [] @parent = [@parent] unless @parent.is_a? Array - collection_helper = [@parent, @object.pluralize, 'url'].flatten.join('_') + collection_helper = [@parent, @object.to_s.pluralize, 'url'].flatten.join('_') collection_args = @parent.map {|n| "@#{object}.#{n}"}.join(', ') @destroy.redirect ||= "#{collection_helper}(#{collection_args})" diff --git a/test/rails_root/app/controllers/posts_controller.rb b/test/rails_root/app/controllers/posts_controller.rb index 87b9df10..3a7d5783 100644 --- a/test/rails_root/app/controllers/posts_controller.rb +++ b/test/rails_root/app/controllers/posts_controller.rb @@ -34,8 +34,8 @@ class PostsController < ApplicationController respond_to do |format| if @post.save flash[:notice] = 'Post was successfully created.' - format.html { redirect_to post_url(@post.user, @post) } - format.xml { head :created, :location => post_url(@post.user, @post) } + format.html { redirect_to user_post_url(@post.user, @post) } + format.xml { head :created, :location => user_post_url(@post.user, @post) } else format.html { render :action => "new" } format.xml { render :xml => @post.errors.to_xml } @@ -49,7 +49,7 @@ class PostsController < ApplicationController respond_to do |format| if @post.update_attributes(params[:post]) flash[:notice] = 'Post was successfully updated.' - format.html { redirect_to post_url(@post.user, @post) } + format.html { redirect_to user_post_url(@post.user, @post) } format.xml { head :ok } else format.html { render :action => "edit" } @@ -65,7 +65,7 @@ class PostsController < ApplicationController flash[:notice] = "Post was removed" respond_to do |format| - format.html { redirect_to posts_url(@post.user) } + format.html { redirect_to user_posts_url(@post.user) } format.xml { head :ok } end end diff --git a/test/rails_root/app/views/posts/edit.rhtml b/test/rails_root/app/views/posts/edit.rhtml index b45ba5c5..65bd4fe0 100644 --- a/test/rails_root/app/views/posts/edit.rhtml +++ b/test/rails_root/app/views/posts/edit.rhtml @@ -2,7 +2,7 @@ <%= error_messages_for :post %> -<% form_for(:post, :url => post_path(@post.user, @post), :html => { :method => :put }) do |f| %> +<% form_for(:post, :url => user_post_path(@post.user, @post), :html => { :method => :put }) do |f| %>

User
<%= f.text_field :user_id %> @@ -23,5 +23,5 @@

<% end %> -<%= link_to 'Show', post_path(@post.user, @post) %> | -<%= link_to 'Back', posts_path(@post.user) %> \ No newline at end of file +<%= link_to 'Show', user_post_path(@post.user, @post) %> | +<%= link_to 'Back', user_posts_path(@post.user) %> diff --git a/test/rails_root/app/views/posts/index.rhtml b/test/rails_root/app/views/posts/index.rhtml index d4c1713f..f6bb3bd1 100644 --- a/test/rails_root/app/views/posts/index.rhtml +++ b/test/rails_root/app/views/posts/index.rhtml @@ -12,13 +12,14 @@ <%=h post.user_id %> <%=h post.title %> <%=h post.body %> - <%= link_to 'Show', post_path(post.user, post) %> - <%= link_to 'Edit', edit_post_path(post.user, post) %> - <%= link_to 'Destroy', post_path(post.user, post), :confirm => 'Are you sure?', :method => :delete %> + <%= link_to 'Show', user_post_path(post.user, post) %> + <%= link_to 'Edit', edit_user_post_path(post.user, post) %> + <%= link_to 'Destroy', user_post_path(post.user, post), :confirm => 'Are you sure?', + :method => :delete %> <% end %>
-<%= link_to 'New post', new_post_path(post.user) %> \ No newline at end of file +<%= link_to 'New post', new_user_post_path(post.user) %> diff --git a/test/rails_root/app/views/posts/new.rhtml b/test/rails_root/app/views/posts/new.rhtml index bae6a34a..216f1e0d 100644 --- a/test/rails_root/app/views/posts/new.rhtml +++ b/test/rails_root/app/views/posts/new.rhtml @@ -2,7 +2,7 @@ <%= error_messages_for :post %> -<% form_for(:post, :url => posts_path(@user)) do |f| %> +<% form_for(:post, :url => user_posts_path(@user)) do |f| %>

User
<%= f.text_field :user_id %> @@ -23,4 +23,4 @@

<% end %> -<%= link_to 'Back', posts_path(@user) %> \ No newline at end of file +<%= link_to 'Back', user_posts_path(@user) %> diff --git a/test/rails_root/app/views/posts/show.rhtml b/test/rails_root/app/views/posts/show.rhtml index 393bb74f..b9d37914 100644 --- a/test/rails_root/app/views/posts/show.rhtml +++ b/test/rails_root/app/views/posts/show.rhtml @@ -14,5 +14,5 @@

-<%= link_to 'Edit', edit_post_path(@post.user, @post) %> | -<%= link_to 'Back', posts_path(@post.user) %> \ No newline at end of file +<%= link_to 'Edit', edit_user_post_path(@post.user, @post) %> | +<%= link_to 'Back', user_posts_path(@post.user) %> diff --git a/test/rails_root/config/environment.rb b/test/rails_root/config/environment.rb index 4ee70015..0e737ec2 100644 --- a/test/rails_root/config/environment.rb +++ b/test/rails_root/config/environment.rb @@ -1,6 +1,6 @@ # Specifies gem version of Rails to use when vendor/rails is not present old_verbose, $VERBOSE = $VERBOSE, nil -RAILS_GEM_VERSION = '1.2.3' +RAILS_GEM_VERSION = '2.0.2' $VERBOSE = old_verbose require File.join(File.dirname(__FILE__), 'boot') @@ -12,8 +12,7 @@ Rails::Initializer.run do |config| config.log_level = :debug config.cache_classes = false config.whiny_nils = true - config.breakpoint_server = true - config.load_paths << File.join(File.dirname(__FILE__), *%w{.. .. .. lib}) + # config.load_paths << File.join(File.dirname(__FILE__), *%w{.. .. .. lib}) end -Dependencies.log_activity = true \ No newline at end of file +# Dependencies.log_activity = true \ No newline at end of file diff --git a/test/rails_root/config/routes.rb b/test/rails_root/config/routes.rb index d67e2c6d..ae2bddd5 100644 --- a/test/rails_root/config/routes.rb +++ b/test/rails_root/config/routes.rb @@ -1,5 +1,6 @@ ActionController::Routing::Routes.draw do |map| - map.resources :users do |user| - user.resources :posts - end + + map.resources :posts + map.resources :users, :has_many => :posts + end