Skip to content

Commit

Permalink
Merge 4cf6866 into 238f1f5
Browse files Browse the repository at this point in the history
  • Loading branch information
CyberiaResurrection committed Feb 18, 2020
2 parents 238f1f5 + 4cf6866 commit 28576e1
Show file tree
Hide file tree
Showing 10 changed files with 120 additions and 32 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* Date: 9/02/20
* Time: 1:29 PM.
*/
namespace AlgoWeb\PODataLaravel\Orchestra\Tests\Models;
namespace Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models;

use Illuminate\Database\Eloquent\Model;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* Date: 9/02/20
* Time: 1:29 PM.
*/
namespace AlgoWeb\PODataLaravel\Orchestra\Tests\Models;
namespace Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models;

use Illuminate\Database\Eloquent\Model;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* Date: 9/02/20
* Time: 1:28 PM.
*/
namespace AlgoWeb\PODataLaravel\Orchestra\Tests\Models;
namespace Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models;

use Illuminate\Database\Eloquent\Model;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@
* Date: 9/02/20
* Time: 2:38 PM.
*/
namespace AlgoWeb\PODataLaravel\Orchestra\Tests\Functional;
namespace Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Tests\Functional;

use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\Address;
use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\City;
use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\Person;
use AlgoWeb\PODataLaravel\Orchestra\Tests\TestCase;
use Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models\Address;
use Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models\City;
use Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models\Person;
use Tests\Regression\AlgoWeb\PODataLaravel\TestCase;
use Illuminate\Foundation\Testing\DatabaseMigrations;

class ExpandTest extends TestCase
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@
* Date: 9/02/20
* Time: 6:42 PM.
*/
namespace AlgoWeb\PODataLaravel\Orchestra\Tests\Functional;
namespace Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Tests\Functional;

use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\Address;
use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\City;
use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\Person;
use AlgoWeb\PODataLaravel\Orchestra\Tests\TestCase;
use Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models\Address;
use Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models\City;
use Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models\Person;
use Tests\Regression\AlgoWeb\PODataLaravel\TestCase;
use AlgoWeb\PODataLaravel\Serialisers\IronicSerialiser;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Http\Request;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@
* Date: 14/02/20
* Time: 1:52 AM.
*/
namespace AlgoWeb\PODataLaravel\Orchestra\Tests\Unit\Models;
namespace Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Unit\Models;

use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\Address;
use Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models\Address;
use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\OrchestraTestModel;
use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\RelationTestDummyModel;
use AlgoWeb\PODataLaravel\Orchestra\Tests\TestCase;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,10 @@
<?php
/**
* Created by PhpStorm.
* User: alex
* Date: 9/02/20
* Time: 1:41 PM.
*/
namespace AlgoWeb\PODataLaravel\Orchestra\Tests\Unit;
namespace Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Unit\Models;

use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\Address;
use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\City;
use AlgoWeb\PODataLaravel\Orchestra\Tests\Models\Person;
use AlgoWeb\PODataLaravel\Orchestra\Tests\TestCase;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Support\Facades\App;
use Illuminate\Support\Facades\Schema;
use Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models\Address;
use Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models\City;
use Tests\Regression\AlgoWeb\PODataLaravel\Bgoak\Models\Person;
use Tests\Regression\AlgoWeb\PODataLaravel\TestCase;

/**
* As the name suggests, these tests were added to help diagnose and ultimately fix issue #188, reported by
Expand All @@ -24,10 +15,8 @@
* Class BgOakRelationTests
* @package AlgoWeb\PODataLaravel\Orchestra\Tests\Unit
*/
class BgOakRelationTest extends TestCase
class RelationTest extends TestCase
{
//use DatabaseMigrations;

public function testCityAddressRelationRoundTrip()
{
$foo = new City();
Expand Down
61 changes: 61 additions & 0 deletions tests/Regression/TestCase.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
<?php

namespace Tests\Regression\AlgoWeb\PODataLaravel;

use Orchestra\Testbench\TestCase as BaseTestCase;

class TestCase extends BaseTestCase
{
protected function getPackageProviders($app)
{
return [
TestServiceProvider::class,
\AlgoWeb\PODataLaravel\Providers\MetadataProvider::class,
\AlgoWeb\PODataLaravel\Providers\MetadataRouteProvider::class,
\AlgoWeb\PODataLaravel\Providers\QueryProvider::class,
\AlgoWeb\PODataLaravel\Providers\MetadataControllerProvider::class,
/*\Orchestra\Database\ConsoleServiceProvider::class,*/];
}


/**
* Define environment setup.
*
* @param \Illuminate\Foundation\Application $app
* @throws \ReflectionException
* @return void
*/
protected function getEnvironmentSetUp($app)
{
// Brute-force set app namespace
$reflec = new \ReflectionClass($app);
$prop = $reflec->getProperty('namespace');
$prop->setAccessible(true);
$regressionName = explode('\\', get_class($this))[4];
$prop->setValue($app, __NAMESPACE__ . '\\' . $regressionName);
$app['config']->set('testRegressionName', $regressionName);
// Setup default database to use sqlite :memory:
$app['config']->set('database.default', 'testbench');
$app['config']->set('database.connections.testbench', [
'driver' => 'sqlite',
'database' => ':memory:',
'prefix' => '',
]);
}

public function setUp() : void
{
parent::setUp();
//$this->loadMigrationsFrom(realpath(__DIR__ . '/database/migrations'));
date_default_timezone_set('UTC');
}

protected function assertSeeShim($result, $expected)
{
if (method_exists($result, 'assertSee')) {
$result->assertSee($expected);
} else {
$this->assertContains($expected, $result->response->getOriginalContent());
}
}
}
38 changes: 38 additions & 0 deletions tests/Regression/TestServiceProvider.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
<?php


namespace Tests\Regression\AlgoWeb\PODataLaravel;

use Illuminate\Support\ServiceProvider as BaseServiceProvider;

class TestServiceProvider extends BaseServiceProvider
{
protected $defer = false;

public function register()
{
}

/**
* @throws \Illuminate\Contracts\Container\BindingResolutionException
*/
public function boot()
{
$this->loadMigrationsFrom(
__DIR__ . DIRECTORY_SEPARATOR . config('testRegressionName') .'/database/migrations'
);
}

/**
* @param array|string $path
* @throws \Illuminate\Contracts\Container\BindingResolutionException
*/
protected function loadMigrationsFrom($path)
{
$migrator = $this->app->make('migrator');
$migrationRepository = $migrator->getRepository();
$migrationRepository->setSource('testbench');
$migrationRepository->createRepository();
$migrator->run($path);
}
}

0 comments on commit 28576e1

Please sign in to comment.