Files
sodalive-ios/work/tests/KakaoPostcodeResultCheck.swift
T

26 lines
1.3 KiB
Swift

import Foundation
@main
enum KakaoPostcodeResultCheck {
static func main() {
let result = KakaoPostcodeResult(payload: [
"zonecode": "01234", "address": "서울 지번 주소", "roadAddress": "다른 도로명 주소"
])
precondition(result?.zonecode == "01234", "preserve leading zero")
precondition(result?.address == "서울 지번 주소", "use exact address, not roadAddress")
let exact = KakaoPostcodeResult(payload: ["zonecode": " 01234 ", "address": " 주소 "])
precondition(exact?.zonecode == " 01234 " && exact?.address == " 주소 ", "do not rewrite values")
let invalid: [Any] = [
"not a dictionary", [:], ["address": "주소"], ["zonecode": "01234"],
["zonecode": 1234, "address": "주소"], ["zonecode": "01234", "address": 1],
["zonecode": "", "address": "주소"], ["zonecode": " \n", "address": "주소"],
["zonecode": "01234", "address": ""], ["zonecode": "01234", "address": "\t\n"],
["zonecode": NSNull(), "address": "주소"], ["zonecode": "01234", "address": NSNull()]
]
for payload in invalid {
precondition(KakaoPostcodeResult(payload: payload) == nil, "reject malformed result")
}
print("PASS KakaoPostcodeResult: 15 assertions")
}
}