2023-10-13 10:04AM
test/fixtures/regions.yml 文件:
one:
2 name: "乌鲁木齐市"
test/fixtures/enterprises.yml 文件:
one:
name: "新疆食品新联市场"
region: "乌鲁木齐市"
enterprise_category: "重点商超"
goods_category: "冻猪肉"
person_in_charge: "李华"
person_in_charge_tel: "1351358466"
email: "lihua@example.com"
status: "待处理"
manager_id: 99
monitor_status: true
test/fixtures/material_reserves.yml 文件:
one:
region: '乌鲁木齐市'
enterprise_id: 187
enterprise_category: '重点商超'
goods_type: '大米'
storage_apacity: '200吨'
person_in_charge: '李华'
tel: '1330008888'
warehouse_location: '西村冷库'
city: '乌鲁木齐'
max_store: '2000吨'
longitude: '87.617733'
latitude: '43.792818'
sorting_and_distribution: true
warehouse_location_two: '东村冷库'
latitude_two: '43.792817'
longitude_two: '87.617732'
sorting_and_distribution_type: 'WLMQ0001'
测试文件:test/controllers/warns_controller_test.rb
require "test_helper"
class WarnsControllerTest < ActionDispatch::IntegrationTest
include Devise::Test::IntegrationHelpers
setup do
@manager = managers(:manager3)
sign_in @manager
@warn = warns(:one)
end
test "should get index" do
get warns_url
assert_response :success
end
test "should get index with paramater" do
get warns_url, params: {goods_category: "面粉"}
assert_equal 1, assigns(:warns).size
assert_response :success
end
test "should get new" do
get new_warn_url
assert_response :success
end
test "should create warns" do
assert_difference("Warn.count", 1) do
post warns_url, params: { warn: { region_id: regions(:one).id, enterprise_id: enterprises(:one).id, material_reserf_id: material_reserves(:one).id, enterprise_category: '重点商超', goods_categor
y: '牛肉', material_reserf_number: '0005', unit: '1500吨', max_warn: '2500吨', min_warn: '501吨', warn_result: '不足' } }
end
assert_equal "501吨", Warn.last.min_warn
assert_redirected_to warn_url(Warn.last)
end
test "should show warns" do
get warns_url(@warn)
assert_response :success
end
test "should get edit" do
get edit_warn_url(@warn)
assert_response :success
end
test "should update warns" do
patch warn_url(@warn), params: { warn: { region_id: regions(:one).id, enterprise_id: enterprises(:one).id, material_reserf_id: material_reserves(:one).id, enterprise_category: '生产批发市场', good s_category: '羊肉', material_reserf_number: '0006', unit: '1500吨', max_warn: '2500吨', min_warn: '500吨', warn_result: '充足' } }
assert_equal "生产批发市场", assigns(:warn).enterprise_category
end
test "should destroy warns" do
assert_difference("Warn.count", -1) do
delete warn_url(@warn)
end
assert_redirected_to warns_url
end
end
运行测试文件:
$ bundle exec rails test test/controllers/warns_controller_test.rb
Run options: --seed 34106
# Running:
........
Finished in 0.913969s, 8.7530 runs/s, 13.1295 assertions/s.
8 runs, 12 assertions, 0 failures, 0 errors, 0 skips
登录
请登录后再发表评论。
评论列表:
目前还没有人发表评论