Struct gotham::plain::test::TestServer
source · pub struct TestServer { /* private fields */ }
Expand description
The TestServer
type, which is used as a harness when writing test cases for Hyper services
(which Gotham’s Router
is). An instance of TestServer
is run asynchronously within the
current thread, and is only accessible by a client returned from the TestServer
.
§Examples
use gotham::test::TestServer;
let test_server = TestServer::new(|| Ok(my_handler)).unwrap();
let response = test_server.client().get("http://localhost/").perform().unwrap();
assert_eq!(response.status(), StatusCode::ACCEPTED);
Implementations§
source§impl TestServer
impl TestServer
sourcepub fn new<NH: NewHandler + 'static>(new_handler: NH) -> Result<TestServer>
pub fn new<NH: NewHandler + 'static>(new_handler: NH) -> Result<TestServer>
Creates a TestServer
instance for the Handler
spawned by new_handler
. This server has
the same guarantee given by hyper::server::Http::bind
, that a new service will be spawned
for each connection.
Timeout will be set to 10 seconds.
sourcepub fn with_timeout<NH: NewHandler + 'static>(
new_handler: NH,
timeout: u64
) -> Result<TestServer>
pub fn with_timeout<NH: NewHandler + 'static>( new_handler: NH, timeout: u64 ) -> Result<TestServer>
Sets the request timeout to timeout
seconds and returns a new TestServer
.
sourcepub fn client(&self) -> TestClient<Self, TestConnect>
pub fn client(&self) -> TestClient<Self, TestConnect>
Returns a client connected to the TestServer
. The transport is handled internally.
Trait Implementations§
source§impl Clone for TestServer
impl Clone for TestServer
source§fn clone(&self) -> TestServer
fn clone(&self) -> TestServer
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Server for TestServer
impl Server for TestServer
source§fn run_future<F, O>(&self, future: F) -> Owhere
F: Future<Output = O>,
fn run_future<F, O>(&self, future: F) -> Owhere
F: Future<Output = O>,
Runs a Future until it resolves.
source§fn request_expiry(&self) -> Sleep ⓘ
fn request_expiry(&self) -> Sleep ⓘ
Returns a Delay that will expire when a request should.
Auto Trait Implementations§
impl Freeze for TestServer
impl RefUnwindSafe for TestServer
impl Send for TestServer
impl Sync for TestServer
impl Unpin for TestServer
impl UnwindSafe for TestServer
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more