Migration not changing version

This commit is contained in:
Yurii
2026-04-30 17:36:56 +03:00
parent a401e1e3a8
commit 2a509b2ddc
2 changed files with 82 additions and 1 deletions

View File

@@ -71,6 +71,13 @@ class Runner
if ($afterSteps === []) {
$io->writeLine("No migrations to run.");
if ($version !== $targetVersion) {
$this->updateVersion($targetVersion);
$this->dataManager->updateAppTimestamp();
$io->writeLine("Completed.");
}
return;
}

View File

@@ -59,7 +59,7 @@ class RunnerTest extends TestCase
$this->configWriter = $this->createMock(ConfigWriter::class);
}
public function testRun(): void
public function testRunMigration(): void
{
$this->versionDataProvider
->expects($this->once())
@@ -114,4 +114,78 @@ class RunnerTest extends TestCase
/** @noinspection PhpUnhandledExceptionInspection */
$runner->run($this->io);
}
public function testRunNoMigration(): void
{
$this->versionDataProvider
->expects($this->once())
->method('getTargetVersion')
->willReturn('9.3.4');
$this->versionDataProvider
->expects($this->once())
->method('getPreviousVersion')
->willReturn('9.2.7');
$this->stepsRunner
->expects($this->never())
->method('runPrepare');
$this->stepsRunner
->expects($this->never())
->method('runAfterUpgrade');
$this->configWriter
->expects($this->once())
->method('set')
->with('version', '9.3.4');
$runner = new Runner(
$this->stepsProvider,
$this->versionDataProvider,
$this->stepsRunner,
$this->dataManager,
$this->configWriter
);
/** @noinspection PhpUnhandledExceptionInspection */
$runner->run($this->io);
}
public function testRunSameVersion(): void
{
$this->versionDataProvider
->expects($this->once())
->method('getTargetVersion')
->willReturn('9.3.4');
$this->versionDataProvider
->expects($this->once())
->method('getPreviousVersion')
->willReturn('9.3.4');
$this->stepsRunner
->expects($this->never())
->method('runPrepare');
$this->stepsRunner
->expects($this->never())
->method('runAfterUpgrade');
$this->configWriter
->expects($this->never())
->method('set');
$runner = new Runner(
$this->stepsProvider,
$this->versionDataProvider,
$this->stepsRunner,
$this->dataManager,
$this->configWriter
);
/** @noinspection PhpUnhandledExceptionInspection */
$runner->run($this->io);
}
}