add save and decrypt round trip
This commit is contained in:
parent
d4c61fbb4d
commit
f21431a243
1 changed files with 14 additions and 3 deletions
|
|
@ -128,10 +128,10 @@ final class PasswordStoreTest: XCTestCase {
|
||||||
let password3 = Password(name: "test3", path: "folder/test3.gpg", plainText: "lorem ipsum")
|
let password3 = Password(name: "test3", path: "folder/test3.gpg", plainText: "lorem ipsum")
|
||||||
let password4 = Password(name: "test4", path: "test4.gpg", plainText: "you are valuable and you matter")
|
let password4 = Password(name: "test4", path: "test4.gpg", plainText: "you are valuable and you matter")
|
||||||
|
|
||||||
[password1, password2, password3, password4].forEach { password in
|
for password in [password1, password2, password3, password4] {
|
||||||
expectation(forNotification: .passwordStoreUpdated, object: nil)
|
expectation(forNotification: .passwordStoreUpdated, object: nil)
|
||||||
|
|
||||||
let savedEntity = try? passwordStore.add(password: password)
|
let savedEntity = try passwordStore.add(password: password)
|
||||||
|
|
||||||
XCTAssertEqual(savedEntity!.name, password.name)
|
XCTAssertEqual(savedEntity!.name, password.name)
|
||||||
waitForExpectations(timeout: 1, handler: nil)
|
waitForExpectations(timeout: 1, handler: nil)
|
||||||
|
|
@ -147,6 +147,17 @@ final class PasswordStoreTest: XCTestCase {
|
||||||
XCTAssertEqual(passwordStore.numberOfLocalCommits, numLocalCommitsBefore + 4)
|
XCTAssertEqual(passwordStore.numberOfLocalCommits, numLocalCommitsBefore + 4)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func testAddAndDecryptRoundTrip() throws {
|
||||||
|
try cloneRepository(.empty)
|
||||||
|
try importSinglePGPKey()
|
||||||
|
|
||||||
|
let password = Password(name: "test", path: "test.gpg", plainText: "foobar")
|
||||||
|
let savedEntity = try passwordStore.add(password: password)
|
||||||
|
|
||||||
|
let decryptedPassword = try passwordStore.decrypt(passwordEntity: savedEntity!, requestPGPKeyPassphrase: requestPGPKeyPassphrase)
|
||||||
|
XCTAssertEqual(decryptedPassword.plainText, "foobar")
|
||||||
|
}
|
||||||
|
|
||||||
func testDeletePassword() throws {
|
func testDeletePassword() throws {
|
||||||
try cloneRepository(.withGPGID)
|
try cloneRepository(.withGPGID)
|
||||||
let numCommitsBefore = passwordStore.numberOfCommits!
|
let numCommitsBefore = passwordStore.numberOfCommits!
|
||||||
|
|
@ -235,7 +246,7 @@ final class PasswordStoreTest: XCTestCase {
|
||||||
let numCommitsBefore = passwordStore.numberOfCommits!
|
let numCommitsBefore = passwordStore.numberOfCommits!
|
||||||
let numLocalCommitsBefore = passwordStore.numberOfLocalCommits
|
let numLocalCommitsBefore = passwordStore.numberOfLocalCommits
|
||||||
|
|
||||||
_ = try? passwordStore.add(password: Password(name: "test", path: "test.gpg", plainText: "foobar"))
|
_ = try passwordStore.add(password: Password(name: "test", path: "test.gpg", plainText: "foobar"))
|
||||||
try passwordStore.delete(passwordEntity: passwordStore.fetchPasswordEntity(with: "personal/github.com.gpg")!)
|
try passwordStore.delete(passwordEntity: passwordStore.fetchPasswordEntity(with: "personal/github.com.gpg")!)
|
||||||
|
|
||||||
expectation(forNotification: .passwordStoreUpdated, object: nil)
|
expectation(forNotification: .passwordStoreUpdated, object: nil)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue