mirror of
https://github.com/Karaka-Management/oms-Admin.git
synced 2026-02-15 20:18:40 +00:00
fix unit tests
This commit is contained in:
parent
ec89e46654
commit
2d86917d35
|
|
@ -1071,11 +1071,19 @@ final class ApiController extends Controller
|
||||||
$done = $module === 'Admin' ? false : $this->app->moduleManager->activate($module);
|
$done = $module === 'Admin' ? false : $this->app->moduleManager->activate($module);
|
||||||
$msg = $done ? 'Module successfully activated.' : 'Module not activated.';
|
$msg = $done ? 'Module successfully activated.' : 'Module not activated.';
|
||||||
|
|
||||||
|
$new = clone $old;
|
||||||
|
$new->setStatus(ModuleStatusUpdateType::ACTIVATE);
|
||||||
|
ModuleMapper::update($new);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case ModuleStatusUpdateType::DEACTIVATE:
|
case ModuleStatusUpdateType::DEACTIVATE:
|
||||||
$done = $module === 'Admin' ? false : $this->app->moduleManager->deactivate($module);
|
$done = $module === 'Admin' ? false : $this->app->moduleManager->deactivate($module);
|
||||||
$msg = $done ? 'Module successfully deactivated.' : 'Module not deactivated.';
|
$msg = $done ? 'Module successfully deactivated.' : 'Module not deactivated.';
|
||||||
|
|
||||||
|
$new = clone $old;
|
||||||
|
$new->setStatus(ModuleStatusUpdateType::DEACTIVATE);
|
||||||
|
ModuleMapper::update($new);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case ModuleStatusUpdateType::INSTALL:
|
case ModuleStatusUpdateType::INSTALL:
|
||||||
$done = $this->app->moduleManager->isInstalled($module) ? true : false;
|
$done = $this->app->moduleManager->isInstalled($module) ? true : false;
|
||||||
|
|
@ -1085,6 +1093,12 @@ final class ApiController extends Controller
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!\is_file(__DIR__ . '/../../../Modules/' . $module . '/info.json')) {
|
||||||
|
$msg = 'Status change for unknown module requested';
|
||||||
|
$done = false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
$moduleInfo = new ModuleInfo(__DIR__ . '/../../../Modules/' . $module . '/info.json');
|
$moduleInfo = new ModuleInfo(__DIR__ . '/../../../Modules/' . $module . '/info.json');
|
||||||
$moduleInfo->load();
|
$moduleInfo->load();
|
||||||
|
|
||||||
|
|
@ -1096,7 +1110,7 @@ final class ApiController extends Controller
|
||||||
$iRequest->header->account = 1;
|
$iRequest->header->account = 1;
|
||||||
$iRequest->setData('status', ModuleStatusUpdateType::INSTALL);
|
$iRequest->setData('status', ModuleStatusUpdateType::INSTALL);
|
||||||
|
|
||||||
$iRequest->setData('module', $key, true);
|
$iRequest->setData('module', $key);
|
||||||
$this->apiModuleStatusUpdate($iRequest, $iResponse);
|
$this->apiModuleStatusUpdate($iRequest, $iResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1152,6 +1166,10 @@ final class ApiController extends Controller
|
||||||
$done = $module === 'Admin' ? false : $this->app->moduleManager->uninstall($module);
|
$done = $module === 'Admin' ? false : $this->app->moduleManager->uninstall($module);
|
||||||
$msg = $done ? 'Module successfully uninstalled.' : 'Module not uninstalled.';
|
$msg = $done ? 'Module successfully uninstalled.' : 'Module not uninstalled.';
|
||||||
|
|
||||||
|
$new = clone $old;
|
||||||
|
$new->setStatus(ModuleStatusUpdateType::DELETE);
|
||||||
|
ModuleMapper::delete($new);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
$done = false;
|
$done = false;
|
||||||
|
|
@ -1159,21 +1177,22 @@ final class ApiController extends Controller
|
||||||
$response->header->status = RequestStatusCode::R_400;
|
$response->header->status = RequestStatusCode::R_400;
|
||||||
}
|
}
|
||||||
ModuleMapper::clearCache();
|
ModuleMapper::clearCache();
|
||||||
$new = ModuleMapper::get($module);
|
|
||||||
|
|
||||||
$this->app->eventManager->triggerSimilar(
|
if ($done) {
|
||||||
'POST:Module:Admin-module-status-update', '',
|
$new = ModuleMapper::get($module);
|
||||||
[
|
|
||||||
$request->header->account,
|
|
||||||
$old, $new,
|
|
||||||
StringUtils::intHash(ModuleMapper::class), 'module-status',
|
|
||||||
$module,
|
|
||||||
self::NAME,
|
|
||||||
$request->getOrigin(),
|
|
||||||
]
|
|
||||||
);
|
|
||||||
|
|
||||||
if (!$done) {
|
$this->app->eventManager->triggerSimilar(
|
||||||
|
'POST:Module:Admin-module-status-update', '',
|
||||||
|
[
|
||||||
|
$request->header->account,
|
||||||
|
$old, $new,
|
||||||
|
StringUtils::intHash(ModuleMapper::class), 'module-status',
|
||||||
|
$module,
|
||||||
|
self::NAME,
|
||||||
|
$request->getOrigin(),
|
||||||
|
]
|
||||||
|
);
|
||||||
|
} else {
|
||||||
$response->header->status = RequestStatusCode::R_400;
|
$response->header->status = RequestStatusCode::R_400;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -41,10 +41,9 @@ class ModuleTest extends \PHPUnit\Framework\TestCase
|
||||||
*/
|
*/
|
||||||
public function testDefault() : void
|
public function testDefault() : void
|
||||||
{
|
{
|
||||||
self::assertEquals(0, $this->module->getId());
|
self::assertEquals('', $this->module->getId());
|
||||||
self::assertInstanceOf('\DateTimeImmutable', $this->module->createdAt);
|
self::assertInstanceOf('\DateTimeImmutable', $this->module->createdAt);
|
||||||
self::assertEquals('', $this->module->name);
|
self::assertEquals('', $this->module->name);
|
||||||
self::assertEquals('', $this->module->description);
|
|
||||||
self::assertEquals(ModuleStatus::INACTIVE, $this->module->getStatus());
|
self::assertEquals(ModuleStatus::INACTIVE, $this->module->getStatus());
|
||||||
self::assertEquals(\json_encode($this->module->jsonSerialize()), $this->module->__toString());
|
self::assertEquals(\json_encode($this->module->jsonSerialize()), $this->module->__toString());
|
||||||
self::assertEquals($this->module->jsonSerialize(), $this->module->toArray());
|
self::assertEquals($this->module->jsonSerialize(), $this->module->toArray());
|
||||||
|
|
@ -61,17 +60,6 @@ class ModuleTest extends \PHPUnit\Framework\TestCase
|
||||||
self::assertEquals('Name', $this->module->name);
|
self::assertEquals('Name', $this->module->name);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @testdox The description can be set and returned
|
|
||||||
* @covers Modules\Admin\Models\Module
|
|
||||||
* @group module
|
|
||||||
*/
|
|
||||||
public function testDescriptionInputOutput() : void
|
|
||||||
{
|
|
||||||
$this->module->description = 'Desc';
|
|
||||||
self::assertEquals('Desc', $this->module->description);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @testdox The status can be set and returned
|
* @testdox The status can be set and returned
|
||||||
* @covers Modules\Admin\Models\Module
|
* @covers Modules\Admin\Models\Module
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user