kod
[code]require “#{File.dirname(FILE)}/…/test_helper”
class UserStoriesTest < ActionController::IntegrationTest
fixtures :products
def test_truth
assert true
end
def test_buying_a_product
LineItem.delete_all
Order.delete_all
ruby_book = products(:ruby_book)
get "/store/index"
assert_response :success
assert_template "index"
xml_http_request "/store/add_to_cart", :id => ruby_book.id
assert_response :success
cart = session[:cart]
assert_equal 1, cart.items.size
assert_equal ruby_book, cart.items[0].product
post "/store/checkout"
assert_response :success
assert_template "checkout"
do tego mijesca wszystko OK
post_via_redirect "/store/save_order",
:order => {:name => "adam",
:address => "ul.szeroka 12",
:email => "jasiu@wp.pl",
:pay_type => "check"}
assert_response :success
assert_template "index"
assert_equal 0, session[:cart].items.size
orders = Order.find(:all)
assert_equal 1, orders.size
order = orders[0]
assert_equal "adam", order.name
assert_equal "ul.szeroka 12", order.address
assert_equal "jasiu@wp.pl", order.email
assert_equal "check", order.pay_type
assert_equal 1, order.line_items.size
line_item = order.line_items[0]
assert_equal ruby_book, line_item.product
end
end[/code]
Metoda save_order:
def save_order
@cart = find_cart
@order = Order.new(params[:order])
@order.add_line_items_from_cart(@cart)
if @order.save
session[:cart] = nil
redirect_to_index("Dziękujemy za złożenie zamówienia")
else
render :action => :checkout
end
end
Komunikat błedu :
Expected response to be <:success>, but was <500>
Ktoś wie w czym problem? Z góry dzięki za każde info.