diff --git a/example/test/multi_tenant_company_test.exs b/example/test/multi_tenant_company_test.exs index b55ccf95..beb9b570 100644 --- a/example/test/multi_tenant_company_test.exs +++ b/example/test/multi_tenant_company_test.exs @@ -22,6 +22,9 @@ defmodule MultiTenantCompanyTest do from(version in PaperTrail.Version, select: count(version.id)) |> MultiTenantHelper.add_prefix_to_query() |> Repo.all() + regular_version_count = + from(version in PaperTrail.Version, select: count(version.id)) + |> Repo.all() first_company = first(Company, :id) |> preload(:people) @@ -33,6 +36,7 @@ defmodule MultiTenantCompanyTest do assert company_count == [1] assert version_count == [1] + assert regular_version_count == [0] assert company == %{ name: "Acme LLC", @@ -82,12 +86,16 @@ defmodule MultiTenantCompanyTest do from(version in PaperTrail.Version, select: count(version.id)) |> MultiTenantHelper.add_prefix_to_query() |> Repo.all() + regular_version_count = + from(version in PaperTrail.Version, select: count(version.id)) + |> Repo.all() company = result[:model] |> Map.drop([:__meta__, :__struct__, :inserted_at, :updated_at, :id]) version = result[:version] |> Map.drop([:__meta__, :__struct__, :inserted_at]) assert company_count == [1] assert version_count == [2] + assert regular_version_count == [0] assert company == %{ name: "Acme LLC", @@ -131,12 +139,16 @@ defmodule MultiTenantCompanyTest do from(version in PaperTrail.Version, select: count(version.id)) |> MultiTenantHelper.add_prefix_to_query() |> Repo.all() + regular_version_count = + from(version in PaperTrail.Version, select: count(version.id)) + |> Repo.all() company_ref = result[:model] |> Map.drop([:__meta__, :__struct__, :inserted_at, :updated_at, :id]) version = result[:version] |> Map.drop([:__meta__, :__struct__, :inserted_at]) assert company_count == [0] assert version_count == [3] + assert regular_version_count == [0] assert company_ref == %{ name: "Acme LLC", diff --git a/example/test/multi_tenant_person_test.exs b/example/test/multi_tenant_person_test.exs index 04a23280..c6fab082 100644 --- a/example/test/multi_tenant_person_test.exs +++ b/example/test/multi_tenant_person_test.exs @@ -39,6 +39,9 @@ defmodule MultiTenantPersonTest do from(version in PaperTrail.Version, select: count(version.id)) |> MultiTenantHelper.add_prefix_to_query() |> Repo.all() + regular_version_count = + from(version in PaperTrail.Version, select: count(version.id)) + |> Repo.all() person = result[:model] |> Map.drop([:__meta__, :__struct__, :inserted_at, :updated_at, :id]) version = result[:version] |> Map.drop([:__meta__, :__struct__, :inserted_at]) @@ -51,6 +54,7 @@ defmodule MultiTenantPersonTest do assert person_count == [1] assert version_count == [1] + assert regular_version_count == [0] assert Map.drop(person, [:company]) == %{ first_name: "Izel", @@ -104,12 +108,16 @@ defmodule MultiTenantPersonTest do from(version in PaperTrail.Version, select: count(version.id)) |> MultiTenantHelper.add_prefix_to_query() |> Repo.all() + regular_version_count = + from(version in PaperTrail.Version, select: count(version.id)) + |> Repo.all() person = result[:model] |> Map.drop([:__meta__, :__struct__, :inserted_at, :updated_at, :id]) version = result[:version] |> Map.drop([:__meta__, :__struct__, :inserted_at]) assert person_count == [1] assert version_count == [2] + assert regular_version_count == [0] assert Map.drop(person, [:company]) == %{ company_id: target_company.id, @@ -157,11 +165,15 @@ defmodule MultiTenantPersonTest do from(version in PaperTrail.Version, select: count(version.id)) |> MultiTenantHelper.add_prefix_to_query() |> Repo.all() + regular_version_count = + from(version in PaperTrail.Version, select: count(version.id)) + |> Repo.all() version = result[:version] |> Map.drop([:__meta__, :__struct__, :inserted_at]) assert person_count == [0] assert version_count == [3] + assert regular_version_count == [0] assert Map.drop(version, [:id]) == %{ event: "delete", diff --git a/test/paper_trail/bang_functions_simple_mode_test.exs b/test/paper_trail/bang_functions_simple_mode_test.exs index 00831204..39a1ee79 100644 --- a/test/paper_trail/bang_functions_simple_mode_test.exs +++ b/test/paper_trail/bang_functions_simple_mode_test.exs @@ -384,6 +384,8 @@ defmodule PaperTrailTest.SimpleModeBangFunctions do version = PaperTrail.get_version(company, prefix: tenant) |> serialize + assert Company.count() == 0 + assert Version.count() == 0 assert company_count == 1 assert version_count == 1 assert company |> serialize |> Map.drop([:id, :inserted_at, :updated_at]) == %{ @@ -429,6 +431,8 @@ defmodule PaperTrailTest.SimpleModeBangFunctions do version = PaperTrail.get_version(updated_company, prefix: tenant) |> serialize + assert Company.count() == 0 + assert Version.count() == 0 assert company_count == 1 assert version_count == 2 assert Map.drop(company, [:id, :inserted_at, :updated_at]) == %{ @@ -471,6 +475,8 @@ defmodule PaperTrailTest.SimpleModeBangFunctions do version = PaperTrail.get_version(updated_company, prefix: tenant) |> serialize + assert Company.count() == 0 + assert Version.count() == 0 assert company_count == 1 assert version_count == 2 assert Map.drop(company, [:id, :inserted_at, :updated_at]) == %{ @@ -522,6 +528,8 @@ defmodule PaperTrailTest.SimpleModeBangFunctions do company = deleted_company |> serialize version = PaperTrail.get_version(deleted_company, prefix: tenant) |> serialize + assert Company.count() == 0 + assert Version.count() == 0 assert company_count == 0 assert version_count == 3 assert Map.drop(company, [:id, :inserted_at, :updated_at]) == %{ @@ -600,6 +608,9 @@ defmodule PaperTrailTest.SimpleModeBangFunctions do |> MultiTenant.add_prefix_to_changeset() |> PaperTrail.insert!(origin: "admin", meta: %{linkname: "izelnakri"}, prefix: tenant) + assert Person.count() == 0 + assert Company.count() == 0 + assert Version.count() == 0 person_count = Person.count(:multitenant) company_count = Company.count(:multitenant) version_count = Version.count(prefix: tenant) @@ -664,6 +675,9 @@ defmodule PaperTrailTest.SimpleModeBangFunctions do person = updated_person |> serialize version = PaperTrail.get_version(updated_person, prefix: tenant) |> serialize + assert Person.count() == 0 + assert Company.count() == 0 + assert Version.count() == 0 assert person_count == 1 assert company_count == 2 assert version_count == 4 @@ -729,6 +743,9 @@ defmodule PaperTrailTest.SimpleModeBangFunctions do old_person = updated_person |> serialize version = PaperTrail.get_version(deleted_person, prefix: tenant) |> serialize + assert Person.count() == 0 + assert Company.count() == 0 + assert Version.count() == 0 assert person_count == 0 assert company_count == 2 assert version_count == 5 diff --git a/test/paper_trail/bang_functions_strict_mode_test.exs b/test/paper_trail/bang_functions_strict_mode_test.exs index e9fb16c2..a430cdf0 100644 --- a/test/paper_trail/bang_functions_strict_mode_test.exs +++ b/test/paper_trail/bang_functions_strict_mode_test.exs @@ -399,6 +399,8 @@ defmodule PaperTrailTest.StrictModeBangFunctions do version = PaperTrail.get_version(inserted_company, prefix: tenant) |> serialize() + assert Company.count() == 0 + assert Version.count() == 0 assert company_count == 1 assert version_count == 1 assert Map.drop(company, [:id, :inserted_at, :updated_at]) == %{ @@ -436,6 +438,8 @@ defmodule PaperTrailTest.StrictModeBangFunctions do version = PaperTrail.get_version(inserted_company, prefix: tenant) |> serialize + assert Company.count() == 0 + assert Version.count() == 0 assert company_count == 1 assert version_count == 1 assert Map.drop(company, [:id, :inserted_at, :updated_at]) == %{ @@ -485,6 +489,8 @@ defmodule PaperTrailTest.StrictModeBangFunctions do updated_company_version = PaperTrail.get_version(updated_company, prefix: tenant) |> serialize + assert Company.count() == 0 + assert Version.count() == 0 assert company_count == 1 assert version_count == 2 assert Map.drop(company, [:id, :inserted_at, :updated_at]) == %{ @@ -543,6 +549,8 @@ defmodule PaperTrailTest.StrictModeBangFunctions do deleted_company_version = PaperTrail.get_version(deleted_company, prefix: tenant) |> serialize + assert Company.count() == 0 + assert Version.count() == 0 assert company_count == 0 assert version_count == 3 assert Map.drop(old_company, [:id, :inserted_at, :updated_at]) == %{ @@ -628,6 +636,8 @@ defmodule PaperTrailTest.StrictModeBangFunctions do person = inserted_person |> serialize version = PaperTrail.get_version(inserted_person, prefix: tenant) |> serialize + assert Person.count() == 0 + assert Version.count() == 0 assert person_count == 1 assert version_count == 3 assert Map.drop(person, [:id, :inserted_at, :updated_at]) == %{ @@ -689,6 +699,8 @@ defmodule PaperTrailTest.StrictModeBangFunctions do updated_person_version = PaperTrail.get_version(updated_person, prefix: tenant) |> serialize + assert Person.count() == 0 + assert Version.count() == 0 assert person_count == 1 assert company_count == 2 assert version_count == 4 @@ -759,6 +771,9 @@ defmodule PaperTrailTest.StrictModeBangFunctions do company_count = Company.count(:multitenant) version_count = Version.count(prefix: tenant) + assert Company.count() == 0 + assert Person.count() == 0 + assert Version.count() == 0 assert person_count == 0 assert company_count == 2 assert version_count == 5 diff --git a/test/paper_trail/paper_trail_version_test.exs b/test/paper_trail/paper_trail_version_test.exs index 0fa1a97e..2f4a2fc7 100644 --- a/test/paper_trail/paper_trail_version_test.exs +++ b/test/paper_trail/paper_trail_version_test.exs @@ -75,11 +75,13 @@ defmodule PaperTrailTest.Version do test "[multi tenant] count works" do versions = add_three_versions(MultiTenant.tenant()) Version.count(prefix: MultiTenant.tenant()) == length(versions) + Version.count() != length(versions) end test "[multi tenant] first works" do add_three_versions(MultiTenant.tenant()) Version.first(prefix: MultiTenant.tenant()) |> serialize == @valid_attrs + Version.first() |> serialize != @valid_attrs end test "[multi tenant] last works" do @@ -92,6 +94,7 @@ defmodule PaperTrailTest.Version do origin: "test", inserted_at: DateTime.from_naive!(~N[1965-04-14 01:00:00.000], "Etc/UTC") } + Version.last() == nil end def add_three_versions(prefix \\ nil) do diff --git a/test/paper_trail/version_queries_test.exs b/test/paper_trail/version_queries_test.exs index ecc35660..37b52ed9 100644 --- a/test/paper_trail/version_queries_test.exs +++ b/test/paper_trail/version_queries_test.exs @@ -99,6 +99,7 @@ defmodule PaperTrailTest.VersionQueries do assert PaperTrail.get_version(Person, last_person.id) == target_version assert PaperTrail.get_version(last_person_multi, prefix: tenant) == target_version_multi assert PaperTrail.get_version(Person, last_person_multi.id, prefix: tenant) == target_version_multi + assert target_version != target_version_multi end test "get_versions gives us the right versions" do @@ -120,6 +121,7 @@ defmodule PaperTrailTest.VersionQueries do assert PaperTrail.get_versions(Person, last_person.id) == target_versions assert PaperTrail.get_versions(last_person_multi, prefix: tenant) == target_versions_multi assert PaperTrail.get_versions(Person, last_person_multi.id, prefix: tenant) == target_versions_multi + assert target_versions != target_versions_multi end test "get_current_model/1 gives us the current record of a version" do