mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 18:27:35 +00:00
Meta: Add LibTest and Tests/AK to gn build
This commit is contained in:
parent
4bfb146181
commit
cbda1a6c73
5 changed files with 183 additions and 1 deletions
|
@ -1,7 +1,8 @@
|
|||
import("//Meta/gn/build/toolchain/compiler.gni")
|
||||
|
||||
group("default") {
|
||||
deps = [ "//Userland/Libraries/LibCore" ]
|
||||
deps = [ "//Tests" ]
|
||||
testonly = true
|
||||
}
|
||||
|
||||
# A pool called "console" in the root BUILD.gn is magic and represents ninja's
|
||||
|
|
106
Meta/gn/secondary/Tests/AK/BUILD.gn
Normal file
106
Meta/gn/secondary/Tests/AK/BUILD.gn
Normal file
|
@ -0,0 +1,106 @@
|
|||
import("//Tests/unittest.gni")
|
||||
|
||||
tests = [
|
||||
"TestAllOf",
|
||||
"TestAnyOf",
|
||||
"TestArbitrarySizedEnum",
|
||||
"TestArray",
|
||||
"TestAtomic",
|
||||
"TestBadge",
|
||||
"TestBase64",
|
||||
"TestBinaryHeap",
|
||||
"TestBinarySearch",
|
||||
"TestBitCast",
|
||||
"TestBitmap",
|
||||
"TestBitStream",
|
||||
"TestBuiltinWrappers",
|
||||
"TestByteBuffer",
|
||||
"TestCharacterTypes",
|
||||
"TestChecked",
|
||||
"TestCircularBuffer",
|
||||
"TestCircularDeque",
|
||||
"TestCircularQueue",
|
||||
"TestComplex",
|
||||
"TestDeprecatedString",
|
||||
"TestDisjointChunks",
|
||||
"TestDistinctNumeric",
|
||||
"TestDoublyLinkedList",
|
||||
"TestDuration",
|
||||
"TestEndian",
|
||||
"TestEnumBits",
|
||||
"TestFind",
|
||||
"TestFixedArray",
|
||||
"TestFixedPoint",
|
||||
"TestFloatingPoint",
|
||||
"TestFloatingPointParsing",
|
||||
"TestFlyString",
|
||||
"TestFormat",
|
||||
"TestGenericLexer",
|
||||
"TestHashFunctions",
|
||||
"TestHashMap",
|
||||
"TestHashTable",
|
||||
"TestHex",
|
||||
"TestIPv4Address",
|
||||
"TestIPv6Address",
|
||||
"TestIndexSequence",
|
||||
"TestInsertionSort",
|
||||
"TestIntegerMath",
|
||||
"TestIntrusiveList",
|
||||
"TestIntrusiveRedBlackTree",
|
||||
"TestJSON",
|
||||
"TestLEB128",
|
||||
"TestLexicalPath",
|
||||
"TestMACAddress",
|
||||
"TestMemory",
|
||||
"TestMemoryStream",
|
||||
"TestNeverDestroyed",
|
||||
"TestNonnullRefPtr",
|
||||
"TestNumberFormat",
|
||||
"TestOptional",
|
||||
"TestOwnPtr",
|
||||
"TestPrint",
|
||||
"TestQueue",
|
||||
"TestQuickSelect",
|
||||
"TestQuickSort",
|
||||
"TestRedBlackTree",
|
||||
"TestRefPtr",
|
||||
"TestSIMD",
|
||||
"TestSinglyLinkedList",
|
||||
"TestSourceGenerator",
|
||||
"TestSourceLocation",
|
||||
"TestSpan",
|
||||
"TestStack",
|
||||
"TestStatistics",
|
||||
"TestStdLibExtras",
|
||||
"TestStringFloatingPointConversions",
|
||||
"TestStringUtils",
|
||||
"TestStringView",
|
||||
"TestTrie",
|
||||
"TestTuple",
|
||||
"TestTypeTraits",
|
||||
"TestTypedTransfer",
|
||||
"TestUFixedBigInt",
|
||||
"TestURL",
|
||||
"TestUtf16",
|
||||
"TestUtf8",
|
||||
"TestVariant",
|
||||
"TestVector",
|
||||
"TestWeakPtr",
|
||||
]
|
||||
|
||||
# FIXME: "TestString", when LibUnicode is available
|
||||
|
||||
foreach(test_name, tests) {
|
||||
unittest(test_name) {
|
||||
include_dirs = [ "//Userland/Libraries" ]
|
||||
sources = [ test_name + ".cpp" ]
|
||||
}
|
||||
}
|
||||
|
||||
group("AK") {
|
||||
deps = []
|
||||
foreach(test_name, tests) {
|
||||
deps += [ ":" + test_name ]
|
||||
}
|
||||
testonly = true
|
||||
}
|
4
Meta/gn/secondary/Tests/BUILD.gn
Normal file
4
Meta/gn/secondary/Tests/BUILD.gn
Normal file
|
@ -0,0 +1,4 @@
|
|||
group("Tests") {
|
||||
deps = [ "//Tests/AK" ]
|
||||
testonly = true
|
||||
}
|
28
Meta/gn/secondary/Tests/unittest.gni
Normal file
28
Meta/gn/secondary/Tests/unittest.gni
Normal file
|
@ -0,0 +1,28 @@
|
|||
template("unittest") {
|
||||
executable(target_name) {
|
||||
has_custom_main = false
|
||||
use_js_main = false
|
||||
|
||||
# Foward everything (has_custom_main if set; configs, sources, deps, ...).
|
||||
forward_variables_from(invoker, "*")
|
||||
assert(!defined(invoker.output_dir), "cannot set unittest output_dir")
|
||||
assert(!defined(invoker.testonly), "cannot set unittest testonly")
|
||||
|
||||
output_dir = target_out_dir
|
||||
|
||||
deps = [ "//AK" ]
|
||||
if (has_custom_main) {
|
||||
deps += [ "//Userland/Libraries/LibTest" ]
|
||||
} else if (use_js_main) {
|
||||
deps += [ "//Userland/Libraries/LibTest:test_js_main" ]
|
||||
} else {
|
||||
deps += [ "//Userland/Libraries/LibTest:test_main" ]
|
||||
}
|
||||
|
||||
if (current_os != "serenity") {
|
||||
deps += [ "//Userland/Libraries/LibCore" ]
|
||||
}
|
||||
|
||||
testonly = true
|
||||
}
|
||||
}
|
43
Meta/gn/secondary/Userland/Libraries/LibTest/BUILD.gn
Normal file
43
Meta/gn/secondary/Userland/Libraries/LibTest/BUILD.gn
Normal file
|
@ -0,0 +1,43 @@
|
|||
shared_library("LibTest") {
|
||||
output_name = "test"
|
||||
include_dirs = [ "//Userland/Libraries" ]
|
||||
sources = [
|
||||
"CrashTest.cpp",
|
||||
"CrashTest.h",
|
||||
"Macros.h",
|
||||
"Results.h",
|
||||
"TestCase.h",
|
||||
"TestRunner.h",
|
||||
"TestRunnerUtil.h",
|
||||
"TestSuite.cpp",
|
||||
"TestSuite.h",
|
||||
]
|
||||
|
||||
deps = [ "//AK" ]
|
||||
if (current_os != "serenity") {
|
||||
deps += [ "//Userland/Libraries/LibCore" ]
|
||||
}
|
||||
|
||||
output_name = "test"
|
||||
|
||||
testonly = true
|
||||
}
|
||||
|
||||
source_set("test_main") {
|
||||
include_dirs = [ "//Userland/Libraries" ]
|
||||
sources = [ "TestMain.cpp" ]
|
||||
deps = [ "//AK" ]
|
||||
public_deps = [ ":LibTest" ]
|
||||
testonly = true
|
||||
}
|
||||
|
||||
source_set("test_js_main") {
|
||||
include_dirs = [ "//Userland/Libraries" ]
|
||||
sources = [
|
||||
"JavaScriptTestRunner.h",
|
||||
"JavaScriptTestRunnerMain.cpp",
|
||||
]
|
||||
deps = [ "//AK" ]
|
||||
public_deps = [ ":LibTest" ]
|
||||
testonly = true
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue