4
4
5
5
require __DIR__ .'/../src/Import.php ' ;
6
6
7
- class ImportExtended extends Nicklayb \LaravelDbImport \Import
7
+ class BasicImport extends Nicklayb \LaravelDbImport \Import
8
8
{
9
+ }
10
+
11
+ class ExtendedImport extends Nicklayb \LaravelDbImport \Import
12
+ {
13
+ protected $ ignoreTables = [ 'migrations ' ];
14
+ protected $ lastTables = [ 'relation_one ' , 'relation_two ' ];
15
+ protected $ selects = [
16
+ 'users ' => [
17
+ 'id ' , 'firstname ' , 'lastname '
18
+ ]
19
+ ];
20
+ protected $ resetPassword = [
21
+ 'users:password ' => 'test '
22
+ ];
23
+
9
24
public function filterUsers ($ query )
10
25
{
11
26
return $ query ;
@@ -16,60 +31,148 @@ public function manipulateUsers($user)
16
31
$ user ['key ' ] = 'value ' ;
17
32
return $ user ;
18
33
}
34
+
35
+ public function preImport ()
36
+ {
37
+ return [
38
+ 'pre_task ' => function () {
39
+ //
40
+ }
41
+ ];
42
+ }
43
+
44
+ public function postImport ()
45
+ {
46
+ return [
47
+ 'post_task ' => function () {
48
+ //
49
+ }
50
+ ];
51
+ }
19
52
}
20
53
21
54
class ImportTest extends TestCase
22
55
{
23
- protected $ import ;
56
+ protected $ basicImport ;
57
+ protected $ extendedImport ;
24
58
25
59
public function __construct ()
26
60
{
27
61
parent ::__construct ();
28
- $ this ->import = new ImportExtended ;
62
+ $ this ->basicImport = new BasicImport ;
63
+ $ this ->extendedImport = new ExtendedImport ;
64
+ }
65
+
66
+ public function testHasIgnoreTable ()
67
+ {
68
+ $ this ->assertTrue ($ this ->extendedImport ->hasIgnoreTable ('migrations ' ));
69
+ }
70
+
71
+ public function testHasIgnoreTableInexistant ()
72
+ {
73
+ $ this ->assertFalse ($ this ->extendedImport ->hasIgnoreTable ('products ' ));
74
+ }
75
+
76
+ public function testHasLastTable ()
77
+ {
78
+ $ this ->assertTrue ($ this ->extendedImport ->hasLastTable ('relation_one ' ));
79
+ }
80
+
81
+ public function testHasLastTableInexistant ()
82
+ {
83
+ $ this ->assertFalse ($ this ->extendedImport ->hasLastTable ('products ' ));
84
+ }
85
+
86
+ public function testHasPasswordReset ()
87
+ {
88
+ $ this ->assertTrue ($ this ->extendedImport ->hasPasswordResets ());
89
+ }
90
+
91
+ public function testHasPasswordResetInexistant ()
92
+ {
93
+ $ this ->assertFalse ($ this ->basicImport ->hasPasswordResets ());
29
94
}
30
95
31
96
public function testQualifiedManipulationName ()
32
97
{
33
98
$ expected = 'manipulateUsers ' ;
34
- $ this ->assertEquals ($ expected , $ this ->import ->getManipulationName ('users ' ));
99
+ $ this ->assertEquals ($ expected , $ this ->extendedImport ->getManipulationName ('users ' ));
100
+ }
101
+
102
+ public function testGetPasswordResetValues ()
103
+ {
104
+ $ expected = ['password ' => 'test ' ];
105
+ $ this ->assertEquals ($ expected , $ this ->extendedImport ->getPasswordResetValues ('users ' ));
106
+ }
107
+
108
+ public function testHasSelects ()
109
+ {
110
+ $ this ->assertTrue ($ this ->extendedImport ->hasSelects ('users ' ));
111
+ }
112
+
113
+ public function testHasSelectsInexistant ()
114
+ {
115
+ $ this ->assertFalse ($ this ->extendedImport ->hasSelects ('products ' ));
116
+ }
117
+
118
+ /**
119
+ * @depends testHasSelects
120
+ * @depends testHasSelectsInexistant
121
+ */
122
+ public function testGetSelects ()
123
+ {
124
+ $ expected = [
125
+ 'id ' , 'firstname ' , 'lastname '
126
+ ];
127
+ $ this ->assertEquals ($ expected , $ this ->extendedImport ->getSelects ('users ' ));
128
+ }
129
+
130
+ /**
131
+ * @depends testHasSelects
132
+ * @depends testHasSelectsInexistant
133
+ */
134
+ public function testGetSelectsInexistant ()
135
+ {
136
+ $ expected = [ '* ' ];
137
+ $ this ->assertEquals ($ expected , $ this ->extendedImport ->getSelects ('products ' ));
35
138
}
36
139
37
140
/**
38
141
* @depends testQualifiedManipulationName
39
142
*/
40
143
public function testHasTableManipulation ()
41
144
{
42
- $ this ->assertTrue ($ this ->import ->hasManipulation ('users ' ));
145
+ $ this ->assertTrue ($ this ->extendedImport ->hasManipulation ('users ' ));
43
146
}
44
147
45
148
/**
46
149
* @depends testQualifiedManipulationName
47
150
*/
48
151
public function testHasInexistantTableManipulation ()
49
152
{
50
- $ this ->assertFalse ($ this ->import ->hasManipulation ('products ' ));
153
+ $ this ->assertFalse ($ this ->extendedImport ->hasManipulation ('products ' ));
51
154
}
52
155
53
156
public function testQualifiedFilterName ()
54
157
{
55
158
$ expected = 'filterUsers ' ;
56
- $ this ->assertEquals ($ expected , $ this ->import ->getFilterName ('users ' ));
159
+ $ this ->assertEquals ($ expected , $ this ->extendedImport ->getFilterName ('users ' ));
57
160
}
58
161
59
162
/**
60
163
* @depends testQualifiedFilterName
61
164
*/
62
165
public function testHasTableFilter ()
63
166
{
64
- $ this ->assertTrue ($ this ->import ->hasTableFilter ('users ' ));
167
+ $ this ->assertTrue ($ this ->extendedImport ->hasTableFilter ('users ' ));
65
168
}
66
169
67
170
/**
68
171
* @depends testQualifiedFilterName
69
172
*/
70
173
public function testHasInexistantTableFilter ()
71
174
{
72
- $ this ->assertFalse ($ this ->import ->hasTableFilter ('products ' ));
175
+ $ this ->assertFalse ($ this ->extendedImport ->hasTableFilter ('products ' ));
73
176
}
74
177
75
178
/**
@@ -86,7 +189,7 @@ public function testExecuteManipulation()
86
189
'key ' => 'value '
87
190
];
88
191
89
- $ this ->assertEquals ($ expected , $ this ->import ->executeManipulation ($ table , $ base ));
192
+ $ this ->assertEquals ($ expected , $ this ->extendedImport ->executeManipulation ($ table , $ base ));
90
193
}
91
194
92
195
/**
@@ -100,6 +203,12 @@ public function testExecuteInexistantManipulation()
100
203
$ base = [ 'root ' => 'element ' ];
101
204
$ expected = [ 'root ' => 'element ' ];
102
205
103
- $ this ->assertEquals ($ expected , $ this ->import ->executeManipulation ($ table , $ base ));
206
+ $ this ->assertEquals ($ expected , $ this ->extendedImport ->executeManipulation ($ table , $ base ));
207
+ }
208
+
209
+ public function testCountImportTasks ()
210
+ {
211
+ $ expected = 2 ;
212
+ $ this ->assertEquals ($ expected , $ this ->extendedImport ->countImportTasks ());
104
213
}
105
214
}
0 commit comments