@@ -9,46 +9,33 @@ defmodule PersonTest do
99 Repo . delete_all ( Company )
1010 Repo . delete_all ( PaperTrail.Version )
1111
12- Company . changeset ( % Company { } , % {
13- name: "Acme LLC" ,
14- website: "http://www.acme.com"
15- } ) |> Repo . insert
12+ % { name: "Acme LLC" , website: "http://www.acme.com" }
13+ |> ChangesetHelper . new_company ( )
14+ |> Repo . insert ( )
1615
17- Company . changeset ( % Company { } , % {
18- name: "Another Company Corp." ,
19- is_active: true ,
20- address: "Sesame street 100/3, 101010"
21- } ) |> Repo . insert
16+ % { name: "Another Company Corp." , is_active: true , address: "Sesame street 100/3, 101010" }
17+ |> ChangesetHelper . new_company ( )
18+ |> Repo . insert ( )
2219
2320 :ok
2421 end
2522
26- test "creating a person with meta tag creates a person version with correct attributes" do
27- company = first ( Company , :id ) |> Repo . one
23+ test "[multi tenant] creating a person with meta tag creates a person version with correct attributes" do
24+ company = QueryHelper . first_company ( ) |> Repo . one ( )
2825
29- new_person = Person . changeset ( % Person { } , % {
30- first_name: "Izel" ,
31- last_name: "Nakri" ,
32- gender: true ,
33- company_id: company . id
34- } )
35-
36- { :ok , result } = PaperTrail . insert ( new_person , origin: "admin" , meta: % { } ) # add link name later on
26+ { :ok , result } =
27+ % { first_name: "Izel" , last_name: "Nakri" , gender: true , company_id: company . id }
28+ |> ChangesetHelper . new_person ( )
29+ |> PaperTrail . insert ( origin: "admin" , meta: % { } )
3730
38- person_count = Repo . all (
39- from person in Person ,
40- select: count ( person . id )
41- )
31+ person_count = QueryHelper . person_count ( ) |> Repo . all ( )
32+ version_count = QueryHelper . version_count ( ) |> Repo . all ( )
4233
4334 person = result [ :model ] |> Map . drop ( [ :__meta__ , :__struct__ , :inserted_at , :updated_at , :id ] )
44-
45- version_count = Repo . all (
46- from version in PaperTrail.Version ,
47- select: count ( version . id )
48- )
49-
5035 version = result [ :version ] |> Map . drop ( [ :__meta__ , :__struct__ , :inserted_at ] )
5136
37+ first_person = QueryHelper . first_person ( ) |> Repo . one ( )
38+
5239 assert person_count == [ 1 ]
5340 assert version_count == [ 1 ]
5441
@@ -64,46 +51,35 @@ defmodule PersonTest do
6451 assert Map . drop ( version , [ :id ] ) == % {
6552 event: "insert" ,
6653 item_type: "Person" ,
67- item_id: Repo . one ( first ( Person , :id ) ) . id ,
54+ item_id: first_person . id ,
6855 item_changes: Map . drop ( result [ :model ] , [ :__meta__ , :__struct__ , :company ] ) ,
6956 origin: "admin" ,
7057 originator_id: nil ,
7158 meta: % { }
7259 }
7360 end
7461
75- test "updating a person creates a person version with correct attributes" do
76- old_person = first ( Person , :id ) |> Repo . one
62+ test "[multi tenant] updating a person creates a person version with correct attributes" do
63+ first_person = QueryHelper . first_person ( ) |> Repo . one ( )
7764
78- target_company = Repo . one (
79- from c in Company ,
80- where: c . name == "Another Company Corp." ,
81- limit: 1
82- )
65+ target_company =
66+ [ name: "Another Company Corp." , limit: 1 ]
67+ |> QueryHelper . filter_company ( )
68+ |> Repo . one ( )
8369
84- new_person = Person . changeset ( old_person , % {
85- first_name: "Isaac" ,
86- visit_count: 10 ,
87- birthdate: ~D[ 1992-04-01] ,
88- company_id: target_company . id
89- } )
90-
91- { :ok , result } = PaperTrail . update ( new_person , origin: "user:1" , meta: % {
92- linkname: "izelnakri"
93- } )
70+ { :ok , result } =
71+ ChangesetHelper . update_person ( first_person , % {
72+ first_name: "Isaac" ,
73+ visit_count: 10 ,
74+ birthdate: ~D[ 1992-04-01] ,
75+ company_id: target_company . id
76+ } )
77+ |> PaperTrail . update ( origin: "user:1" , meta: % { linkname: "izelnakri" } )
9478
95- person_count = Repo . all (
96- from person in Person ,
97- select: count ( person . id )
98- )
79+ person_count = QueryHelper . person_count ( ) |> Repo . all ( )
80+ version_count = QueryHelper . version_count ( ) |> Repo . all ( )
9981
10082 person = result [ :model ] |> Map . drop ( [ :__meta__ , :__struct__ , :inserted_at , :updated_at , :id ] )
101-
102- version_count = Repo . all (
103- from version in PaperTrail.Version ,
104- select: count ( version . id )
105- )
106-
10783 version = result [ :version ] |> Map . drop ( [ :__meta__ , :__struct__ , :inserted_at ] )
10884
10985 assert person_count == [ 1 ]
@@ -121,7 +97,7 @@ defmodule PersonTest do
12197 assert Map . drop ( version , [ :id ] ) == % {
12298 event: "update" ,
12399 item_type: "Person" ,
124- item_id: Repo . one ( first ( Person , :id ) ) . id ,
100+ item_id: first_person . id ,
125101 item_changes: % {
126102 first_name: "Isaac" ,
127103 visit_count: 10 ,
@@ -136,20 +112,15 @@ defmodule PersonTest do
136112 }
137113 end
138114
139- test "deleting a person creates a person version with correct attributes" do
140- person = first ( Person , :id ) |> preload ( :company ) |> Repo . one
141-
142- { :ok , result } = PaperTrail . delete ( person )
115+ test "[multi tenant] deleting a person creates a person version with correct attributes" do
116+ person = QueryHelper . first_person ( ) |> Repo . one ( )
143117
144- person_count = Repo . all (
145- from person in Person ,
146- select: count ( person . id )
147- )
118+ { :ok , result } =
119+ person
120+ |> PaperTrail . delete ( )
148121
149- version_count = Repo . all (
150- from version in PaperTrail.Version ,
151- select: count ( version . id )
152- )
122+ person_count = QueryHelper . person_count ( ) |> Repo . all ( )
123+ version_count = QueryHelper . version_count ( ) |> Repo . all ( )
153124
154125 version = result [ :version ] |> Map . drop ( [ :__meta__ , :__struct__ , :inserted_at ] )
155126
0 commit comments