Check the app included in this project for a complete example. Here are some of the basics:
1. Import the library
import VaporTestUtils
2. Setup your test case
Create a test case inheriting from VaporTestCase. Override computed properties booter and configurer and return the corresponding boot and configure functions from your app. Then, just start executing requests. Pretty simple stuff.
final class ExampleAppTests: VaporTestCase {
static var allTests = [
("testLinuxTestSuiteIncludesAllTests", testLinuxTestSuiteIncludesAllTests),
("testMyApp", testMyApp)
]
func testLinuxTestSuiteIncludesAllTests(){
assertLinuxTestCoverage(tests: type(of: self).allTests)
}
override var booter: AppBooter{
return ExampleApp.boot
}
override var configurer: AppConfigurer{
return ExampleApp.configure
}
override func setUp() {
super.setUp()
loggingLevel = .debug //This is optional. Logs all requests and responses to the console.
}
func testMyApp() throws {
let response = try executeRequest(method: .GET, path: "testing-vapor-apps")
XCTAssert(response.has(statusCode: .ok))
XCTAssert(response.has(content: "is super easy"))
}
}
Acknowledgements
Some extension methods were blatantly borrowed from LiveUI’s VaporTestTools. You should also check their library out as it serves a similar purpose (and might be even better).
Contributing
We would love you to contribute to VaporTestUtils, check the CONTRIBUTING file for more info.
License
VaporTestUtils is available under the MIT license. See the LICENSE file for more info.
VaporTestUtils
Installation
VaporTestUtils is available through Swift Package Manager. To install, simply add the following line to the dependencies in your Package.swift file.
Usage
Check the app included in this project for a complete example. Here are some of the basics:
1. Import the library
2. Setup your test case
Create a test case inheriting from
VaporTestCase
. Override computed propertiesbooter
andconfigurer
and return the correspondingboot
andconfigure
functions from your app. Then, just start executing requests. Pretty simple stuff.Acknowledgements
Some extension methods were blatantly borrowed from LiveUI’s VaporTestTools. You should also check their library out as it serves a similar purpose (and might be even better).
Contributing
We would love you to contribute to VaporTestUtils, check the CONTRIBUTING file for more info.
License
VaporTestUtils is available under the MIT license. See the LICENSE file for more info.