Antidote/AntidoteTests/KeychainManagerTests.swift

53 lines
1.7 KiB
Swift

// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
import XCTest
class KeychainManagerTests: XCTestCase {
func testToxPassword() {
let manager = KeychainManager()
manager.toxPasswordForActiveAccount = nil
XCTAssertNil(manager.toxPasswordForActiveAccount)
manager.toxPasswordForActiveAccount = "password"
XCTAssertEqual(manager.toxPasswordForActiveAccount!, "password")
manager.toxPasswordForActiveAccount = "another"
XCTAssertEqual(manager.toxPasswordForActiveAccount!, "another")
manager.toxPasswordForActiveAccount = nil
XCTAssertNil(manager.toxPasswordForActiveAccount)
manager.toxPasswordForActiveAccount = "some pass"
XCTAssertEqual(manager.toxPasswordForActiveAccount!, "some pass")
manager.deleteActiveAccountData()
XCTAssertNil(manager.toxPasswordForActiveAccount)
}
func testFailedPinAttemptsNumber() {
let manager = KeychainManager()
manager.failedPinAttemptsNumber = nil
XCTAssertNil(manager.failedPinAttemptsNumber)
manager.failedPinAttemptsNumber = 5
XCTAssertEqual(manager.failedPinAttemptsNumber!, 5)
manager.failedPinAttemptsNumber = 8
XCTAssertEqual(manager.failedPinAttemptsNumber!, 8)
manager.failedPinAttemptsNumber = nil
XCTAssertNil(manager.failedPinAttemptsNumber)
manager.failedPinAttemptsNumber = 3
XCTAssertEqual(manager.failedPinAttemptsNumber!, 3)
manager.deleteActiveAccountData()
XCTAssertNil(manager.failedPinAttemptsNumber)
}
}