user_stories_test.rb

来自「ruby on rails web敏捷开发之路第二版 源代码」· RB 代码 · 共 72 行

RB
72
字号
#---# 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"class UserStoriesTest < ActionController::IntegrationTest  fixtures :products  # A user goes to the store index page. They select a product, adding  # it to their cart. They then check out, filling in their details on  # the checkout form. When they submit, an order is created in the  # database containing their information, along with a single line  # item corresponding to the product they added to their cart.    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"                post_via_redirect "/store/save_order",                      :order => { :name     => "Dave Thomas",                                 :address  => "123 The Street",                                 :email    => "dave@pragprog.com",                                 :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 "Dave Thomas",       order.name    assert_equal "123 The Street",    order.address    assert_equal "dave@pragprog.com", 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      endend

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?