Пример #1
0
        public async Task EncryptionPasswordIsGeneratedIfNoneIsFound()
        {
            SecureStorageMock.Setup(d => d.GetValue(LegacyStorageService.AppKeychainId, null)).Returns(null as string);
            var contents = await Target.InsertOrReplaceAsync(CreateOTPGenerator(1));

            SecureStorageMock.Verify(d => d.GetValue(LegacyStorageService.AppKeychainId, null));
            SecureStorageMock.Verify(d => d.SetValue(LegacyStorageService.AppKeychainId, It.Is <string>(e => !string.IsNullOrEmpty(e))));
        }
Пример #2
0
        public void KeyExists_CheckExsitingForExistedKey_KeyExistedInStore()
        {
            var secureStorageMock    = new SecureStorageMock();
            var secureStorageService = new SecureStorageService();

            secureStorageService.SetSecureStorageInstance(secureStorageMock);
            var key   = "testKeyExists_Key";
            var value = "testKeyExists_Value";

            secureStorageMock.SetValue(key, value);
            var existed = secureStorageService.KeyExists(key);

            existed.Should().BeTrue();
        }
Пример #3
0
        public void GetValue_GetExistedValueWithCorrectKey_ReturnCorrectValue()
        {
            var secureStorageMock    = new SecureStorageMock();
            var secureStorageService = new SecureStorageService();

            secureStorageService.SetSecureStorageInstance(secureStorageMock);
            var key   = "testGetValue_Key";
            var value = "testGetValue_Value";

            secureStorageMock.SetValue(key, value);
            var  existedValue = secureStorageService.GetValue(key);
            bool isSameValue  = value.Equals(existedValue);

            isSameValue.Should().BeTrue();
        }
Пример #4
0
        public void SaveValue_SetValueSecureStore_ValueSaved()
        {
            var secureStorageMock    = new SecureStorageMock();
            var secureStorageService = new SecureStorageService();

            secureStorageService.SetSecureStorageInstance(secureStorageMock);

            var key   = "testSaveValue_Key";
            var value = "testSaveValue_Value";

            secureStorageService.SaveValue(key, value);
            var  savedValue  = secureStorageMock.GetValue(key);
            bool isSameValue = value.Equals(savedValue);

            isSameValue.Should().BeTrue();
        }
Пример #5
0
        public void Delete_DeleteExistedKeyValuePair_KeyValuePairDeleted()
        {
            var secureStorageMock    = new SecureStorageMock();
            var secureStorageService = new SecureStorageService();

            secureStorageService.SetSecureStorageInstance(secureStorageMock);
            var key   = "testDelete_Key";
            var value = "testDelete_Value";

            secureStorageMock.SetValue(key, value);
            var added = secureStorageMock.HasKey(key);

            secureStorageService.Delete(key);
            var deleted = !secureStorageMock.HasKey(key);

            (added && deleted).Should().BeTrue();
        }
Пример #6
0
        public async Task DataOperationWork()
        {
            string keychainKey = null;

            SecureStorageMock.Setup(d => d.SetValue(LegacyStorageService.AppKeychainId, It.IsAny <string>())).Callback((string d, string e) => keychainKey = e);
            SecureStorageMock.Setup(d => d.GetValue(LegacyStorageService.AppKeychainId, null)).Returns(keychainKey);

            await Target.ClearAsync();

            var contents = await Target.GetAllAsync();

            Assert.Empty(contents);

            foreach (var i in TestData)
            {
                await Target.InsertOrReplaceAsync(i);
            }

            contents = await Target.GetAllAsync();

            Assert.Equal(TestData.Length, contents.Count);
            foreach (var i in contents)
            {
                var match = TestData.First(d => d.Uid == i.Uid);
                Assert.Equal(match.AlgorithmName, i.AlgorithmName);
                Assert.Equal(match.AllowExporting, i.AllowExporting);
                Assert.Equal(match.Issuer, i.Issuer);
                Assert.Equal(match.NumDigits, i.NumDigits);
                Assert.Equal(match.Secret, i.Secret);
                Assert.Equal(match.SecretBase32, i.SecretBase32);

                await Target.DeleteAsync(i);
            }

            contents = await Target.GetAllAsync();

            Assert.Empty(contents);
        }