in wagon-provider-test/src/main/java/org/apache/maven/wagon/http/HttpWagonTestCase.java [396:447]
public void testResourceExists429()
throws Exception
{
try
{
final AtomicBoolean called = new AtomicBoolean();
AbstractHandler handler = new AbstractHandler()
{
public void handle( String target, Request baseRequest, HttpServletRequest request,
HttpServletResponse response ) throws IOException, ServletException
{
if ( called.get() )
{
response.setStatus( HttpServletResponse.SC_INTERNAL_SERVER_ERROR );
baseRequest.setHandled( true );
}
else
{
called.set( true );
response.setStatus( SC_TOO_MANY_REQUESTS );
baseRequest.setHandled( true );
}
}
};
StreamingWagon wagon = (StreamingWagon) getWagon();
Server server = new Server( );
server.setHandler( handler );
addConnector( server );
server.start();
wagon.connect( new Repository( "id", getRepositoryUrl( server ) ) );
try
{
wagon.resourceExists( "resource" );
}
finally
{
wagon.disconnect();
server.stop();
}
fail();
}
catch ( TransferFailedException e )
{
assertTrue( true );
}
}