3
3
namespace Tests \Unit ;
4
4
5
5
use EllGreen \LaravelLoadFile \Builder \Builder ;
6
+ use EllGreen \LaravelLoadFile \Exceptions \CompilationException ;
6
7
use EllGreen \LaravelLoadFile \Grammar ;
7
8
use Illuminate \Database \DatabaseManager ;
8
9
use Illuminate \Database \Query \Expression ;
@@ -28,6 +29,42 @@ protected function setUp(): void
28
29
->columns (['forename ' , 'surname ' , 'employee_id ' ]);
29
30
}
30
31
32
+ public function testNoFileThrowsException ()
33
+ {
34
+ $ this ->expectException (CompilationException::class);
35
+
36
+ $ builder = (new Builder (
37
+ $ this ->createMock (DatabaseManager::class),
38
+ $ this ->createMock (Grammar::class),
39
+ ))->into ('table ' );
40
+
41
+ $ this ->grammar ->compileLoadFile ($ builder );
42
+ }
43
+
44
+ public function testNoTableThrowsException ()
45
+ {
46
+ $ this ->expectException (CompilationException::class);
47
+
48
+ $ builder = (new Builder (
49
+ $ this ->createMock (DatabaseManager::class),
50
+ $ this ->createMock (Grammar::class),
51
+ ))->file ('path/to/file ' );
52
+
53
+ $ this ->grammar ->compileLoadFile ($ builder );
54
+ }
55
+
56
+ public function testNoTableOrFileThrowsException ()
57
+ {
58
+ $ this ->expectException (CompilationException::class);
59
+
60
+ $ builder = new Builder (
61
+ $ this ->createMock (DatabaseManager::class),
62
+ $ this ->createMock (Grammar::class),
63
+ );
64
+
65
+ $ this ->grammar ->compileLoadFile ($ builder );
66
+ }
67
+
31
68
public function testSimpleCompile ()
32
69
{
33
70
$ this ->assertSqlAndBindings (<<<'SQL'
0 commit comments