Skip to content

Commit d683f9f

Browse files
committed
Add more table autocomplete.
1 parent d30972e commit d683f9f

File tree

3 files changed

+35
-12
lines changed

3 files changed

+35
-12
lines changed

src/Generator/Task/DatabaseTableTask.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,9 @@ class DatabaseTableTask implements TaskInterface {
3030
*/
3131
protected array $aliases = [
3232
'\Migrations\BaseMigration::table()',
33+
'\Migrations\BaseMigration::hasTable()',
3334
'\Migrations\BaseSeed::table()',
35+
'\Migrations\BaseSeed::hasTable()',
3436
];
3537

3638
/**

tests/TestCase/Generator/Task/DatabaseTableTaskTest.php

Lines changed: 21 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ protected function tearDown(): void {
4545
public function testCollect() {
4646
$result = $this->task->collect();
4747

48-
$this->assertCount(3, $result);
48+
$this->assertCount(5, $result);
4949

5050
/** @var \IdeHelper\Generator\Directive\RegisterArgumentsSet $directive */
5151
$directive = array_shift($result);
@@ -62,19 +62,28 @@ public function testCollect() {
6262
$this->assertSame($value, (string)$list[$key]);
6363
}
6464

65-
/** @var \IdeHelper\Generator\Directive\ExpectedArguments $directive */
66-
$directive = array_shift($result);
67-
$this->assertSame('\Migrations\BaseMigration::table()', $directive->toArray()['method']);
65+
$expectedMethods = [
66+
'\Migrations\BaseMigration::table()',
67+
'\Migrations\BaseMigration::hasTable()',
68+
'\Migrations\BaseSeed::table()',
69+
'\Migrations\BaseSeed::hasTable()',
70+
];
6871

69-
$list = $directive->toArray()['list'];
70-
$list = array_map(function ($className) {
71-
return (string)$className;
72-
}, $list);
72+
foreach ($expectedMethods as $expectedMethod) {
73+
/** @var \IdeHelper\Generator\Directive\ExpectedArguments $directive */
74+
$directive = array_shift($result);
75+
$this->assertSame($expectedMethod, $directive->toArray()['method']);
7376

74-
$expectedList = [
75-
'argumentsSet(\'tableNames\')',
76-
];
77-
$this->assertSame($expectedList, $list);
77+
$list = $directive->toArray()['list'];
78+
$list = array_map(function ($className) {
79+
return (string)$className;
80+
}, $list);
81+
82+
$expectedList = [
83+
'argumentsSet(\'tableNames\')',
84+
];
85+
$this->assertSame($expectedList, $list);
86+
}
7887
}
7988

8089
}

tests/test_files/meta/phpstorm/.meta.php

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -779,12 +779,24 @@
779779
'ajax',
780780
);
781781

782+
expectedArguments(
783+
\Migrations\BaseMigration::hasTable(),
784+
0,
785+
argumentsSet('tableNames'),
786+
);
787+
782788
expectedArguments(
783789
\Migrations\BaseMigration::table(),
784790
0,
785791
argumentsSet('tableNames'),
786792
);
787793

794+
expectedArguments(
795+
\Migrations\BaseSeed::hasTable(),
796+
0,
797+
argumentsSet('tableNames'),
798+
);
799+
788800
expectedArguments(
789801
\Migrations\BaseSeed::table(),
790802
0,

0 commit comments

Comments
 (0)