ConfigureRequests - garfieldmoore/Boomerang GitHub Wiki
Configuring Requests
Boomerang supports all HTTP verbs. You can configure these using Boomerangs simple fluent interface. The first thing you need to do is create an instance of Boomerang;
var host = Host.Boomerang.Create(
x => x.AtAddress("http://localhost:5100")
);
Now your ready to configure requests on the host. Examples of using the interface is below;
GET
The below code configures will return a OK response with a body of 'Coffee' for a request to http://localhost:5100/api/menu
host.Get("api/menu/items/123").Returns("Coffee", 200);
Post
The below code will return a Created response with a body of Mocha for a request to the relative address api/menu/items/123
host.Post("api/menu/items/123").Returns("Mocha", 201);
Put
host.Put("api/menu/items/123").Returns("Mocha", 201);
Delete
host.Delete("api/menu/items/123").Returns("Mocha", 202);
Request
All other verbs are supported via the general Request method. For example, the below code configures a Trace request;
host.Request("api/menu/items", "TRACE").Returns("", 200);
The second parameter defines the Http verb the request is configuring.
If you configure these several times you might consider creating you own extension method as below;
public static IRequestHandler Trace(this IBoomerang host, string relativeUrl)
{
return host.Request(relativeUrl, "TRACE");
}
Now you can simply use this extension method whereever you want to configure a Trace request;
host.Trace("api/menu/items").Returns("Trace", 200);