SimpleDavServerHandler simpleDavServerHandler = new SimpleDavServerHandler( servlet );
try
{
File pluginXmlFile = getTestFile( "src/test/resources/unit/deploy-dav/pom.xml" );
AbstractMojo mojo = getMojo( pluginXmlFile );
assertNotNull( mojo );
SiteMavenProjectStub siteMavenProjectStub =
new SiteMavenProjectStub( "src/test/resources/unit/deploy-dav/pom.xml" );
siteMavenProjectStub.getDistributionManagement().getSite()
.setUrl( "dav:http://toto.com/site/" );
setVariableValueToObject( mojo, "project", siteMavenProjectStub );
Settings settings = new Settings();
Proxy proxy = new Proxy();
//dummy proxy
proxy.setActive( true );
proxy.setHost( "localhost" );
proxy.setPort( simpleDavServerHandler.getPort() );
proxy.setProtocol( "dav" );
proxy.setUsername( "foo" );
proxy.setPassword( "titi" );
proxy.setNonProxyHosts( "www.google.com|*.somewhere.com" );
settings.addProxy( proxy );
setVariableValueToObject( mojo, "settings", settings );
MavenExecutionRequest request = new DefaultMavenExecutionRequest();
request.setProxies( Arrays.asList( proxy ) );
MavenSession mavenSession = new MavenSession( getContainer(), null, request, null );
setVariableValueToObject( mojo, "mavenSession", mavenSession );
File inputDirectory = new File( "src/test/resources/unit/deploy-dav/target/site" );
// test which mojo we are using
if ( ReflectionUtils.getFieldByNameIncludingSuperclasses( "inputDirectory", mojo.getClass() ) != null )
{
setVariableValueToObject( mojo, "inputDirectory", inputDirectory );
}
else
{
ArtifactRepositoryFactory artifactRepositoryFactory = getContainer().lookup( ArtifactRepositoryFactory.class );
setVariableValueToObject( mojo, "stagingDirectory", inputDirectory );
setVariableValueToObject( mojo, "reactorProjects", Collections.emptyList() );
setVariableValueToObject( mojo, "localRepository",
artifactRepositoryFactory.createArtifactRepository( "local", "foo", "default",
null, null ) );
setVariableValueToObject( mojo, "siteTool", getContainer().lookup( SiteTool.class ) );
setVariableValueToObject( mojo, "siteDirectory", new File("foo") );
setVariableValueToObject( mojo, "repositories", Collections.emptyList() );
}
mojo.execute();
assertContentInFiles();
assertTrue( requestsContainsProxyUse( servlet.httpRequests ) );
assertAtLeastOneRequestContainsHeader( servlet.httpRequests, "Proxy-Authorization" );
for ( HttpRequest rq : servlet.httpRequests )