All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.testatoo.config.TestatooConfig Maven / Gradle / Ivy

There is a newer version: 1.0-rc4
Show newest version
/**
 * Copyright (C) 2008 Ovea 
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.testatoo.config;

import org.testatoo.config.container.ContainerConfig;
import org.testatoo.config.container.ContainerType;
import org.testatoo.config.lifecycle.LifeCycleConfig;
import org.testatoo.config.selenium.SeleniumServerBuilder;
import org.testatoo.config.selenium.SeleniumServerConfig;
import org.testatoo.config.selenium.SeleniumSessionBuilder;
import org.testatoo.config.selenium.SeleniumSessionConfig;

/**
 * Main entry point to access all configuration and builders of Testatoo
 */
public interface TestatooConfig {

    /**
     * Import other modules to configure Testatoo
     *
     * @param modules list of {@link org.testatoo.config.TestatooModule} to import
     * @return this
     */
    TestatooConfig install(TestatooModule... modules);

    TestatooConfig useAnnotations();

    /**
     * @return the container registry in this configuration
     */
    ContainerConfig containers();

    /**
     * @return the builder of Testatoo containers (jetty, tomcat, ...)
     */
    ContainerType createContainer();

    /**
     * @return the Selenium Server registry in this configuration
     */
    SeleniumServerConfig seleniumServers();

    /**
     * @return the builder of Selenium servers
     */
    SeleniumServerBuilder createSeleniumServer();

    /**
     * @return the life cycle configurator
     */
    LifeCycleConfig lifecycle();

    /**
     * @return the Selenium sessions registry in this configuration
     */
    SeleniumSessionConfig seleniumSessions();

    /**
     * @return the builder of Selenium sessions
     */
    SeleniumSessionBuilder createSeleniumSession();

    ConcurrentTestingConfig useConcurrentTesting();

    int findFreePort();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy