Skip to content

Commit 24faaa4

Browse files
testing
1 parent 52a2d01 commit 24faaa4

File tree

4 files changed

+109
-0
lines changed

4 files changed

+109
-0
lines changed
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models;
6+
7+
use Illuminate\Database\Eloquent\Factories\HasFactory;
8+
use Illuminate\Database\Eloquent\Model;
9+
10+
class ModelWithoutFactory extends Model
11+
{
12+
use HasFactory;
13+
}

tests/Console/ModelsCommand/Factories/Test.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,23 @@ public function test(): void
2828
$this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay());
2929
$this->assertMatchesMockedSnapshot();
3030
}
31+
32+
/** @test */
33+
public function it_doesnt_generate_phpdoc_for_model_doesnt_have_factory()
34+
{
35+
if (!version_compare(Application::VERSION, '8.2', '>=')) {
36+
$this->markTestSkipped(
37+
'This test only works in Laravel >= 8.2'
38+
);
39+
}
40+
41+
$command = $this->app->make(ModelsCommand::class);
42+
43+
$tester = $this->runCommand($command, [
44+
'--write' => true,
45+
]);
46+
47+
$this->assertStringNotContainsString('not found', $tester->getDisplay());
48+
$this->assertMatchesMockedSnapshot();
49+
}
3150
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models;
6+
7+
use Illuminate\Database\Eloquent\Factories\HasFactory;
8+
use Illuminate\Database\Eloquent\Model;
9+
10+
/**
11+
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models\ModelWithoutFactory
12+
*
13+
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory newModelQuery()
14+
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory newQuery()
15+
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory query()
16+
* @mixin \Eloquent
17+
*/
18+
class ModelWithoutFactory extends Model
19+
{
20+
use HasFactory;
21+
}
22+
<?php
23+
24+
declare(strict_types=1);
25+
26+
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models;
27+
28+
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Factories\SimpleFactory;
29+
use Illuminate\Database\Eloquent\Factories\HasFactory;
30+
use Illuminate\Database\Eloquent\Model;
31+
32+
/**
33+
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models\Simple
34+
*
35+
* @property integer $id
36+
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Factories\SimpleFactory factory(...$parameters)
37+
* @method static \Illuminate\Database\Eloquent\Builder|Simple newModelQuery()
38+
* @method static \Illuminate\Database\Eloquent\Builder|Simple newQuery()
39+
* @method static \Illuminate\Database\Eloquent\Builder|Simple query()
40+
* @method static \Illuminate\Database\Eloquent\Builder|Simple whereId($value)
41+
* @mixin \Eloquent
42+
*/
43+
class Simple extends Model
44+
{
45+
use HasFactory;
46+
47+
/**
48+
* Create a new factory instance for the model.
49+
*
50+
* @return \Illuminate\Database\Eloquent\Factories\Factory
51+
*/
52+
protected static function newFactory()
53+
{
54+
return SimpleFactory::new();
55+
}
56+
}

tests/Console/ModelsCommand/Factories/__snapshots__/Test__test__1.php

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,27 @@
44

55
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models;
66

7+
use Illuminate\Database\Eloquent\Factories\HasFactory;
8+
use Illuminate\Database\Eloquent\Model;
9+
10+
/**
11+
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models\ModelWithoutFactory
12+
*
13+
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory newModelQuery()
14+
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory newQuery()
15+
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory query()
16+
* @mixin \Eloquent
17+
*/
18+
class ModelWithoutFactory extends Model
19+
{
20+
use HasFactory;
21+
}
22+
<?php
23+
24+
declare(strict_types=1);
25+
26+
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models;
27+
728
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Factories\SimpleFactory;
829
use Illuminate\Database\Eloquent\Factories\HasFactory;
930
use Illuminate\Database\Eloquent\Model;

0 commit comments

Comments
 (0)