[Lldb-commits] [PATCH] D68606: [test] Split LLDB tests into filecheck, unittest and dotest.

Jonas Devlieghere via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Oct 7 15:59:26 PDT 2019


JDevlieghere created this revision.
JDevlieghere added reviewers: LLDB, labath, mgorny, teemperor, stella.stamenova, xiaobai, tatyana-krasnukha.
Herald added subscribers: lldb-commits, thopre, arphaman, MaskRay, kbarton, arichardson, nemanjai, emaste.
Herald added a reviewer: espindola.
Herald added a project: LLDB.

LLDB has three major testing strategies: unit tests, tests that exercise the SB API though dotest.py and what we currently call lit tests. The later is rather confusing as we're now using lit as the driver for all three types of tests. As most of this grew organically, the directory structure in the lldb repository doesn't really make this clear. The 'lit' tests are part of the root and among these tests there's a `Unit` and `Suite` folder for the unit and dotest-tests. This makes it impossible to run just the lit tests.

This patch changes the directory layout to match the 3 testing strategies, each with their own directory and their own configuration file. I've opted to name the directories after the testing tool, so dotest for the dotest.py tests and filecheck for the lit tests. This means there are now three targets, in addition to the usual `check-lldb`:

- `check-lldb-unittests` (replaces `check-lldb-unit`)
- `check-lldb-dotest`
- `check-lldb-filecheck`

My goal is to finally move the unit test and dotest files into their corresponding subdirectories and finally rename `lit` to `tests`. This is the first step in that direction.


Repository:
  rLLDB LLDB

https://reviews.llvm.org/D68606

Files:
  lldb/lit/Breakpoint/Inputs/case-sensitive.c
  lldb/lit/Breakpoint/Inputs/debug_addrx.yaml
  lldb/lit/Breakpoint/Inputs/debug_rnglist_basic.yaml
  lldb/lit/Breakpoint/Inputs/debug_rnglist_offset_pair.yaml
  lldb/lit/Breakpoint/Inputs/debug_rnglist_rlestartend.yaml
  lldb/lit/Breakpoint/Inputs/debug_rnglistx_rlex.yaml
  lldb/lit/Breakpoint/Inputs/implicit_const_form_support.yaml
  lldb/lit/Breakpoint/Inputs/jitbp.cpp
  lldb/lit/Breakpoint/Inputs/ppc64-localentry.s
  lldb/lit/Breakpoint/Inputs/single-file-split-dwarf.o.yaml
  lldb/lit/Breakpoint/Inputs/single-file-split-dwarf.yaml
  lldb/lit/Breakpoint/Inputs/split-dwarf-5-addrbase.dwo.yaml
  lldb/lit/Breakpoint/Inputs/split-dwarf-5-addrbase.yaml
  lldb/lit/Breakpoint/Inputs/split-dwarf5-debug-stroffsets-file1.dwo.yaml
  lldb/lit/Breakpoint/Inputs/split-dwarf5-debug-stroffsets-file2.dwo.yaml
  lldb/lit/Breakpoint/Inputs/split-dwarf5-debug-stroffsets-main.yaml
  lldb/lit/Breakpoint/case-insensitive.test
  lldb/lit/Breakpoint/case-sensitive.test
  lldb/lit/Breakpoint/debug_addrx.test
  lldb/lit/Breakpoint/debug_rnglist_basic.test
  lldb/lit/Breakpoint/debug_rnglist_offset_pair.test
  lldb/lit/Breakpoint/debug_rnglist_rlestartend.test
  lldb/lit/Breakpoint/debug_rnglistx_rlex.test
  lldb/lit/Breakpoint/implicit_const_form_support.test
  lldb/lit/Breakpoint/jitbp_elf.test
  lldb/lit/Breakpoint/ppc64-localentry.test
  lldb/lit/Breakpoint/single-file-split-dwarf.test
  lldb/lit/Breakpoint/split-dwarf-5-addrbase.test
  lldb/lit/Breakpoint/split-dwarf5-debug-stroffsets.test
  lldb/lit/BuildScript/compiler-full-path.test
  lldb/lit/BuildScript/modes.test
  lldb/lit/BuildScript/script-args.test
  lldb/lit/BuildScript/toolchain-clang-cl.test
  lldb/lit/BuildScript/toolchain-clang.test
  lldb/lit/BuildScript/toolchain-msvc.test
  lldb/lit/CMakeLists.txt
  lldb/lit/Commands/CommandScriptImmediateOutput/CommandScriptImmediateOutputConsole.test
  lldb/lit/Commands/CommandScriptImmediateOutput/CommandScriptImmediateOutputFile.test
  lldb/lit/Commands/CommandScriptImmediateOutput/Inputs/custom_command.py
  lldb/lit/Commands/CommandScriptImmediateOutput/lit.local.cfg
  lldb/lit/Commands/Inputs/frame.py
  lldb/lit/Commands/Inputs/main.c
  lldb/lit/Commands/command-backtrace.test
  lldb/lit/Commands/command-regex-delete.test
  lldb/lit/Commands/command-regex-unalias.test
  lldb/lit/Commands/command-script-import.test
  lldb/lit/Commands/command-source.test
  lldb/lit/Driver/Inputs/.lldbinit
  lldb/lit/Driver/Inputs/Print0.in
  lldb/lit/Driver/Inputs/Print2.in
  lldb/lit/Driver/Inputs/Print4.in
  lldb/lit/Driver/Inputs/Print6.in
  lldb/lit/Driver/Inputs/convenience.in
  lldb/lit/Driver/Inputs/hello.c
  lldb/lit/Driver/Inputs/hello.cpp
  lldb/lit/Driver/Inputs/process_attach_pid.in
  lldb/lit/Driver/Inputs/syntax_error.py
  lldb/lit/Driver/LocalLLDBInit.test
  lldb/lit/Driver/TestCommands.test
  lldb/lit/Driver/TestConvenienceVariables.test
  lldb/lit/Driver/TestCore.test
  lldb/lit/Driver/TestFile.test
  lldb/lit/Driver/TestNoUseColor.test
  lldb/lit/Driver/TestProcessAttach.test
  lldb/lit/Driver/TestRepl.test
  lldb/lit/Driver/TestSingleQuote.test
  lldb/lit/Driver/TestTarget.test
  lldb/lit/ExecControl/StopHook/Inputs/stop-hook-1.lldbinit
  lldb/lit/ExecControl/StopHook/Inputs/stop-hook-2.lldbinit
  lldb/lit/ExecControl/StopHook/Inputs/stop-hook-3.lldbinit
  lldb/lit/ExecControl/StopHook/Inputs/stop-hook-threads-1.lldbinit
  lldb/lit/ExecControl/StopHook/Inputs/stop-hook-threads-2.lldbinit
  lldb/lit/ExecControl/StopHook/Inputs/stop-hook-threads.cpp
  lldb/lit/ExecControl/StopHook/Inputs/stop-hook.c
  lldb/lit/ExecControl/StopHook/stop-hook-threads.test
  lldb/lit/ExecControl/StopHook/stop-hook.test
  lldb/lit/Expr/Inputs/call-function.cpp
  lldb/lit/Expr/Inputs/ir-memory-map-basic
  lldb/lit/Expr/Inputs/ir-memory-map-mix-malloc-free
  lldb/lit/Expr/Inputs/ir-memory-map-overlap1
  lldb/lit/Expr/TestIRMemoryMap.test
  lldb/lit/Expr/TestIRMemoryMapWindows.test
  lldb/lit/Expr/TestMultilineExpr.test
  lldb/lit/Expr/TestTypeOfDeclTypeExpr.test
  lldb/lit/Heap/Inputs/cstr.c
  lldb/lit/Heap/heap-cstr.test
  lldb/lit/Host/Inputs/simple.c
  lldb/lit/Host/TestCustomShell.test
  lldb/lit/Minidump/Inputs/linux-x86_64.syms
  lldb/lit/Minidump/Inputs/linux-x86_64.yaml
  lldb/lit/Minidump/Windows/Inputs/find-module.dmp.yaml
  lldb/lit/Minidump/Windows/Inputs/find-module.exe.yaml
  lldb/lit/Minidump/Windows/Sigsegv/Inputs/sigsegv.cpp
  lldb/lit/Minidump/Windows/Sigsegv/Inputs/sigsegv.dmp
  lldb/lit/Minidump/Windows/Sigsegv/Inputs/sigsegv.lldbinit
  lldb/lit/Minidump/Windows/Sigsegv/Inputs/sigsegv.pdb
  lldb/lit/Minidump/Windows/Sigsegv/sigsegv.test
  lldb/lit/Minidump/Windows/find-module.test
  lldb/lit/Minidump/breakpad-symbols.test
  lldb/lit/Minidump/disassemble-no-module.yaml
  lldb/lit/Minidump/dump-all.test
  lldb/lit/Minidump/fb-dump.test
  lldb/lit/Minidump/lit.local.cfg
  lldb/lit/ObjectFile/Breakpad/Inputs/bad-module-id-1.syms
  lldb/lit/ObjectFile/Breakpad/Inputs/bad-module-id-2.syms
  lldb/lit/ObjectFile/Breakpad/Inputs/bad-module-id-3.syms
  lldb/lit/ObjectFile/Breakpad/Inputs/discontiguous-sections.syms
  lldb/lit/ObjectFile/Breakpad/Inputs/identification-linux.syms
  lldb/lit/ObjectFile/Breakpad/Inputs/identification-macosx-arm64e.syms
  lldb/lit/ObjectFile/Breakpad/Inputs/identification-macosx.syms
  lldb/lit/ObjectFile/Breakpad/Inputs/identification-windows.syms
  lldb/lit/ObjectFile/Breakpad/Inputs/sections-trailing-func.syms
  lldb/lit/ObjectFile/Breakpad/Inputs/sections.syms
  lldb/lit/ObjectFile/Breakpad/Inputs/uuid-matching-mac.syms
  lldb/lit/ObjectFile/Breakpad/Inputs/uuid-matching-mac.yaml
  lldb/lit/ObjectFile/Breakpad/breakpad-identification.test
  lldb/lit/ObjectFile/Breakpad/discontiguous-sections.test
  lldb/lit/ObjectFile/Breakpad/lit.local.cfg
  lldb/lit/ObjectFile/Breakpad/sections-trailing-func.test
  lldb/lit/ObjectFile/Breakpad/sections.test
  lldb/lit/ObjectFile/Breakpad/uuid-matching-mac.test
  lldb/lit/ObjectFile/ELF/Inputs/PT_LOAD-overlap-section.elf
  lldb/lit/ObjectFile/ELF/Inputs/minidebuginfo-main.c
  lldb/lit/ObjectFile/ELF/Inputs/netbsd-amd64.core
  lldb/lit/ObjectFile/ELF/PT_LOAD-empty.yaml
  lldb/lit/ObjectFile/ELF/PT_LOAD-overlap-PT_INTERP.yaml
  lldb/lit/ObjectFile/ELF/PT_LOAD-overlap-PT_TLS.yaml
  lldb/lit/ObjectFile/ELF/PT_LOAD-overlap-section.yaml
  lldb/lit/ObjectFile/ELF/PT_LOAD-overlap.yaml
  lldb/lit/ObjectFile/ELF/PT_LOAD.yaml
  lldb/lit/ObjectFile/ELF/PT_TLS-overlap-PT_LOAD.yaml
  lldb/lit/ObjectFile/ELF/aarch64-relocations.yaml
  lldb/lit/ObjectFile/ELF/base-address.yaml
  lldb/lit/ObjectFile/ELF/basic-info.yaml
  lldb/lit/ObjectFile/ELF/build-id-case.yaml
  lldb/lit/ObjectFile/ELF/compressed-sections.yaml
  lldb/lit/ObjectFile/ELF/duplicate-section.yaml
  lldb/lit/ObjectFile/ELF/gnu-debuglink.yaml
  lldb/lit/ObjectFile/ELF/many-sections.s
  lldb/lit/ObjectFile/ELF/minidebuginfo-corrupt-xz.yaml
  lldb/lit/ObjectFile/ELF/minidebuginfo-find-symbols.yaml
  lldb/lit/ObjectFile/ELF/minidebuginfo-no-lzma.yaml
  lldb/lit/ObjectFile/ELF/minidebuginfo-set-and-hit-breakpoint.test
  lldb/lit/ObjectFile/ELF/netbsd-core-amd64.test
  lldb/lit/ObjectFile/ELF/netbsd-exec-8.99.30-amd64.yaml
  lldb/lit/ObjectFile/ELF/section-addresses.yaml
  lldb/lit/ObjectFile/ELF/section-overlap.yaml
  lldb/lit/ObjectFile/ELF/section-permissions.yaml
  lldb/lit/ObjectFile/ELF/section-types-edgecases.yaml
  lldb/lit/ObjectFile/ELF/section-types.yaml
  lldb/lit/ObjectFile/ELF/short-build-id.yaml
  lldb/lit/ObjectFile/MachO/lc_build_version.yaml
  lldb/lit/ObjectFile/MachO/lc_build_version_notools.yaml
  lldb/lit/ObjectFile/MachO/lc_version_min.yaml
  lldb/lit/ObjectFile/MachO/subsections.yaml
  lldb/lit/ObjectFile/PECOFF/basic-info-arm.yaml
  lldb/lit/ObjectFile/PECOFF/basic-info-arm64.yaml
  lldb/lit/ObjectFile/PECOFF/basic-info.yaml
  lldb/lit/ObjectFile/PECOFF/dep-modules.yaml
  lldb/lit/ObjectFile/PECOFF/export-dllfunc.yaml
  lldb/lit/ObjectFile/PECOFF/lit.local.cfg
  lldb/lit/ObjectFile/PECOFF/sections-names.yaml
  lldb/lit/ObjectFile/PECOFF/subsections.yaml
  lldb/lit/ObjectFile/PECOFF/uuid.yaml
  lldb/lit/ObjectFile/lit.local.cfg
  lldb/lit/Process/Inputs/env.cpp
  lldb/lit/Process/TestEnvironment.test
  lldb/lit/Process/Windows/exception_access_violation.cpp
  lldb/lit/Python/crashlog.test
  lldb/lit/Quit/TestQuitExitCode-30.test
  lldb/lit/Quit/TestQuitExitCode0.test
  lldb/lit/Quit/TestQuitExitCode30.test
  lldb/lit/Quit/TestQuitExitCodeHex0.test
  lldb/lit/Quit/TestQuitExitCodeHexA.test
  lldb/lit/Quit/TestQuitExitCodeImplicit0.test
  lldb/lit/Quit/TestQuitExitCodeNonInt.test
  lldb/lit/Quit/TestQuitExitCodeTooManyArgs.test
  lldb/lit/Quit/expect_exit_code.py
  lldb/lit/Register/Inputs/x86-64-gp-read.cpp
  lldb/lit/Register/Inputs/x86-64-gp-write.cpp
  lldb/lit/Register/Inputs/x86-64-read.cpp
  lldb/lit/Register/Inputs/x86-64-write.cpp
  lldb/lit/Register/Inputs/x86-gp-read.cpp
  lldb/lit/Register/Inputs/x86-gp-write.cpp
  lldb/lit/Register/Inputs/x86-mm-xmm-read.cpp
  lldb/lit/Register/Inputs/x86-mm-xmm-write.cpp
  lldb/lit/Register/Inputs/x86-ymm-read.cpp
  lldb/lit/Register/Inputs/x86-ymm-write.cpp
  lldb/lit/Register/Inputs/x86-zmm-read.cpp
  lldb/lit/Register/Inputs/x86-zmm-write.cpp
  lldb/lit/Register/x86-64-gp-read.test
  lldb/lit/Register/x86-64-gp-write.test
  lldb/lit/Register/x86-64-read.test
  lldb/lit/Register/x86-64-write.test
  lldb/lit/Register/x86-64-xmm16-read.test
  lldb/lit/Register/x86-64-xmm16-write.test
  lldb/lit/Register/x86-64-ymm-read.test
  lldb/lit/Register/x86-64-ymm-write.test
  lldb/lit/Register/x86-64-ymm16-read.test
  lldb/lit/Register/x86-64-ymm16-write.test
  lldb/lit/Register/x86-64-zmm-read.test
  lldb/lit/Register/x86-64-zmm-write.test
  lldb/lit/Register/x86-gp-read.test
  lldb/lit/Register/x86-gp-write.test
  lldb/lit/Register/x86-mm-xmm-read.test
  lldb/lit/Register/x86-mm-xmm-write.test
  lldb/lit/Register/x86-ymm-read.test
  lldb/lit/Register/x86-ymm-write.test
  lldb/lit/Register/x86-zmm-read.test
  lldb/lit/Register/x86-zmm-write.test
  lldb/lit/Reproducer/Functionalities/Inputs/DataFormatter.in
  lldb/lit/Reproducer/Functionalities/Inputs/foo.cpp
  lldb/lit/Reproducer/Functionalities/Inputs/stepping.c
  lldb/lit/Reproducer/Functionalities/TestDataFormatter.test
  lldb/lit/Reproducer/Functionalities/TestImageList.test
  lldb/lit/Reproducer/Functionalities/TestStepping.test
  lldb/lit/Reproducer/Inputs/FileCapture.in
  lldb/lit/Reproducer/Inputs/GDBRemoteCapture.in
  lldb/lit/Reproducer/Inputs/simple.c
  lldb/lit/Reproducer/Modules/Inputs/Bar.h
  lldb/lit/Reproducer/Modules/Inputs/Foo.h
  lldb/lit/Reproducer/Modules/Inputs/ModuleCXX.in
  lldb/lit/Reproducer/Modules/Inputs/main.cpp
  lldb/lit/Reproducer/Modules/Inputs/module.modulemap
  lldb/lit/Reproducer/Modules/TestModuleCXX.test
  lldb/lit/Reproducer/TestDriverOptions.test
  lldb/lit/Reproducer/TestDump.test
  lldb/lit/Reproducer/TestFileRepro.test
  lldb/lit/Reproducer/TestGDBRemoteRepro.test
  lldb/lit/Reproducer/TestRelativePath.test
  lldb/lit/Reproducer/TestReuseDirectory.test
  lldb/lit/Reproducer/TestSynchronous.test
  lldb/lit/Settings/Inputs/DontStopCommandSource.in
  lldb/lit/Settings/Inputs/EchoCommandsAll.out
  lldb/lit/Settings/Inputs/EchoCommandsNoComments.out
  lldb/lit/Settings/Inputs/EchoCommandsNone.out
  lldb/lit/Settings/Inputs/EchoCommandsQuiet.out
  lldb/lit/Settings/Inputs/EchoCommandsTest.in
  lldb/lit/Settings/Inputs/StopCommandSource.in
  lldb/lit/Settings/Inputs/main.c
  lldb/lit/Settings/TestDisableColor.test
  lldb/lit/Settings/TestDisassemblyFormat.test
  lldb/lit/Settings/TestEchoCommands.test
  lldb/lit/Settings/TestFrameFormatColor.test
  lldb/lit/Settings/TestFrameFormatNoColor.test
  lldb/lit/Settings/TestModuleCacheSanity.test
  lldb/lit/Settings/TestSettingsSet.test
  lldb/lit/Settings/TestSettingsWrite.test
  lldb/lit/Settings/TestStopCommandSourceOnError.test
  lldb/lit/Suite/lit.cfg
  (625 more files...)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D68606.223684.patch
Type: text/x-patch
Size: 12374 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20191007/32569f0d/attachment-0001.bin>


More information about the lldb-commits mailing list