固执 0.7.3

Stubborn 0.7.3

测试已测试
Lang语言 SwiftSwift
许可证 MIT
发布最后发布2018年9月
SPM支持SPM

Mattias Eriksson维护。



Stubborn 0.7.3

  • Mattias Eriksson

简单的HTTP模拟框架。

安装

pod 'Stubborn'

用法

开始

添加stub时会自动完成

Stubborn.start()

成功

Stubborn.add(url: ".*/users") { request in
    print(request.method)
    print(request.url)
    print(request.body)
    print(request.headers)
    print(request.queryString)
    print(request.numberOfRequests)

    return [
        "users": [
            [
                "id": 123,
                "username": "materik"
            ],
            [
                "id": 124,
                "username": "leo"
            ]
        ]
    ]
}

失败

Stubborn.add(url: ".*/users", error: Stubborn.Error(400, "Something went wrong"))

延迟

等待响应一秒钟

1  Stubborn.add(url: ".*/users", dictionary: ["success": true])

从JSON文件中读取

Stubborn.add(url: ".*/users", resource: "MyResponse")

处理未处理的请求

Stubborn.unhandledRequest { request in
    print(request.method)
    print(request.url)
    print(request.body)
    print(request.headers)
    print(request.queryString)
}

重置

Stubborn.reset()

示例

QueryString(key: "page", value: "1")  Stubborn.add(url: ".*/get", dictionary: ["result": 1])
QueryString(key: "page", value: "2")  Stubborn.add(url: ".*/get", dictionary: ["result": 2])

Alamofire.request("https://httpbin.org/get?page=1").responseJSON {
print($0.value) // ["result": 1]
}

Alamofire.request("https://httpbin.org/get?page=2").responseJSON {
print($0.value) // ["result": 2]    
}