diff --git a/plugins/src/functionalTest/java/br/dev/pedrolamarao/gradle/metal/MultiProjectFunctionalTest.java b/plugins/src/functionalTest/java/br/dev/pedrolamarao/gradle/metal/MultiProjectFunctionalTest.java
deleted file mode 100644
index 9ec23c9..0000000
--- a/plugins/src/functionalTest/java/br/dev/pedrolamarao/gradle/metal/MultiProjectFunctionalTest.java
+++ /dev/null
@@ -1,105 +0,0 @@
-package br.dev.pedrolamarao.gradle.metal;
-
-import org.gradle.testkit.runner.GradleRunner;
-import org.junit.jupiter.api.Test;
-
-import java.nio.file.Files;
-
-public class MultiProjectFunctionalTest extends MetalTestBase
-{
- /**
- * There are two archive projects, foo and bar, with main C++ sources.
- * Both foo and bar test source set is empty.
- * Bar depends on foo.
- * Running check
must not try to run nonexistent test applications.
- * @see https://github.com/pedrolamarao/gradle-metal/issues/52
- */
- @Test
- void issue52 () throws Exception
- {
- final var fooDir = projectDir.resolve("foo");
- Files.createDirectories(fooDir);
- Files.writeString(fooDir.resolve("build.gradle.kts"),
- """
- plugins {
- id("br.dev.pedrolamarao.metal.archive")
- id("br.dev.pedrolamarao.metal.cpp")
- id("br.dev.pedrolamarao.metal.cxx")
- }
-
- metal {
- cpp {
- main {
- public = true
- }
- }
- }
- """);
-
- final var barDir = projectDir.resolve("bar");
- Files.createDirectories(barDir);
- Files.writeString(barDir.resolve("build.gradle.kts"),
- """
- plugins {
- id("br.dev.pedrolamarao.metal.archive")
- id("br.dev.pedrolamarao.metal.cxx")
- }
-
- dependencies {
- implementation(project(":foo"))
- }
- """);
-
- final var fooCppDir = fooDir.resolve("src/main/cpp");
- Files.createDirectories(fooCppDir);
- Files.writeString(fooCppDir.resolve("foo.h"),
- """
- #pragma once
-
- int foo (int argc, char * argv[]);
- """);
-
- final var fooCxxDir = fooDir.resolve("src/main/cxx");
- Files.createDirectories(fooCxxDir);
- Files.writeString(fooCxxDir.resolve("foo.cxx"),
- """
- #include
-
- int foo (int argc, char * argv[])
- {
- return 0;
- }
- """);
-
- final var barCxxDir = projectDir.resolve("bar/main/cxx");
- Files.createDirectories(barCxxDir);
- Files.writeString(barCxxDir.resolve("bar.cxx"),
- """
- #include
-
- int bar (int argc, char * argv[])
- {
- return foo(argc,argv);
- }
- """);
-
- Files.writeString(projectDir.resolve("build.gradle.kts"),
- """
- plugins {
- id("base")
- }
- """);
-
- Files.writeString(projectDir.resolve("settings.gradle.kts"),
- """
- include("bar")
- include("foo")
- """);
-
- GradleRunner.create()
- .withArguments("--configuration-cache","check")
- .withPluginClasspath()
- .withProjectDir(projectDir.toFile())
- .build();
- }
-}
diff --git a/plugins/src/functionalTest/java/br/dev/pedrolamarao/gradle/metal/asm/AsmFunctionalMetalTest.java b/plugins/src/functionalTest/java/br/dev/pedrolamarao/gradle/metal/asm/AsmFunctionalMetalTest.java
deleted file mode 100644
index cb886c7..0000000
--- a/plugins/src/functionalTest/java/br/dev/pedrolamarao/gradle/metal/asm/AsmFunctionalMetalTest.java
+++ /dev/null
@@ -1,165 +0,0 @@
-package br.dev.pedrolamarao.gradle.metal.asm;
-
-import br.dev.pedrolamarao.gradle.metal.MetalTestBase;
-import org.gradle.testkit.runner.GradleRunner;
-import org.junit.jupiter.api.Test;
-
-import java.io.IOException;
-import java.nio.file.Files;
-
-import static org.junit.jupiter.api.Assertions.*;
-
-public class AsmFunctionalMetalTest extends MetalTestBase
-{
- @Test
- public void compile () throws IOException
- {
- Files.createDirectories(projectDir.resolve("src/main/asm"));
-
- Files.writeString(projectDir.resolve("src/main/asm/bar.s"),
- """
- .global foo
- foo:
- ret
- """
- );
-
- Files.writeString(projectDir.resolve("build.gradle.kts"),
- """
- plugins {
- id("br.dev.pedrolamarao.metal.asm")
- }
-
- metal {
- asm {
- create("main")
- }
- }
- """
- );
-
- GradleRunner.create()
- .withArguments("--configuration-cache","compile-main-asm")
- .withPluginClasspath()
- .withProjectDir(projectDir.toFile())
- .build();
-
- assertTrue( Files.exists(projectDir.resolve("build/obj")) );
-
- try (var stream = Files.walk(projectDir.resolve("build/obj")).filter(Files::isRegularFile)) {
- assertEquals( 1, stream.count() );
- }
- }
-
- @Test
- public void compileOptions () throws IOException
- {
- Files.writeString(projectDir.resolve("build.gradle.kts"),
- """
- plugins {
- id("br.dev.pedrolamarao.metal.asm")
- }
-
- metal {
- compileOptions = listOf("--foo")
- asm { create("main") }
- }
-
- tasks.register("compileOptions") {
- val compileOptions = metal.asm.named("main").flatMap{it.compileOptions}
- doLast {
- print("${compileOptions.get()}")
- }
- }
- """
- );
-
- final var compileOptions = GradleRunner.create()
- .withArguments("--configuration-cache","--quiet","compileOptions")
- .withPluginClasspath()
- .withProjectDir(projectDir.toFile())
- .build();
-
- assertEquals("[--foo]",compileOptions.getOutput());
- }
-
- @Test
- public void targetDisabled () throws IOException
- {
- Files.createDirectories(projectDir.resolve("src/main/asm"));
-
- Files.writeString(projectDir.resolve("src/main/asm/bar.s"),
- """
- .global foo
- foo:
- ret
- """
- );
-
- Files.writeString(projectDir.resolve("build.gradle.kts"),
- """
- plugins {
- id("br.dev.pedrolamarao.metal.asm")
- }
-
- metal {
- asm {
- create("main") {
- targets = setOf("i686-elf")
- }
- }
- }
- """
- );
-
- GradleRunner.create()
- .withArguments("--configuration-cache","compile-main-asm","-Pmetal.target=x86_64-elf")
- .withPluginClasspath()
- .withProjectDir(projectDir.toFile())
- .build();
-
- assertFalse( Files.exists(projectDir.resolve("build/obj")) );
- }
-
- @Test
- public void targetEnabled () throws IOException
- {
- Files.createDirectories(projectDir.resolve("src/main/asm"));
-
- Files.writeString(projectDir.resolve("src/main/asm/bar.s"),
- """
- .global foo
- foo:
- ret
- """
- );
-
- Files.writeString(projectDir.resolve("build.gradle.kts"),
- """
- plugins {
- id("br.dev.pedrolamarao.metal.asm")
- }
-
- metal {
- asm {
- create("main") {
- targets = setOf("i686-elf")
- }
- }
- }
- """
- );
-
- GradleRunner.create()
- .withArguments("--configuration-cache","compile-main-asm","-Pmetal.target=i686-elf")
- .withPluginClasspath()
- .withProjectDir(projectDir.toFile())
- .build();
-
- assertTrue( Files.exists(projectDir.resolve("build/obj")) );
-
- try (var stream = Files.walk(projectDir.resolve("build/obj")).filter(Files::isRegularFile)) {
- assertEquals( 1, stream.count() );
- }
- }
-}