Packages

An Elixir Ecto Package to Boost Your Productivity and Achieve 90% throughput in Just 10% of the Time.

Current section

Files

Jump to
ecto_entity test entity delete_test.exs
Raw

test/entity/delete_test.exs

defmodule Entity.DeleteTests do
use ExUnit.Case
use Factory
alias Person
# CREATING TESTS
# ===============
test "delete/1 deletes 1 record." do
Person.truncate()
seed_people(2)
assert {:ok, _} = Person.delete(1)
assert Person.count() == 1
end
test "delete/1 deletes multiple entries at once." do
Person.truncate()
seed_people(40)
assert {6, nil} = Person.delete([1, 2, 3, 4, 5, 6])
assert Person.count() == 34
end
test "destroy/1 removes a record from database." do
Person.truncate()
seed_people(4)
assert {:ok, %Person{}} = Person.delete(2)
end
test "delete_except/1 deletes entries with exception." do
Person.truncate()
seed_people(4)
assert {3, nil} = Person.delete_except(4)
assert 4 == Person.first().id
end
test "delete_except/1 deletes entries with exception provided." do
Person.truncate()
seed_people(4)
assert {2, nil} = Person.delete_except([2, 3])
assert 2 == Person.count()
end
test "truncate/0 truncates the entire table." do
seed_people(20)
assert {:ok, _} = Person.truncate()
end
end