CryptoSwiftTests.swift 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. //
  2. // CryptoSwiftTests.swift
  3. // CryptoSwiftTests
  4. //
  5. // Created by Marcin Krzyzanowski on 06/07/14.
  6. // Copyright (c) 2014 Marcin Krzyzanowski. All rights reserved.
  7. //
  8. import XCTest
  9. import CryptoSwift
  10. class CryptoSwiftTests: XCTestCase {
  11. override func setUp() {
  12. super.setUp()
  13. }
  14. override func tearDown() {
  15. super.tearDown()
  16. }
  17. func testOverflow() {
  18. var b:Byte = 128
  19. var shifted = (Byte)(b << 24)
  20. }
  21. func testIntExtension() {
  22. let i1:Int = 1024
  23. let i1Array = i1.bytes(32 / 8) // 32 bit
  24. let i1recovered = Int.withBytes(i1Array)
  25. XCTAssertEqual(i1, i1recovered, "Bytes conversion failed")
  26. let i2:Int = 1024
  27. let i2Array = i2.bytes(160 / 8) // 160 bit
  28. let i2recovered = Int.withBytes(i1Array)
  29. XCTAssertEqual(i2, i2recovered, "Bytes conversion failed")
  30. }
  31. func testMD5() {
  32. var data:NSData = NSData(bytes: [49, 50, 51] as [Byte], length: 3)
  33. // var data:NSData = NSData(bytes: [49, 50, 51, 50, 51, 50, 51, 50, 51, 50, 51, 50, 51, 50, 51, 50, 51, 50, 51, 50, 49, 50, 51, 50, 51, 50, 51, 50, 51, 50, 51, 50, 51, 50, 51, 50, 51, 50, 51, 50] as [Byte], length: 40)
  34. var md5data = data.md5()
  35. XCTAssertNotNil(md5data, "MD5 calculation failed")
  36. if let data = md5data {
  37. XCTAssertEqual(data.hexString, "202CB962AC59075B964B07152D234B70", "MD5 calculation failed");
  38. }
  39. }
  40. // func testSHA1() {
  41. // var data:NSData = NSData(bytes: [49, 50, 51] as [Byte], length: 3)
  42. // var sha1:NSData = data.sha1()
  43. // XCTAssertNotNil(sha1, "SHA1 calculation failed")
  44. //
  45. // var sha1String:String = sha1.toHexString()
  46. // XCTAssertEqualObjects(sha1String, "40BD001563085FC35165329EA1FF5C5ECBDBBEEF", "SHA1 calculation failed");
  47. // }
  48. //
  49. // func testSHA512() {
  50. // var data:NSData = NSData(bytes: [49, 50, 51] as [Byte], length: 3)
  51. // var sha512:NSData = data.sha512()
  52. // XCTAssertNotNil(sha512, "SHA512 calculation failed")
  53. //
  54. // var sha512String:String = sha512.toHexString()
  55. // XCTAssertEqualObjects(sha512String, "3C9909AFEC25354D551DAE21590BB26E38D53F2173B8D3DC3EEE4C047E7AB1C1EB8B85103E3BE7BA613B31BB5C9C36214DC9F14A42FD7A2FDB84856BCA5C44C2", "SHA512 calculation failed");
  56. // }
  57. //
  58. // func testHashEnum() {
  59. // var data:NSData = NSData(bytes: [49, 50, 51] as [Byte], length: 3)
  60. // let md5 = CryptoHash.md5.hash(data);
  61. // var md5String:String = md5.toHexString();
  62. // XCTAssertEqualObjects(md5String, "202CB962AC59075B964B07152D234B70", "MD5 calculation failed");
  63. // }
  64. }