mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 13:42:44 +00:00 
			
		
		
		
	Tests: Use FileSystem instead of DeprecatedFile
				
					
				
			This commit is contained in:
		
							parent
							
								
									1c54c8a01c
								
							
						
					
					
						commit
						03008ec4e0
					
				
					 6 changed files with 615 additions and 565 deletions
				
			
		|  | @ -5,7 +5,7 @@ | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| #include <AK/DeprecatedString.h> | #include <AK/DeprecatedString.h> | ||||||
| #include <LibCore/DeprecatedFile.h> | #include <LibFileSystem/FileSystem.h> | ||||||
| #include <LibTest/TestCase.h> | #include <LibTest/TestCase.h> | ||||||
| #include <fcntl.h> | #include <fcntl.h> | ||||||
| #include <stdio.h> | #include <stdio.h> | ||||||
|  | @ -81,10 +81,10 @@ TEST_CASE(test_change_file_location) | ||||||
|     ftruncate(fd, 0); |     ftruncate(fd, 0); | ||||||
|     EXPECT(fchmod(fd, 06755) != -1); |     EXPECT(fchmod(fd, 06755) != -1); | ||||||
| 
 | 
 | ||||||
|     auto suid_path_or_error = Core::DeprecatedFile::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); |     auto suid_path_or_error = FileSystem::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); | ||||||
|     EXPECT(!suid_path_or_error.is_error()); |     EXPECT(!suid_path_or_error.is_error()); | ||||||
| 
 | 
 | ||||||
|     auto suid_path = suid_path_or_error.release_value(); |     auto suid_path = suid_path_or_error.release_value().to_deprecated_string(); | ||||||
|     EXPECT(suid_path.characters()); |     EXPECT(suid_path.characters()); | ||||||
|     auto new_path = DeprecatedString::formatted("{}.renamed", suid_path); |     auto new_path = DeprecatedString::formatted("{}.renamed", suid_path); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -7,7 +7,7 @@ | ||||||
| 
 | 
 | ||||||
| #include <AK/Assertions.h> | #include <AK/Assertions.h> | ||||||
| #include <AK/Types.h> | #include <AK/Types.h> | ||||||
| #include <LibCore/DeprecatedFile.h> | #include <LibFileSystem/FileSystem.h> | ||||||
| #include <LibTest/TestCase.h> | #include <LibTest/TestCase.h> | ||||||
| #include <fcntl.h> | #include <fcntl.h> | ||||||
| #include <stdio.h> | #include <stdio.h> | ||||||
|  | @ -217,11 +217,11 @@ TEST_CASE(unlink_symlink) | ||||||
|         perror("symlink"); |         perror("symlink"); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     auto target_or_error = Core::DeprecatedFile::read_link("/tmp/linky"); |     auto target_or_error = FileSystem::read_link("/tmp/linky"sv); | ||||||
|     EXPECT(!target_or_error.is_error()); |     EXPECT(!target_or_error.is_error()); | ||||||
| 
 | 
 | ||||||
|     auto target = target_or_error.release_value(); |     auto target = target_or_error.release_value(); | ||||||
|     EXPECT_EQ(target, "/proc/2/foo"); |     EXPECT_EQ(target.bytes_as_string_view(), "/proc/2/foo"sv); | ||||||
| 
 | 
 | ||||||
|     rc = unlink("/tmp/linky"); |     rc = unlink("/tmp/linky"); | ||||||
|     EXPECT(rc >= 0); |     EXPECT(rc >= 0); | ||||||
|  |  | ||||||
|  | @ -6,7 +6,7 @@ | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| #include <AK/DeprecatedString.h> | #include <AK/DeprecatedString.h> | ||||||
| #include <LibCore/DeprecatedFile.h> | #include <LibFileSystem/FileSystem.h> | ||||||
| #include <LibTest/TestCase.h> | #include <LibTest/TestCase.h> | ||||||
| #include <fcntl.h> | #include <fcntl.h> | ||||||
| #include <stdio.h> | #include <stdio.h> | ||||||
|  | @ -86,10 +86,10 @@ TEST_CASE(test_mkstemp_unique_filename) | ||||||
|         auto fd = mkstemp(path); |         auto fd = mkstemp(path); | ||||||
|         EXPECT_NE(fd, -1); |         EXPECT_NE(fd, -1); | ||||||
| 
 | 
 | ||||||
|         auto temp_path_or_error = Core::DeprecatedFile::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); |         auto temp_path_or_error = FileSystem::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); | ||||||
|         EXPECT(!temp_path_or_error.is_error()); |         EXPECT(!temp_path_or_error.is_error()); | ||||||
| 
 | 
 | ||||||
|         auto temp_path = temp_path_or_error.release_value(); |         auto temp_path = temp_path_or_error.release_value().to_deprecated_string(); | ||||||
|         EXPECT(temp_path.characters()); |         EXPECT(temp_path.characters()); | ||||||
| 
 | 
 | ||||||
|         close(fd); |         close(fd); | ||||||
|  | @ -107,10 +107,10 @@ TEST_CASE(test_mkstemp_unique_filename) | ||||||
|         auto fd = mkstemp(path); |         auto fd = mkstemp(path); | ||||||
|         EXPECT(fd != -1); |         EXPECT(fd != -1); | ||||||
| 
 | 
 | ||||||
|         auto path2_or_error = Core::DeprecatedFile::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); |         auto path2_or_error = FileSystem::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); | ||||||
|         EXPECT(!path2_or_error.is_error()); |         EXPECT(!path2_or_error.is_error()); | ||||||
| 
 | 
 | ||||||
|         auto path2 = path2_or_error.release_value(); |         auto path2 = path2_or_error.release_value().to_deprecated_string(); | ||||||
|         EXPECT(path2.characters()); |         EXPECT(path2.characters()); | ||||||
| 
 | 
 | ||||||
|         close(fd); |         close(fd); | ||||||
|  | @ -132,10 +132,10 @@ TEST_CASE(test_mkstemps_unique_filename) | ||||||
|         auto fd = mkstemps(path, 6); |         auto fd = mkstemps(path, 6); | ||||||
|         EXPECT_NE(fd, -1); |         EXPECT_NE(fd, -1); | ||||||
| 
 | 
 | ||||||
|         auto temp_path_or_error = Core::DeprecatedFile::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); |         auto temp_path_or_error = FileSystem::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); | ||||||
|         EXPECT(!temp_path_or_error.is_error()); |         EXPECT(!temp_path_or_error.is_error()); | ||||||
| 
 | 
 | ||||||
|         auto temp_path = temp_path_or_error.release_value(); |         auto temp_path = temp_path_or_error.release_value().to_deprecated_string(); | ||||||
|         EXPECT(temp_path.characters()); |         EXPECT(temp_path.characters()); | ||||||
| 
 | 
 | ||||||
|         close(fd); |         close(fd); | ||||||
|  | @ -157,10 +157,10 @@ TEST_CASE(test_mkstemps_unique_filename) | ||||||
|         auto fd = mkstemps(path, 6); |         auto fd = mkstemps(path, 6); | ||||||
|         EXPECT(fd != -1); |         EXPECT(fd != -1); | ||||||
| 
 | 
 | ||||||
|         auto path2_or_error = Core::DeprecatedFile::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); |         auto path2_or_error = FileSystem::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); | ||||||
|         EXPECT(!path2_or_error.is_error()); |         EXPECT(!path2_or_error.is_error()); | ||||||
| 
 | 
 | ||||||
|         auto path2 = path2_or_error.release_value(); |         auto path2 = path2_or_error.release_value().to_deprecated_string(); | ||||||
|         EXPECT(path2.characters()); |         EXPECT(path2.characters()); | ||||||
| 
 | 
 | ||||||
|         close(fd); |         close(fd); | ||||||
|  |  | ||||||
|  | @ -4,7 +4,7 @@ | ||||||
|  * SPDX-License-Identifier: BSD-2-Clause |  * SPDX-License-Identifier: BSD-2-Clause | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| #include <LibCore/DeprecatedFile.h> | #include <LibFileSystem/FileSystem.h> | ||||||
| #include <LibTest/TestCase.h> | #include <LibTest/TestCase.h> | ||||||
| #include <elf.h> | #include <elf.h> | ||||||
| #include <fcntl.h> | #include <fcntl.h> | ||||||
|  | @ -58,10 +58,10 @@ TEST_CASE(test_interp_header_tiny_p_filesz) | ||||||
|     int nwritten = write(fd, buffer, sizeof(buffer)); |     int nwritten = write(fd, buffer, sizeof(buffer)); | ||||||
|     EXPECT(nwritten); |     EXPECT(nwritten); | ||||||
| 
 | 
 | ||||||
|     auto elf_path_or_error = Core::DeprecatedFile::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); |     auto elf_path_or_error = FileSystem::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); | ||||||
|     EXPECT(!elf_path_or_error.is_error()); |     EXPECT(!elf_path_or_error.is_error()); | ||||||
| 
 | 
 | ||||||
|     auto elf_path = elf_path_or_error.release_value(); |     auto elf_path = elf_path_or_error.release_value().to_deprecated_string(); | ||||||
|     EXPECT(elf_path.characters()); |     EXPECT(elf_path.characters()); | ||||||
| 
 | 
 | ||||||
|     int rc = execl(elf_path.characters(), "test-elf", nullptr); |     int rc = execl(elf_path.characters(), "test-elf", nullptr); | ||||||
|  | @ -115,10 +115,10 @@ TEST_CASE(test_interp_header_p_filesz_larger_than_p_memsz) | ||||||
|     int nwritten = write(fd, buffer, sizeof(buffer)); |     int nwritten = write(fd, buffer, sizeof(buffer)); | ||||||
|     EXPECT(nwritten); |     EXPECT(nwritten); | ||||||
| 
 | 
 | ||||||
|     auto elf_path_or_error = Core::DeprecatedFile::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); |     auto elf_path_or_error = FileSystem::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); | ||||||
|     EXPECT(!elf_path_or_error.is_error()); |     EXPECT(!elf_path_or_error.is_error()); | ||||||
| 
 | 
 | ||||||
|     auto elf_path = elf_path_or_error.release_value(); |     auto elf_path = elf_path_or_error.release_value().to_deprecated_string(); | ||||||
|     EXPECT(elf_path.characters()); |     EXPECT(elf_path.characters()); | ||||||
| 
 | 
 | ||||||
|     int rc = execl(elf_path.characters(), "test-elf", nullptr); |     int rc = execl(elf_path.characters(), "test-elf", nullptr); | ||||||
|  | @ -176,10 +176,10 @@ TEST_CASE(test_interp_header_p_filesz_plus_p_offset_overflow_p_memsz) | ||||||
|     int nwritten = write(fd, buffer, sizeof(buffer)); |     int nwritten = write(fd, buffer, sizeof(buffer)); | ||||||
|     EXPECT(nwritten); |     EXPECT(nwritten); | ||||||
| 
 | 
 | ||||||
|     auto elf_path_or_error = Core::DeprecatedFile::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); |     auto elf_path_or_error = FileSystem::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); | ||||||
|     EXPECT(!elf_path_or_error.is_error()); |     EXPECT(!elf_path_or_error.is_error()); | ||||||
| 
 | 
 | ||||||
|     auto elf_path = elf_path_or_error.release_value(); |     auto elf_path = elf_path_or_error.release_value().to_deprecated_string(); | ||||||
|     EXPECT(elf_path.characters()); |     EXPECT(elf_path.characters()); | ||||||
| 
 | 
 | ||||||
|     int rc = execl(elf_path.characters(), "test-elf", nullptr); |     int rc = execl(elf_path.characters(), "test-elf", nullptr); | ||||||
|  | @ -234,10 +234,10 @@ TEST_CASE(test_load_header_p_memsz_zero) | ||||||
|     int nwritten = write(fd, buffer, sizeof(buffer)); |     int nwritten = write(fd, buffer, sizeof(buffer)); | ||||||
|     EXPECT(nwritten); |     EXPECT(nwritten); | ||||||
| 
 | 
 | ||||||
|     auto elf_path_or_error = Core::DeprecatedFile::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); |     auto elf_path_or_error = FileSystem::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); | ||||||
|     EXPECT(!elf_path_or_error.is_error()); |     EXPECT(!elf_path_or_error.is_error()); | ||||||
| 
 | 
 | ||||||
|     auto elf_path = elf_path_or_error.release_value(); |     auto elf_path = elf_path_or_error.release_value().to_deprecated_string(); | ||||||
|     EXPECT(elf_path.characters()); |     EXPECT(elf_path.characters()); | ||||||
| 
 | 
 | ||||||
|     int rc = execl(elf_path.characters(), "test-elf", nullptr); |     int rc = execl(elf_path.characters(), "test-elf", nullptr); | ||||||
|  | @ -292,10 +292,10 @@ TEST_CASE(test_load_header_p_memsz_not_equal_to_p_align) | ||||||
|     int nwritten = write(fd, buffer, sizeof(buffer)); |     int nwritten = write(fd, buffer, sizeof(buffer)); | ||||||
|     EXPECT(nwritten); |     EXPECT(nwritten); | ||||||
| 
 | 
 | ||||||
|     auto elf_path_or_error = Core::DeprecatedFile::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); |     auto elf_path_or_error = FileSystem::read_link(DeprecatedString::formatted("/proc/{}/fd/{}", getpid(), fd)); | ||||||
|     EXPECT(!elf_path_or_error.is_error()); |     EXPECT(!elf_path_or_error.is_error()); | ||||||
| 
 | 
 | ||||||
|     auto elf_path = elf_path_or_error.release_value(); |     auto elf_path = elf_path_or_error.release_value().to_deprecated_string(); | ||||||
|     EXPECT(elf_path.characters()); |     EXPECT(elf_path.characters()); | ||||||
| 
 | 
 | ||||||
|     int rc = execl(elf_path.characters(), "test-elf", nullptr); |     int rc = execl(elf_path.characters(), "test-elf", nullptr); | ||||||
|  |  | ||||||
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							|  | @ -20,7 +20,12 @@ int main(int argc, char** argv) | ||||||
|     Vector<const char*> child_argv; |     Vector<const char*> child_argv; | ||||||
| 
 | 
 | ||||||
|     const char* output_filename = nullptr; |     const char* output_filename = nullptr; | ||||||
|     auto trace_file = Core::DeprecatedFile::standard_error(); |     auto trace_file_or_error = Core::File::standard_error(); | ||||||
|  |     if (trace_file_or_error.is_error()) { | ||||||
|  |         outln(stderr, "Failed to open stderr: {}", trace_file_or_error.error()); | ||||||
|  |         return 1; | ||||||
|  |     } | ||||||
|  |     auto trace_file = trace_file_or_error.release_value(); | ||||||
| 
 | 
 | ||||||
|     Core::ArgsParser parser; |     Core::ArgsParser parser; | ||||||
|     parser.set_general_help( |     parser.set_general_help( | ||||||
|  | @ -32,12 +37,12 @@ int main(int argc, char** argv) | ||||||
|     parser.parse(argc, argv); |     parser.parse(argc, argv); | ||||||
| 
 | 
 | ||||||
|     if (output_filename != nullptr) { |     if (output_filename != nullptr) { | ||||||
|         auto open_result = Core::DeprecatedFile::open(output_filename, Core::OpenMode::WriteOnly); |         auto open_result = Core::File::open(output_filename, Core::File::OpenMode::Write); | ||||||
|         if (open_result.is_error()) { |         if (open_result.is_error()) { | ||||||
|             outln(stderr, "Failed to open output file: {}", open_result.error()); |             outln(stderr, "Failed to open output file: {}", open_result.error()); | ||||||
|             return 1; |             return 1; | ||||||
|         } |         } | ||||||
|         trace_file = open_result.value(); |         trace_file = open_result.release_value(); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     if (pledge("stdio proc exec ptrace sigaction", nullptr) < 0) { |     if (pledge("stdio proc exec ptrace sigaction", nullptr) < 0) { | ||||||
|  | @ -135,8 +140,9 @@ int main(int argc, char** argv) | ||||||
|             arg3, |             arg3, | ||||||
|             res); |             res); | ||||||
| 
 | 
 | ||||||
|         if (!trace_file->write(string)) { |         auto result = trace_file->write_value(string); | ||||||
|             warnln("write: {}", trace_file->error_string()); |         if (result.is_error()) { | ||||||
|  |             warnln("write: {}", result->error()); | ||||||
|             return 1; |             return 1; | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Cameron Youell
						Cameron Youell