getRegistrationContext()?->registerConfigLexicon(TestConfigLexicon_I::APPID, TestConfigLexicon_I::class); $bootstrapCoordinator->getRegistrationContext()?->registerConfigLexicon(TestConfigLexicon_N::APPID, TestConfigLexicon_N::class); $bootstrapCoordinator->getRegistrationContext()?->registerConfigLexicon(TestConfigLexicon_W::APPID, TestConfigLexicon_W::class); $bootstrapCoordinator->getRegistrationContext()?->registerConfigLexicon(TestConfigLexicon_E::APPID, TestConfigLexicon_E::class); $this->appConfig = Server::get(IAppConfig::class); $this->userConfig = Server::get(IUserConfig::class); } protected function tearDown(): void { parent::tearDown(); $this->appConfig->deleteApp(TestConfigLexicon_I::APPID); $this->appConfig->deleteApp(TestConfigLexicon_N::APPID); $this->appConfig->deleteApp(TestConfigLexicon_W::APPID); $this->appConfig->deleteApp(TestConfigLexicon_E::APPID); $this->userConfig->deleteApp(TestConfigLexicon_I::APPID); $this->userConfig->deleteApp(TestConfigLexicon_N::APPID); $this->userConfig->deleteApp(TestConfigLexicon_W::APPID); $this->userConfig->deleteApp(TestConfigLexicon_E::APPID); } public function testAppLexiconSetCorrect() { $this->assertSame(true, $this->appConfig->setValueString(TestConfigLexicon_E::APPID, 'key1', 'new_value')); $this->assertSame(true, $this->appConfig->isLazy(TestConfigLexicon_E::APPID, 'key1')); $this->assertSame(true, $this->appConfig->isSensitive(TestConfigLexicon_E::APPID, 'key1')); $this->appConfig->deleteKey(TestConfigLexicon_E::APPID, 'key1'); } public function testAppLexiconGetCorrect() { $this->assertSame('abcde', $this->appConfig->getValueString(TestConfigLexicon_E::APPID, 'key1', 'default')); } public function testAppLexiconSetIncorrectValueType() { $this->expectException(AppConfigTypeConflictException::class); $this->appConfig->setValueInt(TestConfigLexicon_E::APPID, 'key1', -1); } public function testAppLexiconGetIncorrectValueType() { $this->expectException(AppConfigTypeConflictException::class); $this->appConfig->getValueInt(TestConfigLexicon_E::APPID, 'key1'); } public function testAppLexiconIgnore() { $this->appConfig->setValueString(TestConfigLexicon_I::APPID, 'key_ignore', 'new_value'); $this->assertSame('new_value', $this->appConfig->getValueString(TestConfigLexicon_I::APPID, 'key_ignore', '')); } public function testAppLexiconNotice() { $this->appConfig->setValueString(TestConfigLexicon_N::APPID, 'key_notice', 'new_value'); $this->assertSame('new_value', $this->appConfig->getValueString(TestConfigLexicon_N::APPID, 'key_notice', '')); } public function testAppLexiconWarning() { $this->appConfig->setValueString(TestConfigLexicon_W::APPID, 'key_warning', 'new_value'); $this->assertSame('', $this->appConfig->getValueString(TestConfigLexicon_W::APPID, 'key_warning', '')); } public function testAppLexiconSetException() { $this->expectException(AppConfigUnknownKeyException::class); $this->appConfig->setValueString(TestConfigLexicon_E::APPID, 'key_exception', 'new_value'); $this->assertSame('', $this->appConfig->getValueString(TestConfigLexicon_E::APPID, 'key3', '')); } public function testAppLexiconGetException() { $this->expectException(AppConfigUnknownKeyException::class); $this->appConfig->getValueString(TestConfigLexicon_E::APPID, 'key_exception'); } public function testUserLexiconSetCorrect() { $this->assertSame(true, $this->userConfig->setValueString('user1', TestConfigLexicon_E::APPID, 'key1', 'new_value')); $this->assertSame(true, $this->userConfig->isLazy('user1', TestConfigLexicon_E::APPID, 'key1')); $this->assertSame(true, $this->userConfig->isSensitive('user1', TestConfigLexicon_E::APPID, 'key1')); $this->userConfig->deleteKey(TestConfigLexicon_E::APPID, 'key1'); } public function testUserLexiconGetCorrect() { $this->assertSame('abcde', $this->userConfig->getValueString('user1', TestConfigLexicon_E::APPID, 'key1', 'default')); } public function testUserLexiconSetIncorrectValueType() { $this->expectException(TypeConflictException::class); $this->userConfig->setValueInt('user1', TestConfigLexicon_E::APPID, 'key1', -1); } public function testUserLexiconGetIncorrectValueType() { $this->expectException(TypeConflictException::class); $this->userConfig->getValueInt('user1', TestConfigLexicon_E::APPID, 'key1'); } public function testUserLexiconIgnore() { $this->userConfig->setValueString('user1', TestConfigLexicon_I::APPID, 'key_ignore', 'new_value'); $this->assertSame('new_value', $this->userConfig->getValueString('user1', TestConfigLexicon_I::APPID, 'key_ignore', '')); } public function testUserLexiconNotice() { $this->userConfig->setValueString('user1', TestConfigLexicon_N::APPID, 'key_notice', 'new_value'); $this->assertSame('new_value', $this->userConfig->getValueString('user1', TestConfigLexicon_N::APPID, 'key_notice', '')); } public function testUserLexiconWarning() { $this->userConfig->setValueString('user1', TestConfigLexicon_W::APPID, 'key_warning', 'new_value'); $this->assertSame('', $this->userConfig->getValueString('user1', TestConfigLexicon_W::APPID, 'key_warning', '')); } public function testUserLexiconSetException() { $this->expectException(UnknownKeyException::class); $this->userConfig->setValueString('user1', TestConfigLexicon_E::APPID, 'key_exception', 'new_value'); $this->assertSame('', $this->userConfig->getValueString('user1', TestConfigLexicon_E::APPID, 'key3', '')); } public function testUserLexiconGetException() { $this->expectException(UnknownKeyException::class); $this->userConfig->getValueString('user1', TestConfigLexicon_E::APPID, 'key_exception'); } }