10
10
11
11
use tests \models \PostA ;
12
12
use tests \models \PostB ;
13
- use Yii ;
14
13
15
14
/**
16
15
* SoftDeleteTest
@@ -25,7 +24,21 @@ public function testSoftDeletePostA()
25
24
{
26
25
/** @var PostA $post */
27
26
$ post = PostA::findOne (2 );
28
- $ post ->delete ();
27
+ // delete() must return `false`, because we can't prevent real deletion and return `true` at the same time
28
+ $ this ->assertFalse ($ post ->delete (), 'Result of `delete()` expected to be `false` ' );
29
+ $ this ->assertNotNull ($ post ->deleted_at );
30
+ $ post = PostA::findOne (2 );
31
+ $ this ->assertNotNull ($ post ->deleted_at );
32
+ }
33
+
34
+ /**
35
+ * Explicit Soft Delete PostA
36
+ */
37
+ public function testExplicitSoftDeletePostA ()
38
+ {
39
+ /** @var PostA $post */
40
+ $ post = PostA::findOne (2 );
41
+ $ this ->assertTrue ($ post ->softDelete (), 'Result of `softDelete()` expected to be `true` ' );
29
42
$ this ->assertNotNull ($ post ->deleted_at );
30
43
$ post = PostA::findOne (2 );
31
44
$ this ->assertNotNull ($ post ->deleted_at );
@@ -38,11 +51,12 @@ public function testUnDeletePostA()
38
51
{
39
52
/** @var PostA $post */
40
53
$ post = PostA::findOne (2 );
41
- $ post ->delete ();
54
+ // delete() must return `false`, because we can't prevent real deletion and return `true` at the same time
55
+ $ this ->assertFalse ($ post ->delete (), 'Result of `delete()` expected to be `false` ' );
42
56
$ this ->assertNotNull ($ post ->deleted_at );
43
57
$ post = PostA::findOne (2 );
44
58
$ this ->assertNotNull ($ post ->deleted_at );
45
- $ post ->unDelete ();
59
+ $ this -> assertTrue ( $ post ->unDelete (), ' Result of `unDelete()` expected to be `true` ' );
46
60
$ this ->assertNull ($ post ->deleted_at );
47
61
$ post = PostA::findOne (2 );
48
62
$ this ->assertNull ($ post ->deleted_at );
@@ -55,7 +69,7 @@ public function testHardDeletePostA()
55
69
{
56
70
/** @var PostA $post */
57
71
$ post = PostA::findOne (2 );
58
- $ post ->hardDelete ();
72
+ $ this -> assertTrue ( $ post ->hardDelete (), ' Result of `hardDelete()` expected to be `true` ' );
59
73
$ post = PostA::findOne (2 );
60
74
$ this ->assertNull ($ post );
61
75
}
@@ -67,7 +81,8 @@ public function testSoftDeletePostB()
67
81
{
68
82
/** @var PostB $post */
69
83
$ post = PostB::findOne (2 );
70
- $ post ->delete ();
84
+ // delete() must return `false`, because we can't prevent real deletion and return `true` at the same time
85
+ $ this ->assertFalse ($ post ->delete (), 'Result of `delete()` expected to be `false` ' );
71
86
$ this ->assertNotNull ($ post ->deleted_at );
72
87
$ post = PostB::findOne (2 );
73
88
$ this ->assertNotNull ($ post ->deleted_at );
@@ -80,11 +95,12 @@ public function testUnDeletePostB()
80
95
{
81
96
/** @var PostB $post */
82
97
$ post = PostB::findOne (2 );
83
- $ post ->delete ();
98
+ // delete() must return `false`, because we can't prevent real deletion and return `true` at the same time
99
+ $ this ->assertFalse ($ post ->delete (), 'Result of `delete()` expected to be `false` ' );
84
100
$ this ->assertNotNull ($ post ->deleted_at );
85
101
$ post = PostB::findOne (2 );
86
102
$ this ->assertNotNull ($ post ->deleted_at );
87
- $ post ->unDelete ();
103
+ $ this -> assertTrue ( $ post ->unDelete (), ' Result of `unDelete()` expected to be `true` ' );
88
104
$ this ->assertNull ($ post ->deleted_at );
89
105
$ post = PostB::findOne (2 );
90
106
$ this ->assertNull ($ post ->deleted_at );
@@ -97,9 +113,8 @@ public function testHardDeletePostB()
97
113
{
98
114
/** @var PostB $post */
99
115
$ post = PostB::findOne (2 );
100
- $ post ->hardDelete ();
116
+ $ this -> assertTrue ( $ post ->hardDelete (), ' Result of `hardDelete()` expected to be `true` ' );
101
117
$ post = PostB::findOne (2 );
102
118
$ this ->assertNull ($ post );
103
119
}
104
-
105
- }
120
+ }
0 commit comments