每次我进行 rake 测试时,我都会遇到 12 个错误,所有错误都相同
8) 错误:ProductTest#test_image_url: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
9) 错误:ProductTest#test_product_attributes_must_not_be_empty: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
10) 错误:ProductTest#test_product_is_not_valid_without_a_unique_title: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
11) 错误:ProductTest#test_product_is_not_valid_without_a_unique_title_-_i18n: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
12) 错误:ProductTest#test_product_price_must_be_positive: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
第一行是:
syntax error, unexpected ( arg, expecting keyword_do or '{' or '('
post :create, product_id: products (:ruby).id
这是我的 yaml 文件
one:
title: MyString
description: MyText
image_url: MyString
price: 9.99
two:
title: MyString
description: MyText
image_url: MyString
price: 9.99
ruby:
title: "Programming Ruby 1.9"
description: "Ruby is the fastest growing and most exciting dynamic
language out there. If you need to get working programs
delivered fast, you should add Ruby to your toolbox."
price: 49.50
image_url: "ruby.png"
和适当的测试文件
require 'test_helper'
class LineItemsControllerTest < ActionController::TestCase
setup do
@line_item = line_items(:one)
end
test "should get index" do
get :index
assert_response :success
assert_not_nil assigns(:line_items)
end
test "should get new" do
get :new
assert_response :success
end
test "should create line_item" do
assert_difference('LineItem.count') do
post :create, product_id: products (:ruby).id
end
assert_redirected_to cart_path(assigns(:line_item).cart)
end
test "should show line_item" do
get :show, id: @line_item
assert_response :success
end
test "should get edit" do
get :edit, id: @line_item
assert_response :success
end
test "should update line_item" do
patch :update, id: @line_item, line_item: { cart_id: @line_item.cart_id, product_id: @line_item.product_id }
assert_redirected_to line_item_path(assigns(:line_item))
end
test "should destroy line_item" do
assert_difference('LineItem.count', -1) do
delete :destroy, id: @line_item
end
assert_redirected_to line_items_path
end
end
这些是这个文件的错误
1) 错误: CartsControllerTest#test_should_create_cart: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
2) 错误: CartsControllerTest#test_should_destroy_cart: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
3) 错误: CartsControllerTest#test_should_get_edit: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
4) 错误: CartsControllerTest#test_should_get_index: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
5) 错误: CartsControllerTest#test_should_get_new: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
6) 错误: CartsControllerTest#test_should_show_cart: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
7) 错误: CartsControllerTest#test_should_update_cart: ActiveRecord::Fixture::FormatError: ActiveRecord::Fixture::FormatError
require 'test_helper'
class CartsControllerTest < ActionController::TestCase
setup do
@cart = carts(:one)
end
test "should get index" do
get :index
assert_response :success
assert_not_nil assigns(:carts)
end
test "should get new" do
get :new
assert_response :success
end
test "should create cart" do
assert_difference('Cart.count') do
post :create, cart: { }
end
assert_redirected_to cart_path(assigns(:cart))
end
test "should show cart" do
get :show, id: @cart
assert_response :success
end
test "should get edit" do
get :edit, id: @cart
assert_response :success
end
test "should update cart" do
patch :update, id: @cart, cart: { }
assert_redirected_to cart_path(assigns(:cart))
end
test "should destroy cart" do
assert_difference('Cart.count', -1) do
delete :destroy, id: @cart
end
assert_redirected_to carts_path
end
end