8000 PHPORM-39: Add namespace for tests directory (#2) · mongodb/laravel-mongodb@4a10b4c · GitHub
[go: up one dir, main page]

Skip to content

Commit 4a10b4c

Browse files
committed
PHPORM-39: Add namespace for tests directory (#2)
* Skip MySQL tests if database is not available * Introduce tests namespace
1 parent 1303b5f commit 4a10b4c

36 files changed

+205
-51
lines changed

composer.json

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,9 @@
3636
}
3737
},
3838
"autoload-dev": {
39-
"classmap": [
40-
"tests/TestCase.php",
41-
"tests/models",
42-
"tests/seeds"
43-
]
39+
"psr-4": {
40+
"Jenssegers\\Mongodb\\Tests\\": "tests/"
41+
}
4442
},
4543
"suggest": {
4644
"jenssegers/mongodb-session": "Add MongoDB session support to Laravel-MongoDB",

tests/AuthTest.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
<?php
22

3+
namespace Jenssegers\Mongodb\Tests;
4+
35
use Illuminate\Auth\Passwords\PasswordBroker;
6+
use Illuminate\Support\Facades\Auth;
7+
use Illuminate\Support\Facades\DB;
8+
use Illuminate\Support\Facades\Hash;
9+
use Jenssegers\Mongodb\Tests\Models\User;
410
use MongoDB\BSON\UTCDateTime;
511

612
class AuthTest extends TestCase

tests/CollectionTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
declare(strict_types=1);
44

5+
namespace Jenssegers\Mongodb\Tests;
6+
57
use Jenssegers\Mongodb\Collection;
68
use Jenssegers\Mongodb\Connection;
79
use MongoDB\BSON\ObjectID;

tests/ConnectionTest.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,11 @@
22

33
declare(strict_types=1);
44

5+
namespace Jenssegers\Mongodb\Tests;
6+
7+
use Generator;
58
use Illuminate\Support\Facades\DB;
9+
use InvalidArgumentException;
610
use Jenssegers\Mongodb\Collection;
711
use Jenssegers\Mongodb\Connection;
812
use Jenssegers\Mongodb\Query\Builder;

tests/EmbeddedRelationsTest.php

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,20 @@
22

33
declare(strict_types=1);
44

5+
namespace Jenssegers\Mongodb\Tests;
6+
7+
use DateTime;
58
use Illuminate\Database\Eloquent\Collection;
69
use Illuminate\Events\Dispatcher;
10+
use Jenssegers\Mongodb\Tests\Models\Address;
11+
use Jenssegers\Mongodb\Tests\Models\Book;
12+
use Jenssegers\Mongodb\Tests\Models\Client;
13+
use Jenssegers\Mongodb\Tests\Models\Group;
14+
use Jenssegers\Mongodb\Tests\Models\Item;
15+
use Jenssegers\Mongodb\Tests\Models\Photo;
16+
use Jenssegers\Mongodb\Tests\Models\Role;
17+
use Jenssegers\Mongodb\Tests\Models\User;
18+
use Mockery;
719
use MongoDB\BSON\ObjectId;
820

921
class EmbeddedRelationsTest extends TestCase
@@ -678,7 +690,7 @@ public function testEmbeddedSave()
678690
{
679691
/** @var User $user */
680692
$user = User::create(['name' => 'John Doe']);
681-
/** @var \Address $address */
693+
/** @var Address $address */
682694
$address = $user->addresses()->create(['city' => 'New York']);
683695
$father = $user->father()->create(['name' => 'Mark Doe']);
684696

tests/GeospatialTest.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22

33
declare(strict_types=1);
44

5+
namespace Jenssegers\Mongodb\Tests;
6+
7+
use Illuminate\Support\Facades\Schema;
8+
use Jenssegers\Mongodb\Tests\Models\Location;
9+
510
class GeospatialTest extends TestCase
611
{
712
public function setUp(): void

tests/HybridRelationsTest.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,32 @@
22

33
declare(strict_types=1);
44

5+
namespace Jenssegers\Mongodb\Tests;
6+
7+
use Illuminate\Database\Connection;
58
use Illuminate\Database\MySqlConnection;
9+
use Illuminate\Support\Facades\DB;
10+
use Jenssegers\Mongodb\Tests\Models\Book;
11+
use Jenssegers\Mongodb\Tests\Models\MysqlBook;
12+
use Jenssegers\Mongodb\Tests\Models\MysqlRole;
13+
use Jenssegers\Mongodb\Tests\Models\MysqlUser;
14+
use Jenssegers\Mongodb\Tests\Models\Role;
15+
use Jenssegers\Mongodb\Tests\Models\User;
16+
use PDOException;
617

718
class HybridRelationsTest extends TestCase
819
{
920
public function setUp(): void
1021
{
1122
parent::setUp();
1223

24+
/** @var Connection */
25+
try {
26+
DB::connection('mysql')->select('SELECT 1');
27+
} catch (PDOException) {
28+
$this->markTestSkipped('MySQL connection is not available.');
29+
}
30+
1331
MysqlUser::executeSchema();
1432
MysqlBook::executeSchema();
1533
MysqlRole::executeSchema();

tests/ModelTest.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,24 @@
22

33
declare(strict_types=1);
44

5+
namespace Jenssegers\Mongodb\Tests;
6+
57
use Carbon\Carbon;
8+
use DateTime;
9+
use DateTimeImmutable;
610
use Illuminate\Database\Eloquent\Collection as EloquentCollection;
711
use Illuminate\Database\Eloquent\ModelNotFoundException;
812
use Illuminate\Support\Facades\Date;
913
use Illuminate\Support\Str;
1014
use Jenssegers\Mongodb\Collection;
1115
use Jenssegers\Mongodb\Connection;
1216
use Jenssegers\Mongodb\Eloquent\Model;
17+
use Jenssegers\Mongodb\Tests\Models\Book;
18+
use Jenssegers\Mongodb\Tests\Models\Guarded;
19+
use Jenssegers\Mongodb\Tests\Models\Item;
20+
use Jenssegers\Mongodb\Tests\Models\MemberStatus;
21+
use Jenssegers\Mongodb\Tests\Models\Soft;
22+
use Jenssegers\Mongodb\Tests\Models\User;
1323
use MongoDB\BSON\ObjectID;
1424
use MongoDB\BSON\UTCDateTime;
1525

tests/models/Address.php renamed to tests/Models/Address.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
declare(strict_types=1);
44

5+
namespace Jenssegers\Mongodb\Tests\Models;
6+
57
use Jenssegers\Mongodb\Eloquent\Model as Eloquent;
68
use Jenssegers\Mongodb\Relations\EmbedsMany;
79

@@ -12,6 +14,6 @@ class Address extends Eloquent
1214

1315
public function addresses(): EmbedsMany
1416
{
15-
return $this->embedsMany('Address');
17+
return $this->embedsMany(self::class);
1618
}
1719
}

tests/models/Birthday.php renamed to tests/Models/Birthday.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
declare(strict_types=1);
44

5+
namespace Jenssegers\Mongodb\Tests\Models;
6+
57
use Jenssegers\Mongodb\Eloquent\Model as Eloquent;
68

79
/**

0 commit comments

Comments
 (0)
0