Package net.sourceforge.javautil.developer.web.unit.html

Source Code of net.sourceforge.javautil.developer.web.unit.html.HtmlUnitEntryPoint

package net.sourceforge.javautil.developer.web.unit.html;

import java.net.URL;

import org.apache.commons.httpclient.protocol.Protocol;

import com.gargoylesoftware.htmlunit.Page;
import com.gargoylesoftware.htmlunit.WebClient;

import net.sourceforge.javautil.classloader.boot.EntryPoint;
import net.sourceforge.javautil.classloader.boot.EntryPointConfiguration;
import net.sourceforge.javautil.classloader.boot.EntryPointConsole;
import net.sourceforge.javautil.classloader.boot.EntryPointSettings;
import net.sourceforge.javautil.classloader.boot.EntryPointTypeAbstract;
import net.sourceforge.javautil.common.URLStreamHandlerFactoryComposite;
import net.sourceforge.javautil.common.coersion.CoersionContext;
import net.sourceforge.javautil.common.io.VirtualArtifact;
import net.sourceforge.javautil.common.io.impl.SystemDirectory;
import net.sourceforge.javautil.developer.web.unit.mockbrowser.MockBrowser;
import net.sourceforge.javautil.developer.web.unit.mockserver.MockServer;
import net.sourceforge.javautil.developer.web.unit.mockserver.MockServerHostURLStreamHandler;
import net.sourceforge.javautil.groovy.cli.GroovyCLI;
import net.sourceforge.javautil.groovy.cli.GroovyCLICommandSet;
import net.sourceforge.javautil.groovy.cli.GroovyRunCommand;
import net.sourceforge.javautil.groovy.dsl.GroovyDSLContext;
import net.sourceforge.javautil.groovy.dsl.GroovyMetaClassCreationHandle;
import net.sourceforge.javautil.groovy.dsl.impl.standard.GroovyDSLManagerStandard;
import net.sourceforge.javautil.web.server.WebServerHost;
import net.sourceforge.javautil.web.server.application.impl.WebApplicationStandard;
import net.sourceforge.javautil.web.server.impl.WebServerConnectorHTTP;
import net.sourceforge.javautil.web.server.impl.tomcat.TomcatHost;
import net.sourceforge.javautil.web.server.impl.tomcat.TomcatWebServer;

/**
* This will boot strap the unit test.
*
* @author elponderador
* @author $Author$
* @version $Id$
*/
public class HtmlUnitEntryPoint extends EntryPointTypeAbstract {

  public HtmlUnitEntryPoint(EntryPoint entryPoint, EntryPointSettings settings) {
    super(entryPoint, settings);
  }

  public void main(EntryPointConfiguration config) throws Throwable {
   
    TomcatWebServer server = new TomcatWebServer();
    server.initialize();

    server.addConnector(new WebServerConnectorHTTP("default", "localhost", 80, false));

    WebServerHost host = server.createHost("default", "/", true);
   
    server.start();
   
    GroovyMetaClassCreationHandle.bootstrap();
    CoersionContext.detectCoersions();
    GroovyDSLContext.setGlobalManager(new GroovyDSLManagerStandard().initialize());
   
    GroovyCLI cli = new GroovyCLI();
   
    WebClient client = new WebClient();
   
    client.setThrowExceptionOnFailingStatusCode(false);
    client.setThrowExceptionOnScriptError(false);
   
    cli.getDomain().setVariable("server", server);
    cli.getDomain().setVariable("host", host);
    cli.getDomain().setVariable("client", client);
   
    cli.getImports().add(VirtualArtifact.class.getPackage().getName());
    cli.getImports().add(SystemDirectory.class.getPackage().getName());
    cli.getImports().add(WebApplicationStandard.class.getPackage().getName());
   
    cli.getSet().add(new GroovyRunCommand(cli.getCompiler(), "run"));
   
    cli.initialize();
    cli.run();
   
  }

}
TOP

Related Classes of net.sourceforge.javautil.developer.web.unit.html.HtmlUnitEntryPoint

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.