2016-06-21 6 views
3

일부 단위 테스트를 작성하려고하며 매핑 가능한 개체의 더미 버전을 만드는 방법이 필요합니다. 예 :AlamoFireObjectMapper를 사용하여 수동으로 개체 매핑

class MyClassJsonResponse: Mappable { 

    var status: String? 
    var response: String? 
    var errorCode: SAErrorCode? 

    init() { 

    } 

    required init?(_ map: Map) { 

    } 

    func mapping(map: Map) { 
     status <- map["status"] 
     response <- map["response"] 
     errorCode <- (map["error_code"], SAErrorCodeTransform()) 
    } 
} 

일반적으로 Alamofire 호출에서 반환되지만 수동으로 만들고 빈 JSON 문자열을 수동으로 전달할 수 있습니까? 이것에 대한 조언은 크게 감사하겠습니다! 감사!

답변

0

개체 매퍼는 JSON 사전 개체를 전달할 수있는 클래스의 초기화 함수를 정의합니다. 테스트에서는 문자열에서 JSON 객체를 초기화하기와 그 사용 : 내 경우

let json = JSON.parse("{}") 
if let _json = json.dictionaryObject { 
    if let someObject = SomeObject(JSON: _json) { 
     // Some assertions here 
    } 
    else { 
     // Some assertions here about failure to map object, etc. 
    } 
} 

을 나는 용 QuickSpec이를 사용 SwiftyJSON을 가져 있지만, 일반 XCTest의 경우에 작동해야 해요.