1
1
<?php
2
2
require_once ('vendor/autoload.php ' );
3
3
require_once ('models/User.php ' );
4
+ require_once ('models/Soft.php ' );
4
5
5
6
use Jenssegers \Mongodb \Connection ;
6
7
use Jenssegers \Mongodb \Model ;
@@ -17,11 +18,12 @@ public function setUp()
17
18
public function tearDown ()
18
19
{
19
20
User::truncate ();
21
+ Soft::truncate ();
20
22
}
21
23
22
24
public function testNewModel ()
23
25
{
24
- $ user = new User () ;
26
+ $ user = new User ;
25
27
$ this ->assertInstanceOf ('Jenssegers\Mongodb\Model ' , $ user );
26
28
$ this ->assertEquals (false , $ user ->exists );
27
29
$ this ->assertEquals ('users ' , $ user ->getTable ());
@@ -31,7 +33,7 @@ public function testNewModel()
31
33
32
34
public function testInsert ()
33
35
{
34
- $ user = new User () ;
36
+ $ user = new User ;
35
37
$ user ->name = "John Doe " ;
36
38
$ user ->title = "admin " ;
37
39
$ user ->age = 35 ;
@@ -43,14 +45,15 @@ public function testInsert()
43
45
$ this ->assertInstanceOf ('MongoId ' , $ user ->_id );
44
46
$ this ->assertNotEquals ('' , (string ) $ user ->_id );
45
47
$ this ->assertNotEquals (0 , strlen ((string ) $ user ->_id ));
48
+ $ this ->assertInstanceOf ('DateTime ' , $ user ->created_at );
46
49
47
50
$ this ->assertEquals ("John Doe " , $ user ->name );
48
51
$ this ->assertEquals (35 , $ user ->age );
49
52
}
50
53
51
54
public function testUpdate ()
52
55
{
53
- $ user = new User () ;
56
+ $ user = new User ;
54
57
$ user ->name = "John Doe " ;
55
58
$ user ->title = "admin " ;
56
59
$ user ->age = 35 ;
@@ -62,6 +65,8 @@ public function testUpdate()
62
65
$ check ->save ();
63
66
64
67
$ this ->assertEquals (true , $ check ->exists );
68
+ $ this ->assertInstanceOf ('DateTime ' , $ user ->created_at );
69
+ $ this ->assertInstanceOf ('DateTime ' , $ check ->updated_at );
65
70
$ this ->assertEquals (1 , User::count ());
66
71
67
72
$ this ->assertEquals ("John Doe " , $ check ->name );
@@ -70,7 +75,7 @@ public function testUpdate()
70
75
71
76
public function testDelete ()
72
77
{
73
- $ user = new User () ;
78
+ $ user = new User ;
74
79
$ user ->name = "John Doe " ;
75
80
$ user ->title = "admin " ;
76
81
$ user ->age = 35 ;
@@ -86,13 +91,13 @@ public function testDelete()
86
91
87
92
public function testAll ()
88
93
{
89
- $ user = new User () ;
94
+ $ user = new User ;
90
95
$ user ->name = "John Doe " ;
91
96
$ user ->title = "admin " ;
92
97
$ user ->age = 35 ;
93
98
$ user ->save ();
94
99
95
- $ user = new User () ;
100
+ $ user = new User ;
96
101
$ user ->name = "Jane Doe " ;
97
102
$ user ->title = "user " ;
98
103
$ user ->age = 32 ;
@@ -107,7 +112,7 @@ public function testAll()
107
112
108
113
public function testFind ()
109
114
{
110
- $ user = new User () ;
115
+ $ user = new User ;
111
116
$ user ->name = "John Doe " ;
112
117
$ user ->title = "admin " ;
113
118
$ user ->age = 35 ;
@@ -117,6 +122,7 @@ public function testFind()
117
122
118
123
$ this ->assertInstanceOf ('Jenssegers\Mongodb\Model ' , $ check );
119
124
$ this ->assertEquals (true , $ check ->exists );
125
+ $ this ->assertEquals ($ user ->_id , $ check ->_id );
120
126
121
127
$ this ->assertEquals ("John Doe " , $ check ->name );
122
128
$ this ->assertEquals (35 , $ check ->age );
@@ -142,7 +148,7 @@ public function testCreate()
142
148
143
149
public function testDestroy ()
144
150
{
145
- $ user = new User () ;
151
+ $ user = new User ;
146
152
$ user ->name = "John Doe " ;
147
153
$ user ->title = "admin " ;
148
154
$ user ->age = 35 ;
@@ -155,7 +161,7 @@ public function testDestroy()
155
161
156
162
public function testTouch ()
157
163
{
158
- $ user = new User () ;
164
+ $ user = new User ;
159
165
$ user ->name = "John Doe " ;
160
166
$ user ->title = "admin " ;
161
167
$ user ->age = 35 ;
@@ -164,11 +170,30 @@ public function testTouch()
164
170
$ old = $ user ->updated_at ;
165
171
166
172
sleep (1 );
167
-
168
173
$ user ->touch ();
169
174
$ check = User::find ($ user ->_id );
170
175
171
176
$ this ->assertNotEquals ($ old , $ check ->updated_at );
172
177
}
173
178
179
+ public function testSoftDelete ()
180
+ {
181
+ $ user = new Soft ;
182
+ $ user ->name = "Softy " ;
183
+ $ user ->save ();
184
+ $ this ->assertEquals (true , $ user ->exists );
185
+
186
+ $ user ->delete ();
187
+ $ this ->assertEquals (false , $ user ->exists );
188
+
189
+ $ check = Soft::find ($ user ->_id );
190
+ $ this ->assertEquals (null , $ check );
191
+
192
+ $ all = Soft::get ();
193
+ $ this ->assertEquals (0 , $ all ->count ());
194
+
195
+ $ all = Soft::withTrashed ()->get ();
196
+ $ this ->assertEquals (1 , $ all ->count ());
197
+ }
198
+
174
199
}
0 commit comments