Test content of written vault config as well
While creating a vault, check also the content for the vault.cryptomator file.
This commit is contained in:
parent
f6c8554779
commit
a4762fb32a
@ -37,6 +37,7 @@ class MasterkeyCryptoCloudProviderTest {
|
||||
private CloudContentRepository cloudContentRepository;
|
||||
private CryptoCloudContentRepositoryFactory cryptoCloudContentRepositoryFactory;
|
||||
private Vault vault;
|
||||
private VaultConfig.VaultConfigBuilder vaultConfigBuilder;
|
||||
|
||||
private Cryptor cryptor;
|
||||
private FileNameCryptor fileNameCryptor;
|
||||
@ -45,12 +46,13 @@ class MasterkeyCryptoCloudProviderTest {
|
||||
private MasterkeyCryptoCloudProvider inTest;
|
||||
|
||||
@BeforeEach
|
||||
void setUp() {
|
||||
public void setUp() {
|
||||
context = Mockito.mock(Context.class);
|
||||
cloud = Mockito.mock(Cloud.class);
|
||||
cloudContentRepository = Mockito.mock(CloudContentRepository.class);
|
||||
cryptoCloudContentRepositoryFactory = Mockito.mock(CryptoCloudContentRepositoryFactory.class);
|
||||
vault = Mockito.mock(Vault.class);
|
||||
vaultConfigBuilder = VaultConfig.createVaultConfig().id("");
|
||||
|
||||
cryptor = Mockito.mock(Cryptor.class);
|
||||
fileNameCryptor = Mockito.mock(FileNameCryptor.class);
|
||||
@ -68,6 +70,7 @@ class MasterkeyCryptoCloudProviderTest {
|
||||
@DisplayName("create(\"/foo, foo\")")
|
||||
public void testCreateVault() throws BackendException {
|
||||
String masterkey = "{ \"version\": 999, \"scryptSalt\": \"AAAAAAAAAAA=\", \"scryptCostParam\": 32768, \"scryptBlockSize\": 8, \"primaryMasterKey\": \"D2kc+xBoAcVY+M7s74YBEy6l7ga2+Nz+HS5o0TQY3JMW1uQ5jTlLIQ==\", \"hmacMasterKey\": \"D2kc+xBoAcVY+M7s74YBEy6l7ga2+Nz+HS5o0TQY3JMW1uQ5jTlLIQ==\", \"versionMac\": \"trDKXqDhu94/VPuoWaQGBm8hwSPYc0D9t6DRRxKZ65k=\"}";
|
||||
String vaultConfig = "eyJraWQiOiJtYXN0ZXJrZXlmaWxlOm1hc3RlcmtleS5jcnlwdG9tYXRvciIsImFsZyI6IkhTNTEyIn0.eyJtYXhGaWxlbmFtZUxlbiI6MjIwLCJmb3JtYXQiOjgsImNpcGhlckNvbWJvIjoiU0lWX0NUUk1BQyJ9.umiAcGObWuVISugrQu16hznDHIFM7moD1ukA1r5V1DRA0GjHQk1p6S9hkL0PaMD7xl04jSttMRalOYU1sg4wqQ";
|
||||
|
||||
TestFolder rootFolder = new RootTestFolder(cloud);
|
||||
TestFolder foo = new TestFolder(rootFolder, "foo", "/foo");
|
||||
@ -85,11 +88,15 @@ class MasterkeyCryptoCloudProviderTest {
|
||||
return invocationOnMock.getArgument(0);
|
||||
});
|
||||
|
||||
// 2. initialize vault
|
||||
Mockito.when(cloudContentRepository.write(Mockito.eq(vaultFile), Mockito.any(DataSource.class), Mockito.eq(NO_OP_PROGRESS_AWARE), Mockito.eq(false), Mockito.anyLong())).thenAnswer(invocationOnMock -> {
|
||||
DataSource in = invocationOnMock.getArgument(1);
|
||||
String vaultConfigFileContent = new BufferedReader(new InputStreamReader(in.open(context), StandardCharsets.UTF_8)).lines().collect(Collectors.joining());
|
||||
assertThat(vaultConfigFileContent, is(vaultConfig));
|
||||
return invocationOnMock.getArgument(0);
|
||||
});
|
||||
|
||||
// 2. initialize vault:
|
||||
Mockito.when(cloudContentRepository.write(Mockito.eq(vaultFile), Mockito.any(DataSource.class), Mockito.eq(NO_OP_PROGRESS_AWARE), Mockito.eq(false), Mockito.anyLong())).thenReturn(vaultFile);
|
||||
|
||||
// 3. create root folder:
|
||||
// 3. create root folder
|
||||
String rootDirHash = "KG6TFDGKXGZEGWRZOGTDFDF4YEGAZO6Q";
|
||||
|
||||
TestFolder dFolder = new TestFolder(foo, "d", "/foo/" + DATA_DIR_NAME);
|
||||
@ -108,7 +115,7 @@ class MasterkeyCryptoCloudProviderTest {
|
||||
Mockito.when(cloudContentRepository.folder(lvl1Dir, lvl2Dir.getName())).thenReturn(lvl2Dir);
|
||||
Mockito.when(cloudContentRepository.create(lvl2Dir)).thenReturn(lvl2Dir);
|
||||
|
||||
inTest.create(foo, "foo");
|
||||
inTest.create(foo, "foo", vaultConfigBuilder);
|
||||
|
||||
Mockito.verify(cloudContentRepository).write(Mockito.eq(masterKeyFile), Mockito.any(DataSource.class), Mockito.eq(NO_OP_PROGRESS_AWARE), Mockito.eq(false), Mockito.anyLong());
|
||||
Mockito.verify(cloudContentRepository).write(Mockito.eq(vaultFile), Mockito.any(DataSource.class), Mockito.eq(NO_OP_PROGRESS_AWARE), Mockito.eq(false), Mockito.anyLong());
|
||||
|
Loading…
x
Reference in New Issue
Block a user