48 lines
981 B
Swift
48 lines
981 B
Swift
//
|
|
// CardDataTests.swift
|
|
// PSCB-OOS-iOSTests
|
|
//
|
|
// Created by Antonov Ilia on 26.10.2020.
|
|
//
|
|
|
|
import Foundation
|
|
import XCTest
|
|
|
|
@testable import PSCBOnline
|
|
|
|
final class CardDataTests: XCTestCase {
|
|
|
|
internal static let testCard = CardData(
|
|
pan: "4200111122223333",
|
|
expiryYear: 2017,
|
|
expiryMonth: 5,
|
|
cvCode: "123",
|
|
cardholder: "IVANOV IVAN"
|
|
)!
|
|
|
|
func testSanity() {
|
|
// given:
|
|
let card = Self.testCard
|
|
|
|
// expect:
|
|
XCTAssertEqual("05", card.getExpMonthString())
|
|
XCTAssertEqual("17", card.getExpYearString())
|
|
}
|
|
|
|
func testCryptogram() {
|
|
// given:
|
|
let card = Self.testCard
|
|
|
|
// expect:
|
|
XCTAssertNoThrow(try card.toCryptgramString())
|
|
|
|
// when:
|
|
let string = try! card.toCryptgramString()
|
|
|
|
// then:
|
|
XCTAssertFalse(string.isEmpty)
|
|
XCTAssertTrue(string.count == 88)
|
|
}
|
|
|
|
}
|