Răsfoiți Sursa

Change scheme "SecEncodeTransformTests" containing Base32 tests

It can measuring SecTransform and Base32.framework by running this test only.
Norio Nomura 10 ani în urmă
părinte
comite
f1e0d7192c
1 a modificat fișierele cu 37 adăugiri și 12 ștergeri
  1. 37 12
      SecEncodeTransformTests/SecEncodeTransformTests.swift

+ 37 - 12
SecEncodeTransformTests/SecEncodeTransformTests.swift

@@ -9,18 +9,22 @@
 import Foundation
 import XCTest
 import Security
+import Base32
+
+let vectors: [(String, String, String)] = [
+    ("", "", ""),
+    ("f", "MY======", "CO======"),
+    ("fo", "MZXQ====", "CPNG===="),
+    ("foo", "MZXW6===", "CPNMU==="),
+    ("foob", "MZXW6YQ=", "CPNMUOG="),
+    ("fooba", "MZXW6YTB", "CPNMUOJ1"),
+    ("foobar", "MZXW6YTBOI======", "CPNMUOJ1E8======"),
+]
+
+let convertedVectors = vectors.map {($0.dataUsingUTF8StringEncoding, $1, $2)}
 
 class SecEncodeTransformTests: XCTestCase {
     
-    let vectors: [(String,String,String)] = [
-        ("", "", ""),
-        ("f", "MY======", "CO======"),
-        ("fo", "MZXQ====", "CPNG===="),
-        ("foo", "MZXW6===", "CPNMU==="),
-        ("foob", "MZXW6YQ=", "CPNMUOG="),
-        ("fooba", "MZXW6YTB", "CPNMUOJ1"),
-        ("foobar", "MZXW6YTBOI======", "CPNMUOJ1E8======"),
-    ]
     
     override func setUp() {
         super.setUp()
@@ -33,10 +37,9 @@ class SecEncodeTransformTests: XCTestCase {
     }
     
     // MARK: https://tools.ietf.org/html/rfc4648
-    
+
     // MARK: Using SecEncodeTransform
     func test_RFC4648_Encode_UsingSecEncodeTransform() {
-        let convertedVectors = self.vectors.map {($0.dataUsingUTF8StringEncoding, $1, $2)}
         self.measureBlock{
             for _ in 0...100 {
                 for (test, expect, expectHex) in convertedVectors {
@@ -48,7 +51,6 @@ class SecEncodeTransformTests: XCTestCase {
     }
     
     func test_RFC4648_Decode_UsingSecEncodeTransform() {
-        let convertedVectors = self.vectors.map {($0.dataUsingUTF8StringEncoding, $1, $2)}
         self.measureBlock{
             for _ in 0...100 {
                 for (expect, test, testHex) in convertedVectors {
@@ -58,4 +60,27 @@ class SecEncodeTransformTests: XCTestCase {
             }
         }
     }
+    
+    // MARK: Using Base32
+    func test_RFC4648_Encode_UsingBase32() {
+        self.measureBlock{
+            for _ in 0...100 {
+                for (test, expect, expectHex) in convertedVectors {
+                    let result = base32Encode(test)
+                    XCTAssertEqual(result, expect, "base32Encode for \(test)")
+                }
+            }
+        }
+    }
+    
+    func test_RFC4648_Decode_UsingBase32() {
+        self.measureBlock{
+            for _ in 0...100 {
+                for (expect, test, testHex) in convertedVectors {
+                    let result = base32DecodeToData(test)
+                    XCTAssertEqual(result!, expect, "base32Decode for \(test)")
+                }
+            }
+        }
+    }
 }