<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>com.vaadin</groupId>
        <artifactId>vaadin-parent</artifactId>
        <version>3.0.0</version>
        <relativePath />
    </parent>
    <artifactId>vaadin-testbench-parent</artifactId>
    <packaging>pom</packaging>
    <version>10.2-SNAPSHOT</version>
    <name>Vaadin TestBench parent</name>

    <organization>
        <name>Vaadin Ltd</name>
        <url>http://vaadin.com/</url>
    </organization>
    <url>http://vaadin.com/</url>
    <issueManagement>
        <system>trac</system>
        <url>http://dev.vaadin.com/</url>
    </issueManagement>
    <licenses>
        <license>
            <name>Vaadin Commercial License and Service Terms</name>
            <url>https://vaadin.com/commercial-license-and-service-terms</url>
        </license>
    </licenses>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <Implementation-Version>${project.version}</Implementation-Version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <selenium.version>4.43.0</selenium.version>
        <maven.compiler.release>21</maven.compiler.release>
        <maven.compiler.source>${maven.compiler.release}</maven.compiler.source>
        <maven.compiler.target>${maven.compiler.release}</maven.compiler.target>
        <spring.boot.version>4.0.4</spring.boot.version>
        <vaadin.version>25.2-SNAPSHOT</vaadin.version>
        <flow.version>25.2-SNAPSHOT</flow.version>
        <slf4j.version>2.0.7</slf4j.version>
        <jetty.version>12.1.3</jetty.version>
        <failsafe.version>3.5.2</failsafe.version>
        <surefire.version>3.5.2</surefire.version>
        <javassist.version>3.30.2-GA</javassist.version>
        <spotless.plugin.version>3.0.0</spotless.plugin.version>
        <currentYear>2026</currentYear>
        <skipUnitTests>${skipTests}</skipUnitTests>
    </properties>
    <modules>
        <module>vaadin-testbench-bom</module>
        <module>vaadin-testbench-shared</module>
        <module>vaadin-testbench-core</module>
        <module>vaadin-testbench-core-junit5</module>
        <module>vaadin-testbench-core-junit6</module>
        <module>vaadin-testbench-unit-shared</module>
        <module>vaadin-testbench-unit</module>
        <module>vaadin-testbench-unit-junit5</module>
        <module>vaadin-testbench-unit-junit6</module>
        <module>vaadin-testbench-unit-quarkus</module>
        <module>vaadin-testbench-loadtest</module>
    </modules>
    <repositories>
        <repository>
            <id>central</id>
            <url>https://repo.maven.apache.org/maven2</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>vaadin-prereleases</id>
            <url>https://maven.vaadin.com/vaadin-prereleases</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>central</id>
            <url>https://repo.maven.apache.org/maven2</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>vaadin-prereleases</id>
            <url>https://maven.vaadin.com/vaadin-prereleases</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.vaadin</groupId>
                <artifactId>license-checker</artifactId>
                <version>3.0.1</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <configuration>
                        <skip>${skipUnitTests}</skip>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <artifactId>maven-deploy-plugin</artifactId>
                <version>2.5</version>
                <configuration>
                    <skip>false</skip>
                </configuration>
            </plugin>
            <plugin>
                <groupId>com.diffplug.spotless</groupId>
                <artifactId>spotless-maven-plugin</artifactId>
                <version>${spotless.plugin.version}</version>
                <configuration>
                    <java>
                        <eclipse>
                            <file>${maven.multiModuleProjectDirectory}/eclipse/VaadinJavaConventions.xml</file>
                        </eclipse>
                        <endWithNewline/>
                        <removeUnusedImports/>
                        <importOrder>
                            <file>${maven.multiModuleProjectDirectory}/eclipse/flow.importorder</file>
                        </importOrder>
                        <forbidWildcardImports/>
                        <licenseHeader>
                            <file>${maven.multiModuleProjectDirectory}/src/license/vclst/header.txt</file>
                        </licenseHeader>
                    </java>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <profiles>
        <profile>
            <id>default</id>
            <activation>
                <property>
                    <name>!release</name>
                </property>
            </activation>
            <modules>
                <module>vaadin-testbench-integration-tests</module>
                <module>vaadin-testbench-integration-tests-junit5</module>
                <module>vaadin-testbench-integration-tests-junit6</module>
                <module>testing-support/uiunit-test-components</module>
                <module>testing-support/uiunit-component-testers</module>
            </modules>
        </profile>
    </profiles>
</project>
