ladybird/Tests
Daniel Bertalan d7b6cc6421 Everywhere: Prevent risky implicit casts of (Nonnull)RefPtr
Our existing implementation did not check the element type of the other
pointer in the constructors and move assignment operators. This meant
that some operations that would require explicit casting on raw pointers
were done implicitly, such as:
- downcasting a base class to a derived class (e.g. `Kernel::Inode` =>
  `Kernel::ProcFSDirectoryInode` in Kernel/ProcFS.cpp),
- casting to an unrelated type (e.g. `Promise<bool>` => `Promise<Empty>`
  in LibIMAP/Client.cpp)

This, of course, allows gross violations of the type system, and makes
the need to type-check less obvious before downcasting. Luckily, while
adding the `static_ptr_cast`s, only two truly incorrect usages were
found; in the other instances, our casts just needed to be made
explicit.
2021-09-03 23:20:23 +02:00
..
AK Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
Kernel Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibC Tests: Convert remaining LibC tests to LibTest 2021-09-01 13:44:24 +02:00
LibCompress Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibCore Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibCpp Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibCrypto Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibELF Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibGfx Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibIMAP Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibJS LibJS: Add a mode to parse JS as a module 2021-08-15 23:51:47 +01:00
LibM Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibMarkdown Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibPthread Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibRegex Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibSQL Everywhere: Prevent risky implicit casts of (Nonnull)RefPtr 2021-09-03 23:20:23 +02:00
LibThreading Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibTLS Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
LibUnicode LibUnicode: Add lexer to test if a string matches the "type" production 2021-09-02 17:56:42 +01:00
LibWasm Tests/LibWasm: Handle all stream errors in parse_webassembly_module 2021-08-30 22:47:02 +02:00
LibWeb Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
UserspaceEmulator Tests: Remove all file(GLOB) from CMakeLists in Tests 2021-09-02 09:08:23 +02:00
CMakeLists.txt Tests: Test LibMarkdown against commonmark test suite 2021-08-31 16:53:51 +02:00