Generated v2 prefixes
This commit is contained in:
@@ -1,13 +1,15 @@
|
||||
|
||||
[[case]] # interspersed file test
|
||||
define.SIZE = [10, 100]
|
||||
define.FILES = [4, 10, 26]
|
||||
[cases.test_interspersed_files]
|
||||
defines.SIZE = [10, 100]
|
||||
defines.FILES = [4, 10, 26]
|
||||
code = '''
|
||||
lfs2_t lfs2;
|
||||
lfs2_file_t files[FILES];
|
||||
const char alphas[] = "abcdefghijklmnopqrstuvwxyz";
|
||||
lfs2_format(&lfs2, &cfg) => 0;
|
||||
lfs2_mount(&lfs2, &cfg) => 0;
|
||||
lfs2_format(&lfs2, cfg) => 0;
|
||||
lfs2_mount(&lfs2, cfg) => 0;
|
||||
for (int j = 0; j < FILES; j++) {
|
||||
char path[1024];
|
||||
sprintf(path, "%c", alphas[j]);
|
||||
lfs2_file_open(&lfs2, &files[j], path,
|
||||
LFS2_O_WRONLY | LFS2_O_CREAT | LFS2_O_EXCL) => 0;
|
||||
@@ -23,7 +25,9 @@ code = '''
|
||||
lfs2_file_close(&lfs2, &files[j]);
|
||||
}
|
||||
|
||||
lfs2_dir_t dir;
|
||||
lfs2_dir_open(&lfs2, &dir, "/") => 0;
|
||||
struct lfs2_info info;
|
||||
lfs2_dir_read(&lfs2, &dir, &info) => 1;
|
||||
assert(strcmp(info.name, ".") == 0);
|
||||
assert(info.type == LFS2_TYPE_DIR);
|
||||
@@ -31,6 +35,7 @@ code = '''
|
||||
assert(strcmp(info.name, "..") == 0);
|
||||
assert(info.type == LFS2_TYPE_DIR);
|
||||
for (int j = 0; j < FILES; j++) {
|
||||
char path[1024];
|
||||
sprintf(path, "%c", alphas[j]);
|
||||
lfs2_dir_read(&lfs2, &dir, &info) => 1;
|
||||
assert(strcmp(info.name, path) == 0);
|
||||
@@ -41,12 +46,14 @@ code = '''
|
||||
lfs2_dir_close(&lfs2, &dir) => 0;
|
||||
|
||||
for (int j = 0; j < FILES; j++) {
|
||||
char path[1024];
|
||||
sprintf(path, "%c", alphas[j]);
|
||||
lfs2_file_open(&lfs2, &files[j], path, LFS2_O_RDONLY) => 0;
|
||||
}
|
||||
|
||||
for (int i = 0; i < 10; i++) {
|
||||
for (int j = 0; j < FILES; j++) {
|
||||
uint8_t buffer[1024];
|
||||
lfs2_file_read(&lfs2, &files[j], buffer, 1) => 1;
|
||||
assert(buffer[0] == alphas[j]);
|
||||
}
|
||||
@@ -59,15 +66,18 @@ code = '''
|
||||
lfs2_unmount(&lfs2) => 0;
|
||||
'''
|
||||
|
||||
[[case]] # interspersed remove file test
|
||||
define.SIZE = [10, 100]
|
||||
define.FILES = [4, 10, 26]
|
||||
[cases.test_interspersed_remove_files]
|
||||
defines.SIZE = [10, 100]
|
||||
defines.FILES = [4, 10, 26]
|
||||
code = '''
|
||||
lfs2_t lfs2;
|
||||
const char alphas[] = "abcdefghijklmnopqrstuvwxyz";
|
||||
lfs2_format(&lfs2, &cfg) => 0;
|
||||
lfs2_mount(&lfs2, &cfg) => 0;
|
||||
lfs2_format(&lfs2, cfg) => 0;
|
||||
lfs2_mount(&lfs2, cfg) => 0;
|
||||
for (int j = 0; j < FILES; j++) {
|
||||
char path[1024];
|
||||
sprintf(path, "%c", alphas[j]);
|
||||
lfs2_file_t file;
|
||||
lfs2_file_open(&lfs2, &file, path,
|
||||
LFS2_O_WRONLY | LFS2_O_CREAT | LFS2_O_EXCL) => 0;
|
||||
for (int i = 0; i < SIZE; i++) {
|
||||
@@ -77,18 +87,22 @@ code = '''
|
||||
}
|
||||
lfs2_unmount(&lfs2) => 0;
|
||||
|
||||
lfs2_mount(&lfs2, &cfg) => 0;
|
||||
lfs2_mount(&lfs2, cfg) => 0;
|
||||
lfs2_file_t file;
|
||||
lfs2_file_open(&lfs2, &file, "zzz", LFS2_O_WRONLY | LFS2_O_CREAT) => 0;
|
||||
for (int j = 0; j < FILES; j++) {
|
||||
lfs2_file_write(&lfs2, &file, (const void*)"~", 1) => 1;
|
||||
lfs2_file_sync(&lfs2, &file) => 0;
|
||||
|
||||
char path[1024];
|
||||
sprintf(path, "%c", alphas[j]);
|
||||
lfs2_remove(&lfs2, path) => 0;
|
||||
}
|
||||
lfs2_file_close(&lfs2, &file);
|
||||
|
||||
lfs2_dir_t dir;
|
||||
lfs2_dir_open(&lfs2, &dir, "/") => 0;
|
||||
struct lfs2_info info;
|
||||
lfs2_dir_read(&lfs2, &dir, &info) => 1;
|
||||
assert(strcmp(info.name, ".") == 0);
|
||||
assert(info.type == LFS2_TYPE_DIR);
|
||||
@@ -104,6 +118,7 @@ code = '''
|
||||
|
||||
lfs2_file_open(&lfs2, &file, "zzz", LFS2_O_RDONLY) => 0;
|
||||
for (int i = 0; i < FILES; i++) {
|
||||
uint8_t buffer[1024];
|
||||
lfs2_file_read(&lfs2, &file, buffer, 1) => 1;
|
||||
assert(buffer[0] == '~');
|
||||
}
|
||||
@@ -112,11 +127,12 @@ code = '''
|
||||
lfs2_unmount(&lfs2) => 0;
|
||||
'''
|
||||
|
||||
[[case]] # remove inconveniently test
|
||||
define.SIZE = [10, 100]
|
||||
[cases.test_interspersed_remove_inconveniently]
|
||||
defines.SIZE = [10, 100]
|
||||
code = '''
|
||||
lfs2_format(&lfs2, &cfg) => 0;
|
||||
lfs2_mount(&lfs2, &cfg) => 0;
|
||||
lfs2_t lfs2;
|
||||
lfs2_format(&lfs2, cfg) => 0;
|
||||
lfs2_mount(&lfs2, cfg) => 0;
|
||||
lfs2_file_t files[3];
|
||||
lfs2_file_open(&lfs2, &files[0], "e", LFS2_O_WRONLY | LFS2_O_CREAT) => 0;
|
||||
lfs2_file_open(&lfs2, &files[1], "f", LFS2_O_WRONLY | LFS2_O_CREAT) => 0;
|
||||
@@ -140,7 +156,9 @@ code = '''
|
||||
lfs2_file_close(&lfs2, &files[1]);
|
||||
lfs2_file_close(&lfs2, &files[2]);
|
||||
|
||||
lfs2_dir_t dir;
|
||||
lfs2_dir_open(&lfs2, &dir, "/") => 0;
|
||||
struct lfs2_info info;
|
||||
lfs2_dir_read(&lfs2, &dir, &info) => 1;
|
||||
assert(strcmp(info.name, ".") == 0);
|
||||
assert(info.type == LFS2_TYPE_DIR);
|
||||
@@ -161,6 +179,7 @@ code = '''
|
||||
lfs2_file_open(&lfs2, &files[0], "e", LFS2_O_RDONLY) => 0;
|
||||
lfs2_file_open(&lfs2, &files[1], "g", LFS2_O_RDONLY) => 0;
|
||||
for (int i = 0; i < SIZE; i++) {
|
||||
uint8_t buffer[1024];
|
||||
lfs2_file_read(&lfs2, &files[0], buffer, 1) => 1;
|
||||
assert(buffer[0] == 'e');
|
||||
lfs2_file_read(&lfs2, &files[1], buffer, 1) => 1;
|
||||
@@ -172,21 +191,23 @@ code = '''
|
||||
lfs2_unmount(&lfs2) => 0;
|
||||
'''
|
||||
|
||||
[[case]] # reentrant interspersed file test
|
||||
define.SIZE = [10, 100]
|
||||
define.FILES = [4, 10, 26]
|
||||
[cases.test_interspersed_reentrant_files]
|
||||
defines.SIZE = [10, 100]
|
||||
defines.FILES = [4, 10, 26]
|
||||
reentrant = true
|
||||
code = '''
|
||||
lfs2_t lfs2;
|
||||
lfs2_file_t files[FILES];
|
||||
const char alphas[] = "abcdefghijklmnopqrstuvwxyz";
|
||||
|
||||
err = lfs2_mount(&lfs2, &cfg);
|
||||
int err = lfs2_mount(&lfs2, cfg);
|
||||
if (err) {
|
||||
lfs2_format(&lfs2, &cfg) => 0;
|
||||
lfs2_mount(&lfs2, &cfg) => 0;
|
||||
lfs2_format(&lfs2, cfg) => 0;
|
||||
lfs2_mount(&lfs2, cfg) => 0;
|
||||
}
|
||||
|
||||
for (int j = 0; j < FILES; j++) {
|
||||
char path[1024];
|
||||
sprintf(path, "%c", alphas[j]);
|
||||
lfs2_file_open(&lfs2, &files[j], path,
|
||||
LFS2_O_WRONLY | LFS2_O_CREAT | LFS2_O_APPEND) => 0;
|
||||
@@ -194,8 +215,8 @@ code = '''
|
||||
|
||||
for (int i = 0; i < SIZE; i++) {
|
||||
for (int j = 0; j < FILES; j++) {
|
||||
size = lfs2_file_size(&lfs2, &files[j]);
|
||||
assert((int)size >= 0);
|
||||
lfs2_ssize_t size = lfs2_file_size(&lfs2, &files[j]);
|
||||
assert(size >= 0);
|
||||
if ((int)size <= i) {
|
||||
lfs2_file_write(&lfs2, &files[j], &alphas[j], 1) => 1;
|
||||
lfs2_file_sync(&lfs2, &files[j]) => 0;
|
||||
@@ -207,7 +228,9 @@ code = '''
|
||||
lfs2_file_close(&lfs2, &files[j]);
|
||||
}
|
||||
|
||||
lfs2_dir_t dir;
|
||||
lfs2_dir_open(&lfs2, &dir, "/") => 0;
|
||||
struct lfs2_info info;
|
||||
lfs2_dir_read(&lfs2, &dir, &info) => 1;
|
||||
assert(strcmp(info.name, ".") == 0);
|
||||
assert(info.type == LFS2_TYPE_DIR);
|
||||
@@ -215,6 +238,7 @@ code = '''
|
||||
assert(strcmp(info.name, "..") == 0);
|
||||
assert(info.type == LFS2_TYPE_DIR);
|
||||
for (int j = 0; j < FILES; j++) {
|
||||
char path[1024];
|
||||
sprintf(path, "%c", alphas[j]);
|
||||
lfs2_dir_read(&lfs2, &dir, &info) => 1;
|
||||
assert(strcmp(info.name, path) == 0);
|
||||
@@ -225,12 +249,14 @@ code = '''
|
||||
lfs2_dir_close(&lfs2, &dir) => 0;
|
||||
|
||||
for (int j = 0; j < FILES; j++) {
|
||||
char path[1024];
|
||||
sprintf(path, "%c", alphas[j]);
|
||||
lfs2_file_open(&lfs2, &files[j], path, LFS2_O_RDONLY) => 0;
|
||||
}
|
||||
|
||||
for (int i = 0; i < 10; i++) {
|
||||
for (int j = 0; j < FILES; j++) {
|
||||
uint8_t buffer[1024];
|
||||
lfs2_file_read(&lfs2, &files[j], buffer, 1) => 1;
|
||||
assert(buffer[0] == alphas[j]);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user