Skip to content

Instantly share code, notes, and snippets.

@fabiorecife
Created October 8, 2011 16:43
Show Gist options
  • Save fabiorecife/1272525 to your computer and use it in GitHub Desktop.
Save fabiorecife/1272525 to your computer and use it in GitHub Desktop.
how to test a Router restlet
package net.fabioalmeida.test.router;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
import org.restlet.Context;
import org.restlet.Request;
import org.restlet.Response;
import org.restlet.Restlet;
import org.restlet.data.Reference;
import org.restlet.routing.Router;
import org.restlet.routing.TemplateRoute;
import org.restlet.util.RouteList;
class HomePageRestlet extends Restlet {
public HomePageRestlet() {
super();
setAuthor("Fabio");
}
public HomePageRestlet(Context context) {
super(context);
setAuthor("Fabio");
}
}
public class RestletRouterTest {
@Test
public void testHomePage() throws Exception {
Router router = new Router();
HomePageRestlet homePageRestlet = new HomePageRestlet();
HomePageRestlet homePageRestlet2 = new HomePageRestlet();
router.attachDefault(homePageRestlet2);
Request request = new Request(org.restlet.data.Method.GET, new Reference("/teste"));
RouteList lista = router.getRoutes();
assertEquals(0,lista.size());
TemplateRoute template = (TemplateRoute) router.getNext(request, new Response(request));
Restlet restlet = template.getNext();
assertTrue(restlet.equals(homePageRestlet2));
router.attach("/teste",homePageRestlet);
assertEquals(1,lista.size());
template = (TemplateRoute) router.getNext(request, new Response(request));
restlet = template.getNext();
assertTrue(restlet.equals(homePageRestlet));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment