KeychainSwiftPrefixedTests.swift 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. import XCTest
  2. class KeychainWithPrefixTests: XCTestCase {
  3. var prefixed: KeychainSwift!
  4. var nonPrefixed: KeychainSwift!
  5. override func setUp() {
  6. super.setUp()
  7. prefixed = KeychainSwift(keyPrefix: "test_prefix_")
  8. nonPrefixed = KeychainSwift()
  9. prefixed.clear()
  10. nonPrefixed.clear()
  11. prefixed.lastQueryParameters = nil
  12. }
  13. func testKeyWithPrefix() {
  14. XCTAssertEqual("test_prefix_key", prefixed.keyWithPrefix("key"))
  15. XCTAssertEqual("key", nonPrefixed.keyWithPrefix("key"))
  16. }
  17. // MARK: - Set text
  18. // -----------------------
  19. func testSet() {
  20. let key = "key 1"
  21. XCTAssertTrue(prefixed.set("prefixed", forKey: key))
  22. XCTAssertTrue(nonPrefixed.set("non prefixed", forKey: key))
  23. XCTAssertEqual("prefixed", prefixed.get(key)!)
  24. XCTAssertEqual("non prefixed", nonPrefixed.get(key)!)
  25. }
  26. // MARK: - Set data
  27. // -----------------------
  28. func testSetData() {
  29. let key = "key 123"
  30. let dataPrefixed = "prefixed".data(using: String.Encoding.utf8)!
  31. let dataNonPrefixed = "non prefixed".data(using: String.Encoding.utf8)!
  32. XCTAssertTrue(prefixed.set(dataPrefixed, forKey: key))
  33. XCTAssertTrue(nonPrefixed.set(dataNonPrefixed, forKey: key))
  34. let dataFromKeychainPrefixed = prefixed.getData(key)!
  35. let textFromKeychainPrefixed = String(data: dataFromKeychainPrefixed, encoding: .utf8)!
  36. XCTAssertEqual("prefixed", textFromKeychainPrefixed)
  37. let dataFromKeychainNonPrefixed = nonPrefixed.getData(key)!
  38. let textFromKeychainNonPrefixed = String(data: dataFromKeychainNonPrefixed, encoding: .utf8)!
  39. XCTAssertEqual("non prefixed", textFromKeychainNonPrefixed)
  40. }
  41. // MARK: - Delete
  42. // -----------------------
  43. func testDelete() {
  44. let key = "key 1"
  45. XCTAssertTrue(prefixed.set("prefixed", forKey: key))
  46. XCTAssertTrue(nonPrefixed.set("non prefixed", forKey: key))
  47. prefixed.delete(key)
  48. XCTAssert(prefixed.get(key) == nil)
  49. XCTAssertFalse(nonPrefixed.get(key) == nil) // non-prefixed still exists
  50. }
  51. }