示例#1
0
        public async Task CreateBackupWithShortSeed()
        {
            var seed = "11112222";

            SetupDirectoriesAndReturnPath(seed);

            var ex = await Assert.ThrowsAsync <ArgumentException>(() => EdgeClient.CreateBackupAsync(EdgeContext, seed));

            Assert.Equal(ex.Message, $"{nameof(seed)} should be 32 characters");
        }
示例#2
0
        public async Task RetrieveLatestBackup()
        {
            var seed = "00000000000000000000000000000000";

            SetupDirectoriesAndReturnPath(seed);
            await EdgeClient.CreateBackupAsync(EdgeContext, seed);

            var result = await EdgeClient.RetrieveBackupAsync(EdgeContext, seed);

            Assert.NotEmpty(result);
            Assert.IsType <Attachment>(result.First());
        }
示例#3
0
        public async Task ListBackups()
        {
            // change backupId to be retrieved from provisioning service
            // Wait one second
            await Task.Delay(TimeSpan.FromSeconds(1));

            var seed = "00000000000000000000000000000000";

            SetupDirectoriesAndReturnPath(seed);

            await EdgeClient.CreateBackupAsync(EdgeContext, seed);

            var result = await EdgeClient.ListBackupsAsync(EdgeContext);

            Assert.NotEmpty(result);
        }
示例#4
0
        public async Task CreateBackup()
        {
            var seed = "00000000000000000000000000000000";

            var path = SetupDirectoriesAndReturnPath(seed);

            await EdgeClient.CreateBackupAsync(EdgeContext, seed);

            var numDirsAfterBackup = Directory.GetDirectories(path).Length;
            var walletDir          = Directory.GetDirectories(path).First();
            var backupDir          = Directory.GetDirectories(walletDir).First();
            var backedUpWallet     = Directory.GetFiles(backupDir).First();

            Assert.True(Directory.Exists(path));
            Assert.True(numDirsAfterBackup > 0);
            Assert.True(File.Exists(backedUpWallet));
        }
示例#5
0
        public async Task RestoreAgentFromBackup()
        {
            var seed  = "00000000000000000000000000000000";
            var path  = SetupDirectoriesAndReturnPath(seed);
            var myDid = await Did.CreateAndStoreMyDidAsync(EdgeContext.Wallet, "{}");

            await EdgeClient.CreateBackupAsync(EdgeContext, seed);

            // Create a DID that we will retrieve and compare from imported wallet

            var attachments = await EdgeClient.RetrieveBackupAsync(EdgeContext, seed);

            await EdgeClient.RestoreFromBackupAsync(EdgeContext, seed, attachments);

            var newWallet = await WalletService.GetWalletAsync(AgentOptions.WalletConfiguration, AgentOptions.WalletCredentials);

            var myKey = await Did.KeyForLocalDidAsync(newWallet, myDid.Did);

            Assert.Equal(myKey, myDid.VerKey);
        }