2
0

PaddingTests.swift 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. //
  2. // PaddingTests.swift
  3. // CryptoSwift
  4. //
  5. // Created by Marcin Krzyzanowski on 27/12/14.
  6. // Copyright (c) 2014 Marcin Krzyzanowski. All rights reserved.
  7. //
  8. import XCTest
  9. @testable import CryptoSwift
  10. final class PaddingTests: XCTestCase {
  11. func testPKCS7_0() {
  12. let input:[UInt8] = [1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6]
  13. let expected:[UInt8] = [1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16]
  14. let padded = PKCS7().add(input, blockSize: 16)
  15. XCTAssertEqual(padded, expected, "PKCS7 failed")
  16. let clean = try! PKCS7().remove(padded, blockSize: nil)
  17. XCTAssertEqual(clean, input, "PKCS7 failed")
  18. }
  19. func testPKCS7_1() {
  20. let input:[UInt8] = [1,2,3,4,5,6,7,8,9,0,1,2,3,4,5]
  21. let expected:[UInt8] = [1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,1]
  22. let padded = PKCS7().add(input, blockSize: 16)
  23. XCTAssertEqual(padded, expected, "PKCS7 failed")
  24. let clean = try! PKCS7().remove(padded, blockSize: nil)
  25. XCTAssertEqual(clean, input, "PKCS7 failed")
  26. }
  27. func testPKCS7_2() {
  28. let input:[UInt8] = [1,2,3,4,5,6,7,8,9,0,1,2,3,4]
  29. let expected:[UInt8] = [1,2,3,4,5,6,7,8,9,0,1,2,3,4,2,2]
  30. let padded = PKCS7().add(input, blockSize: 16)
  31. XCTAssertEqual(padded, expected, "PKCS7 failed")
  32. let clean = try! PKCS7().remove(padded, blockSize: nil)
  33. XCTAssertEqual(clean, input, "PKCS7 failed")
  34. }
  35. }