Sha256: b2b8e17d97e446343276442c40b6b9d8cd726692e97eb3e00fa8eb8be3fcdedd

Contents?: true

Size: 1.32 KB

Versions: 1

Compression:

Stored size: 1.32 KB

Contents

#---
# Excerpted from "Agile Web Development with Rails, 2nd Ed."
# We make no guarantees that this code is fit for any purpose.
# Visit http://www.pragmaticprogrammer.com/titles/rails2 for more book information.
#---
require File.dirname(__FILE__) + '/../test_helper'
require 'amrita2/testsupport'
require 'store_controller'

# Re-raise errors caught by the controller.
class StoreController; def rescue_action(e) raise e end; end

class StoreControllerTest < Test::Unit::TestCase
  include Amrita2::RailsTestHelper
  fixtures :products

  def setup
    @controller = StoreController.new
    @request    = ActionController::TestRequest.new
    @response   = ActionController::TestResponse.new
  end

  def test_index
    compare_result do
      get :index
      assert_response(:success)
      @response.body
    end
  end

  def test_post_to_add_to_cart
    get :index
    ruby_id = products(:ruby_book).id
    assert_select "form[action=/store/add_to_cart/#{ruby_id}][method=post]"

    post :add_to_cart, :id=>ruby_id

    compare_result do
      get :index
      assert_response(:success)
      @response.body
    end
  end

  def test_checkout
    ruby_id = products(:ruby_book).id
    get :index
    post :add_to_cart, :id=>ruby_id

    compare_result do
      get :checkout
      assert_response(:success)
      @response.body
    end
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
amrita2-2.0.0 sample/depot/test/functional/store_controller_test.rb