【发布时间】:2018-10-26 18:03:08
【问题描述】:
我有一个需要预先插入数据的测试。
所以我尝试使用setup_all 回调设置这些数据,因为这些数据可以设置一次。
因为我不想给上下文分配任何东西,所以我定义了setup_all,如下所示
setup_all do
create_languages()
create_regions()
create_currencies()
create_user()
:ok
end
每个测试都有一个函数,从创建的数据中获取一个结构体。
例如,其中一项测试如下:
test "update_core/2 (region_id) with valid data, updates core" do
region = get_region()
core = create_core()
{:ok, core} = Cores.update_core(core, %{region_id: region.id})
assert region.id == core.region_id
end
但是,region = get_region() 会触发空错误。为什么这个函数可以得到struct? IO.inspect 显示 create_regions() 实际上创建了多个区域。我在这里遗漏了什么吗?
提前谢谢你。
【问题讨论】: