ApplicationDescriptor desc = ApplicationDescriptor.create(appClass);
ControllersDescriptor controllerDesc = new ControllersDescriptor(desc);
ControllerResolver<ControllerHandler> resolver = controllerDesc.getResolver();
//
ControllerHandler handler = resolver.resolve((String)null, "noArg", Collections.<String>emptySet());
assertEquals("noArg", handler.getName());
assertSame(handler.getType(), aClass);
//
handler = resolver.resolve((String)null, "fooArg", Collections.<String>emptySet());
assertEquals("fooArg", handler.getName());
assertSame(handler.getType(), aClass);
//
handler = resolver.resolve((String)null, "fooArg", Collections.<String>singleton("foo"));
assertEquals("fooArg", handler.getName());
assertSame(handler.getType(), aClass);
//
handler = resolver.resolve((String)null, "fooArg", Collections.<String>singleton("bar"));
assertNull(handler);
}