tests: vault tests (#2366)

This commit is contained in:
Mo
2023-07-25 07:40:28 -05:00
committed by GitHub
parent 80436cd0b9
commit 596e041c42
47 changed files with 479 additions and 289 deletions

View File

@@ -72,12 +72,12 @@ const VaultItem = ({ vault }: Props) => {
}, [application.sharedVaults, vault])
const ensureVaultIsUnlocked = useCallback(async () => {
if (!application.vaults.isVaultLocked(vault)) {
if (!application.vaultLocks.isVaultLocked(vault)) {
return true
}
const unlocked = await application.vaultDisplayService.unlockVault(vault)
return unlocked
}, [application.vaultDisplayService, application.vaults, vault])
}, [application, vault])
const openEditModal = useCallback(async () => {
if (!(await ensureVaultIsUnlocked())) {

View File

@@ -3,7 +3,7 @@ import Modal, { ModalAction } from '@/Components/Modal/Modal'
import DecoratedInput from '@/Components/Input/DecoratedInput'
import { useApplication } from '@/Components/ApplicationProvider'
import {
ChangeVaultOptionsDTO,
ChangeVaultKeyOptionsDTO,
KeySystemRootKeyPasswordType,
KeySystemRootKeyStorageMode,
SharedVaultInviteServerHash,
@@ -89,7 +89,7 @@ const EditVaultModal: FunctionComponent<Props> = ({ onCloseDialog, existingVault
const isChangingPasswordType = vault.keyPasswordType !== passwordType
const isChangingKeyStorageMode = vault.keyStorageMode !== keyStorageMode
const getPasswordTypeParams = (): ChangeVaultOptionsDTO['newPasswordType'] => {
const getPasswordTypeParams = (): ChangeVaultKeyOptionsDTO['newPasswordType'] => {
if (!isChangingPasswordType) {
throw new Error('Password type is not changing')
}
@@ -135,7 +135,6 @@ const EditVaultModal: FunctionComponent<Props> = ({ onCloseDialog, existingVault
await application.vaults.createRandomizedVault({
name,
description,
storagePreference: keyStorageMode,
})
}
@@ -169,7 +168,7 @@ const EditVaultModal: FunctionComponent<Props> = ({ onCloseDialog, existingVault
[existingVault, handleDialogClose, handleSubmit],
)
if (existingVault && application.vaults.isVaultLocked(existingVault)) {
if (existingVault && application.vaultLocks.isVaultLocked(existingVault)) {
return <div>Vault is locked.</div>
}

View File

@@ -41,7 +41,7 @@ const ManyVaultSelectionMenu: FunctionComponent = () => {
<Icon type="safe-square" className="mr-2 text-neutral" />
<div className="flex w-full items-center gap-1">
{vault.name}
{application.vaults.isVaultLocked(vault) && <Icon className="ml-1" type="lock" size={'small'} />}
{application.vaultLocks.isVaultLocked(vault) && <Icon className="ml-1" type="lock" size={'small'} />}
</div>
</MenuSwitchButtonItem>
))}

View File

@@ -30,7 +30,7 @@ const SingleVaultSelectionMenu: FunctionComponent = () => {
<MenuRadioButtonItem key={vault.uuid} checked={isVaultVisible(vault)} onClick={() => selectVault(vault)}>
<div className="flex w-full items-center gap-1">
{vault.name}
{application.vaults.isVaultLocked(vault) && <Icon className="ml-1" type="lock" size={'small'} />}
{application.vaultLocks.isVaultLocked(vault) && <Icon className="ml-1" type="lock" size={'small'} />}
</div>
</MenuRadioButtonItem>
))}

View File

@@ -29,7 +29,7 @@ const AddToVaultMenuOption: FunctionComponent<Props> = ({ iconClassName, items }
const addItemsToVault = useCallback(
async (vault: VaultListingInterface) => {
if (application.vaults.isVaultLocked(vault)) {
if (application.vaultLocks.isVaultLocked(vault)) {
const unlocked = await application.vaultDisplayService.unlockVault(vault)
if (!unlocked) {
return
@@ -40,7 +40,7 @@ const AddToVaultMenuOption: FunctionComponent<Props> = ({ iconClassName, items }
await application.vaults.moveItemToVault(vault, item)
}
},
[application.vaultDisplayService, application.vaults, items],
[application, items],
)
const removeItemsFromVault = useCallback(async () => {
@@ -50,7 +50,7 @@ const AddToVaultMenuOption: FunctionComponent<Props> = ({ iconClassName, items }
continue
}
if (application.vaults.isVaultLocked(vault)) {
if (application.vaultLocks.isVaultLocked(vault)) {
const unlocked = await application.vaultDisplayService.unlockVault(vault)
if (!unlocked) {
return
@@ -58,7 +58,7 @@ const AddToVaultMenuOption: FunctionComponent<Props> = ({ iconClassName, items }
}
await application.vaults.removeItemFromVault(item)
}
}, [application.vaultDisplayService, application.vaults, items])
}, [application, items])
const doesVaultContainItems = (vault: VaultListingInterface) => {
return items.every((item) => item.key_system_identifier === vault.systemIdentifier)
@@ -140,7 +140,9 @@ const AddToVaultMenuOption: FunctionComponent<Props> = ({ iconClassName, items }
/>
<div className="flex w-full items-center">
{vault.name}
{application.vaults.isVaultLocked(vault) && <Icon className="ml-1" type="lock" size={'small'} />}
{application.vaultLocks.isVaultLocked(vault) && (
<Icon className="ml-1" type="lock" size={'small'} />
)}
</div>
</span>
</MenuItem>