From eaa2265236c88142a2002c8ef1df754eacbd35a5 Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev <vladimir.krivosheev@jetbrains.com> Date: Mon, 8 Oct 2018 16:36:35 +0200 Subject: [PATCH] save in tests immediately --- platform/credential-store/src/PasswordSafeImpl.kt | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/platform/credential-store/src/PasswordSafeImpl.kt b/platform/credential-store/src/PasswordSafeImpl.kt index 448adb1d157c..9fd8e5c7a3cd 100644 --- a/platform/credential-store/src/PasswordSafeImpl.kt +++ b/platform/credential-store/src/PasswordSafeImpl.kt @@ -74,7 +74,7 @@ class PasswordSafeImpl @JvmOverloads constructor(val settings: PasswordSafeSetti private var _currentProvider: Lazy<CredentialStore> = if (provider == null) SynchronizedClearableLazy { computeProvider(settings) } else lazyOf(provider) - internal val currentProviderIfComputed: CredentialStore? + private val currentProviderIfComputed: CredentialStore? get() = if (_currentProvider.isInitialized()) _currentProvider.value else null internal var currentProvider: CredentialStore @@ -154,8 +154,15 @@ class PasswordSafeImpl @JvmOverloads constructor(val settings: PasswordSafeSetti override fun getAsync(attributes: CredentialAttributes): Promise<Credentials?> = runAsync { get(attributes) } override fun save() { - if ((currentProviderIfComputed as? KeePassCredentialStore ?: return).isNeedToSave()) { - saveAlarm.request() + val keePassCredentialStore = currentProviderIfComputed as? KeePassCredentialStore ?: return + + if (ApplicationManager.getApplication().isUnitTestMode) { + keePassCredentialStore.save() + return + } + + if (keePassCredentialStore.isNeedToSave()) { + saveAlarm.request(ApplicationManager.getApplication().isUnitTestMode) } } -- GitLab