Skip to content

Commit 15730e0

Browse files
authored
Merge pull request #50 from GeneaLabs/feature/convert-testing-to-orchestral-testbench
Transition to Orchestral Testbench
2 parents f6f9814 + 7656e00 commit 15730e0

13 files changed

+74
-36
lines changed

composer.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,14 @@
1616
"require-dev": {
1717
"codedungeon/phpunit-result-printer": "^0.4.4",
1818
"fzaninotto/faker": "~1.4",
19-
"laravel/laravel": "5.5.*",
2019
"mockery/mockery": "0.9.*",
21-
"phpmd/phpmd": "^2.6",
22-
"phpunit/phpunit": "5.7.*",
20+
"orchestra/database": "^3.5",
21+
"orchestra/testbench-browser-kit": "^3.5",
22+
"orchestra/testbench-dusk": "3.5.x-dev@dev",
23+
"orchestra/testbench": "^3.5",
2324
"php-coveralls/php-coveralls" : "*",
25+
"phpmd/phpmd": "*",
26+
"phpunit/phpunit": "*",
2427
"sebastian/phpcpd": "*",
2528
"symfony/thanks": "^1.0"
2629
},

phpunit.xml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@
1313
syntaxCheck="false"
1414
>
1515
<testsuites>
16+
<testsuite name="Browser">
17+
<directory suffix="Test.php">./tests/Browser</directory>
18+
</testsuite>
19+
1620
<testsuite name="Feature">
1721
<directory suffix="Test.php">./tests/Feature</directory>
1822
</testsuite>
@@ -29,10 +33,10 @@
2933
<php>
3034
<env name="APP_KEY" value="base64:Xgs1LQt1GdVHhD6qyYCXnyq61DE3UKqJ5k2SJc+Nw2g="/>
3135
<env name="APP_ENV" value="testing"/>
36+
<env name="APP_URL" value="http://127.0.0.1:8000"/>
3237
<env name="CACHE_DRIVER" value="array"/>
3338
<env name="SESSION_DRIVER" value="array"/>
3439
<env name="QUEUE_DRIVER" value="sync"/>
35-
<env name="DB_CONNECTION" value="sqlite"/>
36-
<env name="DB_DATABASE" value=":memory:"/>
40+
<env name="DB_CONNECTION" value="testing"/>
3741
</php>
3842
</phpunit>

tests/BrowserTestCase.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<?php namespace GeneaLabs\LaravelModelCaching\Tests;
2+
3+
use Orchestra\Testbench\Dusk\TestCase as BaseTestCase;
4+
5+
abstract class BrowserTestCase extends BaseTestCase
6+
{
7+
use CreatesApplication;
8+
9+
public static function setUpBeforeClass()
10+
{
11+
static::serve();
12+
}
13+
14+
public static function tearDownAfterClass()
15+
{
16+
static::stopServing();
17+
}
18+
}

tests/CreatesApplication.php

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,26 @@
11
<?php namespace GeneaLabs\LaravelModelCaching\Tests;
22

33
use GeneaLabs\LaravelModelCaching\Providers\Service as LaravelModelCachingService;
4-
use Illuminate\Contracts\Console\Kernel;
5-
use Illuminate\Database\Eloquent\Factory;
4+
use Orchestra\Database\ConsoleServiceProvider;
65

76
trait CreatesApplication
87
{
9-
public function createApplication()
8+
public function setUp()
109
{
11-
$app = require __DIR__ . '/../vendor/laravel/laravel/bootstrap/app.php';
12-
$app->make(Kernel::class)->bootstrap();
13-
$app->make(Factory::class)->load(__DIR__ . '/database/factories');
14-
$app->afterResolving('migrator', function ($migrator) {
15-
$migrator->path(__DIR__ . '/database/migrations');
16-
});
17-
$app->register(LaravelModelCachingService::class);
10+
parent::setUp();
1811

19-
return $app;
12+
$this->withFactories(__DIR__ . '/database/factories');
13+
$this->loadMigrationsFrom(realpath(__DIR__ . '/database/migrations'));
14+
}
15+
16+
/**
17+
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
18+
*/
19+
protected function getPackageProviders($app)
20+
{
21+
return [
22+
LaravelModelCachingService::class,
23+
ConsoleServiceProvider::class,
24+
];
2025
}
2126
}

tests/FeatureTestCase.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?php namespace GeneaLabs\LaravelModelCaching\Tests;
2+
3+
use Orchestra\Testbench\BrowserKit\TestCase as BaseTestCase;
4+
5+
abstract class FeatureTestCase extends BaseTestCase
6+
{
7+
use CreatesApplication;
8+
}

tests/TestCase.php

Lines changed: 0 additions & 8 deletions
This file was deleted.

tests/Unit/CachedBuilderTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@
1111
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedPublisher;
1212
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedStore;
1313
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\Http\Resources\Author as AuthorResource;
14-
use GeneaLabs\LaravelModelCaching\Tests\TestCase;
14+
use GeneaLabs\LaravelModelCaching\Tests\UnitTestCase;
1515
use Illuminate\Foundation\Testing\RefreshDatabase;
1616

1717
/**
1818
* @SuppressWarnings(PHPMD.TooManyPublicMethods)
1919
* @SuppressWarnings(PHPMD.TooManyMethods)
2020
*/
21-
class CachedBuilderTest extends TestCase
21+
class CachedBuilderTest extends UnitTestCase
2222
{
2323
use RefreshDatabase;
2424

tests/Unit/CachedModelTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@
1010
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedProfile;
1111
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedPublisher;
1212
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedStore;
13-
use GeneaLabs\LaravelModelCaching\Tests\TestCase;
13+
use GeneaLabs\LaravelModelCaching\Tests\UnitTestCase;
1414
use Illuminate\Foundation\Testing\RefreshDatabase;
1515

16-
class CachedModelTest extends TestCase
16+
class CachedModelTest extends UnitTestCase
1717
{
1818
use RefreshDatabase;
1919

tests/Unit/Console/Commands/FlushTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\Publisher;
77
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\Store;
88
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedAuthor;
9-
use GeneaLabs\LaravelModelCaching\Tests\TestCase;
9+
use GeneaLabs\LaravelModelCaching\Tests\UnitTestCase;
1010
use Illuminate\Foundation\Testing\RefreshDatabase;
1111

12-
class FlushTest extends TestCase
12+
class FlushTest extends UnitTestCase
1313
{
1414
use RefreshDatabase;
1515

tests/Unit/DisabledCachedBuilderTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@
1111
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedPublisher;
1212
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedStore;
1313
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\Http\Resources\Author as AuthorResource;
14-
use GeneaLabs\LaravelModelCaching\Tests\TestCase;
14+
use GeneaLabs\LaravelModelCaching\Tests\UnitTestCase;
1515
use Illuminate\Foundation\Testing\RefreshDatabase;
1616

1717
/**
1818
* @SuppressWarnings(PHPMD.TooManyPublicMethods)
1919
* @SuppressWarnings(PHPMD.TooManyMethods)
2020
*/
21-
class DisabledCachedBuilderTest extends TestCase
21+
class DisabledCachedBuilderTest extends UnitTestCase
2222
{
2323
use RefreshDatabase;
2424

tests/Unit/DisabledCachedModelTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@
1010
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedProfile;
1111
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedPublisher;
1212
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedStore;
13-
use GeneaLabs\LaravelModelCaching\Tests\TestCase;
13+
use GeneaLabs\LaravelModelCaching\Tests\UnitTestCase;
1414
use Illuminate\Foundation\Testing\RefreshDatabase;
1515

16-
class DisabledCachedModelTest extends TestCase
16+
class DisabledCachedModelTest extends UnitTestCase
1717
{
1818
use RefreshDatabase;
1919

tests/Unit/Traits/CachableTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@
1010
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedProfile;
1111
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedPublisher;
1212
use GeneaLabs\LaravelModelCaching\Tests\Fixtures\UncachedStore;
13-
use GeneaLabs\LaravelModelCaching\Tests\TestCase;
13+
use GeneaLabs\LaravelModelCaching\Tests\UnitTestCase;
1414
use Illuminate\Foundation\Testing\RefreshDatabase;
1515

16-
class CachableTest extends TestCase
16+
class CachableTest extends UnitTestCase
1717
{
1818
use RefreshDatabase;
1919

tests/UnitTestCase.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?php namespace GeneaLabs\LaravelModelCaching\Tests;
2+
3+
use Orchestra\Testbench\TestCase as BaseTestCase;
4+
5+
abstract class UnitTestCase extends BaseTestCase
6+
{
7+
use CreatesApplication;
8+
}

0 commit comments

Comments
 (0)