| | 1054 | static void openAllFiles(BattFsSuper *disk) |
|---|
| | 1055 | { |
|---|
| | 1056 | TRACEMSG("22: try to open a lot of files\n"); |
|---|
| | 1057 | |
|---|
| | 1058 | FILE *fpt = fopen(test_filename, "w+"); |
|---|
| | 1059 | |
|---|
| | 1060 | for (int i = 0; i < FILE_SIZE; i++) |
|---|
| | 1061 | fputc(0xff, fpt); |
|---|
| | 1062 | fclose(fpt); |
|---|
| | 1063 | |
|---|
| | 1064 | BattFs fd[BATTFS_MAX_FILES]; |
|---|
| | 1065 | unsigned int MODE = BATTFS_CREATE; |
|---|
| | 1066 | |
|---|
| | 1067 | ASSERT(disk_open(disk)); |
|---|
| | 1068 | ASSERT(battfs_mount(disk)); |
|---|
| | 1069 | ASSERT(battfs_fsck(disk)); |
|---|
| | 1070 | for (unsigned i = 0; i < countof(fd); i++) |
|---|
| | 1071 | { |
|---|
| | 1072 | kprintf("apertura %d\n", i); |
|---|
| | 1073 | ASSERT(battfs_fileopen(disk, &fd[i], i, MODE)); |
|---|
| | 1074 | } |
|---|
| | 1075 | |
|---|
| | 1076 | ASSERT(battfs_fsck(disk)); |
|---|
| | 1077 | |
|---|
| | 1078 | for (unsigned i = 0; i < countof(fd); i++) |
|---|
| | 1079 | { |
|---|
| | 1080 | ASSERT(kfile_close(&fd[i].fd) == 0); |
|---|
| | 1081 | ASSERT(kfile_error(&fd[i].fd) == 0); |
|---|
| | 1082 | } |
|---|
| | 1083 | |
|---|
| | 1084 | ASSERT(battfs_fsck(disk)); |
|---|
| | 1085 | ASSERT(battfs_umount(disk)); |
|---|
| | 1086 | |
|---|
| | 1087 | ASSERT(disk_open(disk)); |
|---|
| | 1088 | ASSERT(battfs_mount(disk)); |
|---|
| | 1089 | ASSERT(battfs_fsck(disk)); |
|---|
| | 1090 | |
|---|
| | 1091 | |
|---|
| | 1092 | for (unsigned i = 0; i < countof(fd); i++) |
|---|
| | 1093 | ASSERT(battfs_fileopen(disk, &fd[i], i, MODE)); |
|---|
| | 1094 | |
|---|
| | 1095 | ASSERT(battfs_fsck(disk)); |
|---|
| | 1096 | |
|---|
| | 1097 | for (unsigned i = 0; i < countof(fd); i++) |
|---|
| | 1098 | { |
|---|
| | 1099 | ASSERT(kfile_close(&fd[i].fd) == 0); |
|---|
| | 1100 | ASSERT(kfile_error(&fd[i].fd) == 0); |
|---|
| | 1101 | } |
|---|
| | 1102 | |
|---|
| | 1103 | ASSERT(battfs_fsck(disk)); |
|---|
| | 1104 | ASSERT(battfs_umount(disk)); |
|---|
| | 1105 | TRACEMSG("22: passed\n"); |
|---|
| | 1106 | } |
|---|
| | 1107 | |
|---|
| | 1108 | |
|---|