Renamed tests/benches such that order is logical

It doesn't make sense to test more complex logic, such as t2_btree.toml,
when the logic it is built on, t1_rbyd.toml, does not past testing. The
test runner already guarantees a consistent lexicographic order, so all
we need to do is renamed these from test_* -> tn_*.

Note, if we every have more than 10 tests, we will need to bump up the
number of digits for all tests, so t1_rbyd.toml -> t01_rbyd.toml. This
is the main downside of lexicographic ordering. But we'll cross that
bridge when we get to it.
This commit is contained in:
Christopher Haster
2023-06-30 03:08:27 -05:00
parent 938cee1640
commit 2fe2078f50
8 changed files with 216 additions and 216 deletions
@@ -5,7 +5,7 @@
# abstraction level # abstraction level
defines.BLOCK_SIZE = 'DISK_SIZE' defines.BLOCK_SIZE = 'DISK_SIZE'
[cases.bench_rbyd_attr_commit] [cases.b1_rbyd_attr_commit]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
# 2 = random-order # 2 = random-order
@@ -62,7 +62,7 @@ code = '''
lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0;
''' '''
[cases.bench_rbyd_attr_fetch] [cases.b1_rbyd_attr_fetch]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
# 2 = random-order # 2 = random-order
@@ -119,7 +119,7 @@ code = '''
BENCH_STOP(); BENCH_STOP();
''' '''
[cases.bench_rbyd_attr_lookup] [cases.b1_rbyd_attr_lookup]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
# 2 = random-order # 2 = random-order
@@ -183,7 +183,7 @@ code = '''
BENCH_STOP(); BENCH_STOP();
''' '''
[cases.bench_rbyd_attr_append] [cases.b1_rbyd_attr_append]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
# 2 = random-order # 2 = random-order
@@ -249,7 +249,7 @@ code = '''
assert(memcmp(buffer, "\xbb\xbb\xbb\xbb", 4) == 0); assert(memcmp(buffer, "\xbb\xbb\xbb\xbb", 4) == 0);
''' '''
[cases.bench_rbyd_attr_remove] [cases.b1_rbyd_attr_remove]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
# 2 = random-order # 2 = random-order
@@ -314,7 +314,7 @@ code = '''
=> LFS_ERR_NOENT; => LFS_ERR_NOENT;
''' '''
[cases.bench_rbyd_id_commit] [cases.b1_rbyd_id_commit]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
# 2 = random-order # 2 = random-order
@@ -367,7 +367,7 @@ code = '''
lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0; lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, cfg->block_size) => 0;
''' '''
[cases.bench_rbyd_id_fetch] [cases.b1_rbyd_id_fetch]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
# 2 = random-order # 2 = random-order
@@ -420,7 +420,7 @@ code = '''
BENCH_STOP(); BENCH_STOP();
''' '''
[cases.bench_rbyd_id_lookup] [cases.b1_rbyd_id_lookup]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
# 2 = random-order # 2 = random-order
@@ -478,7 +478,7 @@ code = '''
BENCH_STOP(); BENCH_STOP();
''' '''
[cases.bench_rbyd_id_create] [cases.b1_rbyd_id_create]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
# 2 = random-order # 2 = random-order
@@ -539,7 +539,7 @@ code = '''
assert(memcmp(buffer, "\xbb\xbb\xbb\xbb", 4) == 0); assert(memcmp(buffer, "\xbb\xbb\xbb\xbb", 4) == 0);
''' '''
[cases.bench_rbyd_id_delete] [cases.b1_rbyd_id_delete]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
# 2 = random-order # 2 = random-order
@@ -3,7 +3,7 @@
# of the disk for these tests # of the disk for these tests
defines.LOOKAHEAD_SIZE = 'BLOCK_COUNT / 8' defines.LOOKAHEAD_SIZE = 'BLOCK_COUNT / 8'
[cases.bench_btree_lookup] [cases.b2_btree_lookup]
defines.N = [8, 16, 32, 64, 128, 256, 1024] defines.N = [8, 16, 32, 64, 128, 256, 1024]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
@@ -53,7 +53,7 @@ code = '''
BENCH_STOP(); BENCH_STOP();
''' '''
[cases.bench_btree_commit] [cases.b2_btree_commit]
defines.N = [8, 16, 32, 64, 128, 256, 1024] defines.N = [8, 16, 32, 64, 128, 256, 1024]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
@@ -3,7 +3,7 @@
# of the disk for these tests # of the disk for these tests
defines.LOOKAHEAD_SIZE = 'BLOCK_COUNT / 8' defines.LOOKAHEAD_SIZE = 'BLOCK_COUNT / 8'
[cases.bench_mtree_lookup] [cases.b3_mtree_lookup]
defines.N = [8, 16, 32, 64, 128, 256, 1024] defines.N = [8, 16, 32, 64, 128, 256, 1024]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
@@ -64,7 +64,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.bench_mtree_commit] [cases.b3_mtree_commit]
defines.N = [8, 16, 32, 64, 128, 256, 1024] defines.N = [8, 16, 32, 64, 128, 256, 1024]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
@@ -136,7 +136,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.bench_mtree_traversal] [cases.b3_mtree_traversal]
defines.N = [8, 16, 32, 64, 128, 256, 1024] defines.N = [8, 16, 32, 64, 128, 256, 1024]
# 0 = in-order # 0 = in-order
# 1 = reversed-order # 1 = reversed-order
+5 -5
View File
@@ -4,7 +4,7 @@
# Note we use 251, a prime, in places to avoid aliasing powers of 2. # Note we use 251, a prime, in places to avoid aliasing powers of 2.
# #
[cases.test_bd_one_block] [cases.t0_bd_one_block]
defines.READ = ['READ_SIZE', 'BLOCK_SIZE'] defines.READ = ['READ_SIZE', 'BLOCK_SIZE']
defines.PROG = ['PROG_SIZE', 'BLOCK_SIZE'] defines.PROG = ['PROG_SIZE', 'BLOCK_SIZE']
code = ''' code = '''
@@ -29,7 +29,7 @@ code = '''
} }
''' '''
[cases.test_bd_two_block] [cases.t0_bd_two_block]
defines.READ = ['READ_SIZE', 'BLOCK_SIZE'] defines.READ = ['READ_SIZE', 'BLOCK_SIZE']
defines.PROG = ['PROG_SIZE', 'BLOCK_SIZE'] defines.PROG = ['PROG_SIZE', 'BLOCK_SIZE']
code = ''' code = '''
@@ -87,7 +87,7 @@ code = '''
} }
''' '''
[cases.test_bd_last_block] [cases.t0_bd_last_block]
defines.READ = ['READ_SIZE', 'BLOCK_SIZE'] defines.READ = ['READ_SIZE', 'BLOCK_SIZE']
defines.PROG = ['PROG_SIZE', 'BLOCK_SIZE'] defines.PROG = ['PROG_SIZE', 'BLOCK_SIZE']
code = ''' code = '''
@@ -145,7 +145,7 @@ code = '''
} }
''' '''
[cases.test_bd_powers_of_two] [cases.t0_bd_powers_of_two]
defines.READ = ['READ_SIZE', 'BLOCK_SIZE'] defines.READ = ['READ_SIZE', 'BLOCK_SIZE']
defines.PROG = ['PROG_SIZE', 'BLOCK_SIZE'] defines.PROG = ['PROG_SIZE', 'BLOCK_SIZE']
code = ''' code = '''
@@ -191,7 +191,7 @@ code = '''
} }
''' '''
[cases.test_bd_fibonacci] [cases.t0_bd_fibonacci]
defines.READ = ['READ_SIZE', 'BLOCK_SIZE'] defines.READ = ['READ_SIZE', 'BLOCK_SIZE']
defines.PROG = ['PROG_SIZE', 'BLOCK_SIZE'] defines.PROG = ['PROG_SIZE', 'BLOCK_SIZE']
code = ''' code = '''
+96 -96
View File
@@ -13,7 +13,7 @@ defines.ERASE_VALUE = [0xff, 0x00, 0x1b]
# waste time when testing # waste time when testing
defines.BLOCK_SIZE = 32768 defines.BLOCK_SIZE = 32768
[cases.test_rbyd_commit] [cases.t1_rbyd_commit]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -44,7 +44,7 @@ code = '''
lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0;
''' '''
[cases.test_rbyd_multi_commit] [cases.t1_rbyd_multi_commit]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -76,7 +76,7 @@ code = '''
lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0;
''' '''
[cases.test_rbyd_commit_fetch_commit] [cases.t1_rbyd_commit_fetch_commit]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -104,12 +104,12 @@ code = '''
lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0; lfsr_rbyd_fetch(&lfs, &rbyd, rbyd.block, 0) => 0;
''' '''
# [cases.test_rbyd_fetchmatch] # [cases.t1_rbyd_fetchmatch]
# [cases.test_rbyd_multi_fetchmatch] # [cases.t1_rbyd_multi_fetchmatch]
# TODO we really need to test dense keys... # TODO we really need to test dense keys...
[cases.test_rbyd_lookup] [cases.t1_rbyd_lookup]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -219,7 +219,7 @@ code = '''
&id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_multi_lookup] [cases.t1_rbyd_multi_lookup]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -331,7 +331,7 @@ code = '''
&id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_get] [cases.t1_rbyd_get]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -410,7 +410,7 @@ code = '''
=> LFS_ERR_NOENT; => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_multi_get] [cases.t1_rbyd_multi_get]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -491,7 +491,7 @@ code = '''
=> LFS_ERR_NOENT; => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_bifoliate] [cases.t1_rbyd_bifoliate]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -554,7 +554,7 @@ code = '''
assert(lfsr_data_size(data_) == 4); assert(lfsr_data_size(data_) == 4);
''' '''
[cases.test_rbyd_bflips] [cases.t1_rbyd_bflips]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -619,7 +619,7 @@ code = '''
assert(lfsr_data_size(data_) == 4); assert(lfsr_data_size(data_) == 4);
''' '''
[cases.test_rbyd_trifoliate] [cases.t1_rbyd_trifoliate]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -698,7 +698,7 @@ code = '''
assert(lfsr_data_size(data_) == 4); assert(lfsr_data_size(data_) == 4);
''' '''
[cases.test_rbyd_rflips] [cases.t1_rbyd_rflips]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -841,7 +841,7 @@ code = '''
assert(lfsr_data_size(data_) == 4); assert(lfsr_data_size(data_) == 4);
''' '''
[cases.test_rbyd_quadrifoliate] [cases.t1_rbyd_quadrifoliate]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -1012,7 +1012,7 @@ code = '''
assert(lfsr_data_size(data_) == 4); assert(lfsr_data_size(data_) == 4);
''' '''
[cases.test_rbyd_rotations] [cases.t1_rbyd_rotations]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -1183,7 +1183,7 @@ code = '''
assert(lfsr_data_size(data_) == 4); assert(lfsr_data_size(data_) == 4);
''' '''
[cases.test_rbyd_ysplits] [cases.t1_rbyd_ysplits]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -1362,7 +1362,7 @@ code = '''
assert(lfsr_data_size(data_) == 4); assert(lfsr_data_size(data_) == 4);
''' '''
[cases.test_rbyd_quintifoliate] [cases.t1_rbyd_quintifoliate]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -1569,7 +1569,7 @@ code = '''
assert(lfsr_data_size(data_) == 4); assert(lfsr_data_size(data_) == 4);
''' '''
[cases.test_rbyd_prunes] [cases.t1_rbyd_prunes]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -1735,7 +1735,7 @@ code = '''
assert(lfsr_data_size(data_) == 4); assert(lfsr_data_size(data_) == 4);
''' '''
[cases.test_rbyd_sextifoliate] [cases.t1_rbyd_sextifoliate]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -1918,7 +1918,7 @@ code = '''
assert(lfsr_data_size(data_) == 4); assert(lfsr_data_size(data_) == 4);
''' '''
[cases.test_rbyd_permutations] [cases.t1_rbyd_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -2007,7 +2007,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_multi_permutations] [cases.t1_rbyd_multi_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -2094,7 +2094,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_traverse] [cases.t1_rbyd_traverse]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -2183,7 +2183,7 @@ code = '''
&id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_multi_traverse] [cases.t1_rbyd_multi_traverse]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -2274,7 +2274,7 @@ code = '''
&id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_traverse_permutations] [cases.t1_rbyd_traverse_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -2344,7 +2344,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_multi_traverse_permutations] [cases.t1_rbyd_multi_traverse_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -2415,7 +2415,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_update_permutations] [cases.t1_rbyd_update_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -2526,7 +2526,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_large] [cases.t1_rbyd_large]
in = 'lfs.c' in = 'lfs.c'
# ORDER: # ORDER:
# 0 = in-order # 0 = in-order
@@ -2593,7 +2593,7 @@ code = '''
### Removal testing ### ### Removal testing ###
[cases.test_rbyd_remove] [cases.t1_rbyd_remove]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -2699,7 +2699,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_remove_permutations] [cases.t1_rbyd_remove_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -2849,7 +2849,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_remove_traverse_permutations] [cases.t1_rbyd_remove_traverse_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -2949,7 +2949,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_remove_missing] [cases.t1_rbyd_remove_missing]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -3098,7 +3098,7 @@ code = '''
&id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_remove_again] [cases.t1_rbyd_remove_again]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -3333,7 +3333,7 @@ code = '''
&id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_remove_all] [cases.t1_rbyd_remove_all]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -3415,7 +3415,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_remove_all_permutations] [cases.t1_rbyd_remove_all_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -3540,7 +3540,7 @@ code = '''
# the main purpose of this test is to try to fuzz for failures in the # the main purpose of this test is to try to fuzz for failures in the
# balancing algorithm # balancing algorithm
[cases.test_rbyd_fuzz_append_removes] [cases.t1_rbyd_fuzz_append_removes]
defines.N = 'range(1, 33)' defines.N = 'range(1, 33)'
defines.SAMPLES = 1000 defines.SAMPLES = 1000
# -1 => all pseudo-random seeds # -1 => all pseudo-random seeds
@@ -3682,7 +3682,7 @@ code = '''
### Insertion testing ### ### Insertion testing ###
[cases.test_rbyd_create] [cases.t1_rbyd_create]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -3829,7 +3829,7 @@ code = '''
assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0); assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0);
''' '''
[cases.test_rbyd_multi_create] [cases.t1_rbyd_multi_create]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -3986,7 +3986,7 @@ code = '''
assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0); assert(memcmp(buffer, "\xcc\xcc\xcc\xcc", 4) == 0);
''' '''
[cases.test_rbyd_create_permutations] [cases.t1_rbyd_create_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -4086,7 +4086,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_multi_create_permutations] [cases.t1_rbyd_multi_create_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -4185,7 +4185,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_create_traverse] [cases.t1_rbyd_create_traverse]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -4291,7 +4291,7 @@ code = '''
&id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_multi_create_traverse] [cases.t1_rbyd_multi_create_traverse]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -4399,7 +4399,7 @@ code = '''
&id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_create_traverse_permutations] [cases.t1_rbyd_create_traverse_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -4489,7 +4489,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_multi_create_traverse_permutations] [cases.t1_rbyd_multi_create_traverse_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -4577,7 +4577,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_create_large] [cases.t1_rbyd_create_large]
in = 'lfs.c' in = 'lfs.c'
# ORDER: # ORDER:
# 0 = in-order # 0 = in-order
@@ -4650,7 +4650,7 @@ code = '''
### Mixed create and attr testing ### ### Mixed create and attr testing ###
[cases.test_rbyd_mixed] [cases.t1_rbyd_mixed]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -4884,7 +4884,7 @@ code = '''
assert(memcmp(buffer, "\xcc\xcc", 2) == 0); assert(memcmp(buffer, "\xcc\xcc", 2) == 0);
''' '''
[cases.test_rbyd_multi_mixed] [cases.t1_rbyd_multi_mixed]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -5140,7 +5140,7 @@ code = '''
assert(memcmp(buffer, "\xcc\xcc", 2) == 0); assert(memcmp(buffer, "\xcc\xcc", 2) == 0);
''' '''
[cases.test_rbyd_mixed_permutations] [cases.t1_rbyd_mixed_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.M = 'range(1, 4)' defines.M = 'range(1, 4)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -5252,7 +5252,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_multi_mixed_permutations] [cases.t1_rbyd_multi_mixed_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.M = 'range(1, 4)' defines.M = 'range(1, 4)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -5363,7 +5363,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_mixed_traverse] [cases.t1_rbyd_mixed_traverse]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -5529,7 +5529,7 @@ code = '''
&id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_multi_mixed_traverse] [cases.t1_rbyd_multi_mixed_traverse]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -5701,7 +5701,7 @@ code = '''
&id_, &tag_, NULL, &data_) => LFS_ERR_NOENT; &id_, &tag_, NULL, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_mixed_traverse_permutations] [cases.t1_rbyd_mixed_traverse_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.M = 'range(1, 4)' defines.M = 'range(1, 4)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -5809,7 +5809,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_multi_mixed_traverse_permutations] [cases.t1_rbyd_multi_mixed_traverse_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.M = 'range(1, 4)' defines.M = 'range(1, 4)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -5918,7 +5918,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_mixed_update_permutations] [cases.t1_rbyd_mixed_update_permutations]
defines.N = 'range(1, 4)' defines.N = 'range(1, 4)'
defines.M = 'range(1, 3)' defines.M = 'range(1, 3)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -6046,7 +6046,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_mixed_remove_permutations] [cases.t1_rbyd_mixed_remove_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.M = 'range(1, 4)' defines.M = 'range(1, 4)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -6240,7 +6240,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_mixed_remove_all_permutations] [cases.t1_rbyd_mixed_remove_all_permutations]
defines.N = 'range(1, 4)' defines.N = 'range(1, 4)'
defines.M = 'range(1, 3)' defines.M = 'range(1, 3)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -6365,7 +6365,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_mixed_large] [cases.t1_rbyd_mixed_large]
in = 'lfs.c' in = 'lfs.c'
# ORDER: # ORDER:
# 0 = in-order # 0 = in-order
@@ -6456,7 +6456,7 @@ code = '''
### Test unrelated no-id tags ### ### Test unrelated no-id tags ###
[cases.test_rbyd_unrelated_create_permutations] [cases.t1_rbyd_unrelated_create_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -6594,7 +6594,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_unrelated_mixed_permutations] [cases.t1_rbyd_unrelated_mixed_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.M = 'range(1, 4)' defines.M = 'range(1, 4)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -6757,7 +6757,7 @@ code = '''
### Deletion testing ### ### Deletion testing ###
[cases.test_rbyd_delete] [cases.t1_rbyd_delete]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -6883,7 +6883,7 @@ code = '''
lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT; lfsr_rbyd_get(&lfs, &rbyd, 2, LFSR_TAG_REG, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_delete_range] [cases.t1_rbyd_delete_range]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -7123,7 +7123,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_delete_permutations] [cases.t1_rbyd_delete_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -7276,7 +7276,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_delete_range_permutations] [cases.t1_rbyd_delete_range_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.M = 'range(1, 4)' defines.M = 'range(1, 4)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -7467,7 +7467,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_delete_traverse_permutations] [cases.t1_rbyd_delete_traverse_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -7590,7 +7590,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_delete_traverse_range_permutations] [cases.t1_rbyd_delete_traverse_range_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.M = 'range(1, 4)' defines.M = 'range(1, 4)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -7735,7 +7735,7 @@ code = '''
# Note, "delete_all" is a weird state for rbyd trees to be in, since they # Note, "delete_all" is a weird state for rbyd trees to be in, since they
# don't really have a trunk at this point # don't really have a trunk at this point
[cases.test_rbyd_delete_all] [cases.t1_rbyd_delete_all]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -7849,7 +7849,7 @@ code = '''
=> LFS_ERR_NOENT; => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_delete_all_range] [cases.t1_rbyd_delete_all_range]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -7976,7 +7976,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_delete_all_permutations] [cases.t1_rbyd_delete_all_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
# n => reproduce a specific permutation # n => reproduce a specific permutation
@@ -8117,7 +8117,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_delete_all_range_permutations] [cases.t1_rbyd_delete_all_range_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.M = 'range(1, 4)' defines.M = 'range(1, 4)'
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -8277,7 +8277,7 @@ code = '''
# the main purpose of this test is to try to fuzz for failures in the # the main purpose of this test is to try to fuzz for failures in the
# balancing algorithm # balancing algorithm
[cases.test_rbyd_fuzz_create_deletes] [cases.t1_rbyd_fuzz_create_deletes]
defines.N = 'range(1, 33)' defines.N = 'range(1, 33)'
defines.SAMPLES = 1000 defines.SAMPLES = 1000
# -1 => all pseudo-random seeds # -1 => all pseudo-random seeds
@@ -8418,7 +8418,7 @@ code = '''
# Test rbyd weights # Test rbyd weights
[cases.test_rbyd_sparse] [cases.t1_rbyd_sparse]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -8655,7 +8655,7 @@ code = '''
assert(lfsr_data_size(data_) == 4); assert(lfsr_data_size(data_) == 4);
''' '''
[cases.test_rbyd_sparse_traverse] [cases.t1_rbyd_sparse_traverse]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -8757,7 +8757,7 @@ code = '''
&id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT; &id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_sparse_permutations] [cases.t1_rbyd_sparse_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
defines.W = 5 defines.W = 5
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -8843,7 +8843,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_sparse_traverse_permutations] [cases.t1_rbyd_sparse_traverse_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
defines.W = 5 defines.W = 5
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -8935,7 +8935,7 @@ code = '''
''' '''
# Weights mixed with attributes # Weights mixed with attributes
[cases.test_rbyd_sparse_mixed] [cases.t1_rbyd_sparse_mixed]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -9607,7 +9607,7 @@ code = '''
assert(lfsr_data_size(data_) == 2); assert(lfsr_data_size(data_) == 2);
''' '''
[cases.test_rbyd_sparse_mixed_traverse] [cases.t1_rbyd_sparse_mixed_traverse]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -9856,7 +9856,7 @@ code = '''
&id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT; &id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_rbyd_sparse_mixed_permutations] [cases.t1_rbyd_sparse_mixed_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
defines.W = 5 defines.W = 5
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -9967,7 +9967,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_sparse_mixed_traverse_permutations] [cases.t1_rbyd_sparse_mixed_traverse_permutations]
defines.N = 'range(1, 8)' defines.N = 'range(1, 8)'
defines.W = 5 defines.W = 5
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -10087,7 +10087,7 @@ code = '''
# other sparse testing, various grow/shrink corner cases # other sparse testing, various grow/shrink corner cases
[cases.test_rbyd_sparse_grow_permutations] [cases.t1_rbyd_sparse_grow_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.W = 5 defines.W = 5
defines.D = [1, 2] defines.D = [1, 2]
@@ -10213,7 +10213,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_sparse_grupdate_permutations] [cases.t1_rbyd_sparse_grupdate_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.W = 5 defines.W = 5
defines.D = [1, 2] defines.D = [1, 2]
@@ -10348,7 +10348,7 @@ code = '''
# I don't know if this actually happens in littlefs, but this tests a specific # I don't know if this actually happens in littlefs, but this tests a specific
# code path in lfsr_rbyd_append (split altgt + shrinking) # code path in lfsr_rbyd_append (split altgt + shrinking)
[cases.test_rbyd_sparse_grappend_permutations] [cases.t1_rbyd_sparse_grappend_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.W = 5 defines.W = 5
defines.D = [1, 2] defines.D = [1, 2]
@@ -10496,7 +10496,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_sparse_shrink_permutations] [cases.t1_rbyd_sparse_shrink_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.W = 5 defines.W = 5
defines.D = [1, 2] defines.D = [1, 2]
@@ -10622,7 +10622,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_sparse_shrupdate_permutations] [cases.t1_rbyd_sparse_shrupdate_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.W = 5 defines.W = 5
defines.D = [1, 2] defines.D = [1, 2]
@@ -10757,7 +10757,7 @@ code = '''
# I don't know if this actually happens in littlefs, but this tests a specific # I don't know if this actually happens in littlefs, but this tests a specific
# code path in lfsr_rbyd_append (split altgt + shrinking) # code path in lfsr_rbyd_append (split altgt + shrinking)
[cases.test_rbyd_sparse_shrappend_permutations] [cases.t1_rbyd_sparse_shrappend_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.W = 5 defines.W = 5
defines.D = [1, 2] defines.D = [1, 2]
@@ -10905,7 +10905,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_sparse_delete_permutations] [cases.t1_rbyd_sparse_delete_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.W = 5 defines.W = 5
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -11058,7 +11058,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_sparse_attr_permutations] [cases.t1_rbyd_sparse_attr_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.W = 5 defines.W = 5
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -11236,7 +11236,7 @@ code = '''
# Some more fuzzish testing # Some more fuzzish testing
[cases.test_rbyd_fuzz_mixed] [cases.t1_rbyd_fuzz_mixed]
defines.N = 'range(1, 33)' defines.N = 'range(1, 33)'
defines.M = 3 defines.M = 3
defines.SAMPLES = 1000 defines.SAMPLES = 1000
@@ -11418,7 +11418,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_fuzz_sparse] [cases.t1_rbyd_fuzz_sparse]
defines.N = 'range(1, 33)' defines.N = 'range(1, 33)'
defines.W = 5 defines.W = 5
defines.SAMPLES = 1000 defines.SAMPLES = 1000
@@ -11644,7 +11644,7 @@ code = '''
### Wide-tag things ### ### Wide-tag things ###
[cases.test_rbyd_wide_lookup_permutations] [cases.t1_rbyd_wide_lookup_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.SHIFT = [0, 3, -3] defines.SHIFT = [0, 3, -3]
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -11729,7 +11729,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_wide_remove_permutations] [cases.t1_rbyd_wide_remove_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.SHIFT = [0, 3, -3] defines.SHIFT = [0, 3, -3]
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -11866,7 +11866,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_wide_replace_permutations] [cases.t1_rbyd_wide_replace_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.SHIFT = [0, 3, -3] defines.SHIFT = [0, 3, -3]
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -12007,7 +12007,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_wide_mixed_lookup_permutations] [cases.t1_rbyd_wide_mixed_lookup_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.SHIFT = [0, 3, -3] defines.SHIFT = [0, 3, -3]
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -12093,7 +12093,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_wide_mixed_remove_permutations] [cases.t1_rbyd_wide_mixed_remove_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.SHIFT = [0, 3, -3] defines.SHIFT = [0, 3, -3]
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -12238,7 +12238,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_wide_mixed_replace_permutations] [cases.t1_rbyd_wide_mixed_replace_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.SHIFT = [0, 3, -3] defines.SHIFT = [0, 3, -3]
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -12387,7 +12387,7 @@ code = '''
} }
''' '''
[cases.test_rbyd_wide_weighted_lookup_permutations] [cases.t1_rbyd_wide_weighted_lookup_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.SHIFT = [0, 3, -3] defines.SHIFT = [0, 3, -3]
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -12471,7 +12471,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_wide_weighted_remove_permutations] [cases.t1_rbyd_wide_weighted_remove_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.SHIFT = [0, 3, -3] defines.SHIFT = [0, 3, -3]
# -1 => exhaust all permutations # -1 => exhaust all permutations
@@ -12610,7 +12610,7 @@ code = '''
# NOTE if we separate physical/logical block sizes we may be able to # NOTE if we separate physical/logical block sizes we may be able to
# use emubd's copy-on-write copy to speed this up significantly # use emubd's copy-on-write copy to speed this up significantly
[cases.test_rbyd_wide_weighted_replace_permutations] [cases.t1_rbyd_wide_weighted_replace_permutations]
defines.N = 'range(1, 7)' defines.N = 'range(1, 7)'
defines.SHIFT = [0, 3, -3] defines.SHIFT = [0, 3, -3]
# -1 => exhaust all permutations # -1 => exhaust all permutations
+46 -46
View File
@@ -5,7 +5,7 @@ defines.LOOKAHEAD_SIZE = 'lfs_alignup(BLOCK_COUNT / 8, 8)'
# test an empty tree # test an empty tree
[cases.test_btree_zero] [cases.t2_btree_zero]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -36,7 +36,7 @@ code = '''
''' '''
# test an inlined tree # test an inlined tree
[cases.test_btree_one] [cases.t2_btree_one]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -75,7 +75,7 @@ code = '''
''' '''
# test a single-rbyd tree # test a single-rbyd tree
[cases.test_btree_two] [cases.t2_btree_two]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -121,7 +121,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_two_backwards] [cases.t2_btree_two_backwards]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -168,7 +168,7 @@ code = '''
''' '''
# still a single-rbyd tree, just making sure it works # still a single-rbyd tree, just making sure it works
[cases.test_btree_three] [cases.t2_btree_three]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -222,7 +222,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_three_backwards] [cases.t2_btree_three_backwards]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -278,7 +278,7 @@ code = '''
# try larger trees, when exactly a tree splits depends on the disk geometry, so # try larger trees, when exactly a tree splits depends on the disk geometry, so
# we don't really have a better way of testing multi-rbyd trees # we don't really have a better way of testing multi-rbyd trees
[cases.test_btree_push] [cases.t2_btree_push]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
@@ -330,7 +330,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_push_backwards] [cases.t2_btree_push_backwards]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
@@ -382,7 +382,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_push_fuzz] [cases.t2_btree_push_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
defines.SAMPLES = 10 defines.SAMPLES = 10
# -1 => all pseudo-random seeds # -1 => all pseudo-random seeds
@@ -478,7 +478,7 @@ code = '''
} }
''' '''
[cases.test_btree_push_sparse] [cases.t2_btree_push_sparse]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
defines.W = 5 defines.W = 5
in = 'lfs.c' in = 'lfs.c'
@@ -547,7 +547,7 @@ code = '''
&id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT; &id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_push_sparse_fuzz] [cases.t2_btree_push_sparse_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
defines.W = 5 defines.W = 5
defines.SAMPLES = 10 defines.SAMPLES = 10
@@ -701,7 +701,7 @@ code = '''
# test btree updates # test btree updates
# try some small trees for easy corner cases first # try some small trees for easy corner cases first
[cases.test_btree_update_one] [cases.t2_btree_update_one]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -742,7 +742,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_update_two] [cases.t2_btree_update_two]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -793,7 +793,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_update_three] [cases.t2_btree_update_three]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -854,7 +854,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_update] [cases.t2_btree_update]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
@@ -923,7 +923,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_update_fuzz] [cases.t2_btree_update_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
defines.SAMPLES = 10 defines.SAMPLES = 10
# -1 => all pseudo-random seeds # -1 => all pseudo-random seeds
@@ -1031,7 +1031,7 @@ code = '''
} }
''' '''
[cases.test_btree_update_sparse] [cases.t2_btree_update_sparse]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
defines.W = 5 defines.W = 5
in = 'lfs.c' in = 'lfs.c'
@@ -1117,7 +1117,7 @@ code = '''
&id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT; &id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_update_sparse_fuzz] [cases.t2_btree_update_sparse_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
defines.W = 5 defines.W = 5
defines.SAMPLES = 10 defines.SAMPLES = 10
@@ -1283,7 +1283,7 @@ code = '''
# try some corner cases first, these are actually pretty tricky since we # try some corner cases first, these are actually pretty tricky since we
# need to recognize when to collapse back into an inlined tree # need to recognize when to collapse back into an inlined tree
[cases.test_btree_pop_one] [cases.t2_btree_pop_one]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -1336,7 +1336,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_pop_two] [cases.t2_btree_pop_two]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -1403,7 +1403,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_pop_two_other] [cases.t2_btree_pop_two_other]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -1470,7 +1470,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_pop_three] [cases.t2_btree_pop_three]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -1551,7 +1551,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_pop] [cases.t2_btree_pop]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
defines.REMAINING = [64, 2, 1, 0] defines.REMAINING = [64, 2, 1, 0]
if = 'N > REMAINING' if = 'N > REMAINING'
@@ -1642,7 +1642,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_pop_backwards] [cases.t2_btree_pop_backwards]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
defines.REMAINING = [64, 2, 1, 0] defines.REMAINING = [64, 2, 1, 0]
if = 'N > REMAINING' if = 'N > REMAINING'
@@ -1732,7 +1732,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_pop_fuzz] [cases.t2_btree_pop_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
defines.REMAINING = [64, 2, 1, 0] defines.REMAINING = [64, 2, 1, 0]
defines.SAMPLES = 10 defines.SAMPLES = 10
@@ -1842,7 +1842,7 @@ code = '''
} }
''' '''
[cases.test_btree_pop_sparse] [cases.t2_btree_pop_sparse]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
defines.W = 5 defines.W = 5
defines.REMAINING = [64, 2, 1, 0] defines.REMAINING = [64, 2, 1, 0]
@@ -1959,7 +1959,7 @@ code = '''
&id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT; &id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_pop_sparse_fuzz] [cases.t2_btree_pop_sparse_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
defines.W = 5 defines.W = 5
defines.REMAINING = [64, 2, 1, 0] defines.REMAINING = [64, 2, 1, 0]
@@ -2135,7 +2135,7 @@ code = '''
# test btree splits # test btree splits
[cases.test_btree_split] [cases.t2_btree_split]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
@@ -2190,7 +2190,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_split_fuzz] [cases.t2_btree_split_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
defines.SAMPLES = 10 defines.SAMPLES = 10
# -1 => all pseudo-random seeds # -1 => all pseudo-random seeds
@@ -2292,7 +2292,7 @@ code = '''
} }
''' '''
[cases.test_btree_split_sparse] [cases.t2_btree_split_sparse]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
defines.W = 5 defines.W = 5
in = 'lfs.c' in = 'lfs.c'
@@ -2348,7 +2348,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_split_sparse_fuzz] [cases.t2_btree_split_sparse_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
defines.W = 5 defines.W = 5
defines.SAMPLES = 10 defines.SAMPLES = 10
@@ -2512,7 +2512,7 @@ code = '''
# Some more general fuzz testing # Some more general fuzz testing
[cases.test_btree_general_fuzz] [cases.t2_btree_general_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
defines.SAMPLES = 100 defines.SAMPLES = 100
# -1 => all pseudo-random seeds # -1 => all pseudo-random seeds
@@ -2639,7 +2639,7 @@ code = '''
} }
''' '''
[cases.test_btree_general_sparse_fuzz] [cases.t2_btree_general_sparse_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
defines.W = 5 defines.W = 5
defines.SAMPLES = 100 defines.SAMPLES = 100
@@ -2826,7 +2826,7 @@ code = '''
# test key-value btrees # test key-value btrees
[cases.test_btree_find_zero] [cases.t2_btree_find_zero]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -2857,7 +2857,7 @@ code = '''
&id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT; &id_, &tag_, &weight_, &data_) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_find_one] [cases.t2_btree_find_one]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -2904,7 +2904,7 @@ code = '''
assert(memcmp(buffer, "0", 1) == 0); assert(memcmp(buffer, "0", 1) == 0);
''' '''
[cases.test_btree_find_two] [cases.t2_btree_find_two]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -2962,7 +2962,7 @@ code = '''
assert(memcmp(buffer, "1", 1) == 0); assert(memcmp(buffer, "1", 1) == 0);
''' '''
[cases.test_btree_find_three] [cases.t2_btree_find_three]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -3031,7 +3031,7 @@ code = '''
assert(memcmp(buffer, "2", 1) == 0); assert(memcmp(buffer, "2", 1) == 0);
''' '''
[cases.test_btree_find_three_backwards] [cases.t2_btree_find_three_backwards]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -3100,7 +3100,7 @@ code = '''
assert(memcmp(buffer, "2", 1) == 0); assert(memcmp(buffer, "2", 1) == 0);
''' '''
[cases.test_btree_find] [cases.t2_btree_find]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
@@ -3163,7 +3163,7 @@ code = '''
} }
''' '''
[cases.test_btree_find_fuzz] [cases.t2_btree_find_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
defines.SAMPLES = 10 defines.SAMPLES = 10
# -1 => all pseudo-random seeds # -1 => all pseudo-random seeds
@@ -3284,7 +3284,7 @@ code = '''
} }
''' '''
[cases.test_btree_find_sparse] [cases.t2_btree_find_sparse]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
defines.W = 5 defines.W = 5
in = 'lfs.c' in = 'lfs.c'
@@ -3349,7 +3349,7 @@ code = '''
} }
''' '''
[cases.test_btree_find_sparse_fuzz] [cases.t2_btree_find_sparse_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
defines.W = 5 defines.W = 5
defines.SAMPLES = 10 defines.SAMPLES = 10
@@ -3511,7 +3511,7 @@ code = '''
''' '''
# make sure we test finds with other operations # make sure we test finds with other operations
[cases.test_btree_find_general_fuzz] [cases.t2_btree_find_general_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
defines.SAMPLES = 100 defines.SAMPLES = 100
# -1 => all pseudo-random seeds # -1 => all pseudo-random seeds
@@ -3695,7 +3695,7 @@ code = '''
} }
''' '''
[cases.test_btree_find_general_sparse_fuzz] [cases.t2_btree_find_general_sparse_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
defines.W = 5 defines.W = 5
defines.SAMPLES = 100 defines.SAMPLES = 100
@@ -3932,7 +3932,7 @@ code = '''
## B-tree traversal tests ## ## B-tree traversal tests ##
# some simple btree traversals # some simple btree traversals
[cases.test_btree_traversal] [cases.t2_btree_traversal]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
@@ -4050,7 +4050,7 @@ code = '''
&tag_, &weight_, buffer, 4) => LFS_ERR_NOENT; &tag_, &weight_, buffer, 4) => LFS_ERR_NOENT;
''' '''
[cases.test_btree_traversal_fuzz] [cases.t2_btree_traversal_fuzz]
defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] defines.N = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
defines.SAMPLES = 10 defines.SAMPLES = 10
# -1 => all pseudo-random seeds # -1 => all pseudo-random seeds
+51 -51
View File
@@ -3,7 +3,7 @@
defines.LOOKAHEAD_SIZE = 'BLOCK_COUNT / 8' defines.LOOKAHEAD_SIZE = 'BLOCK_COUNT / 8'
# test a single mroot # test a single mroot
[cases.test_mtree_mroot] [cases.t3_mtree_mroot]
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
lfsr_format(&lfs, cfg) => 0; lfsr_format(&lfs, cfg) => 0;
@@ -12,7 +12,7 @@ code = '''
''' '''
# test a single mroot with attributes # test a single mroot with attributes
[cases.test_mtree_mroot_attrs] [cases.t3_mtree_mroot_attrs]
defines.N = [1, 3] defines.N = [1, 3]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
@@ -51,7 +51,7 @@ code = '''
''' '''
# test a single mroot with forced compaction # test a single mroot with forced compaction
[cases.test_mtree_mroot_compact] [cases.t3_mtree_mroot_compact]
defines.N = [1, 3] defines.N = [1, 3]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
@@ -93,7 +93,7 @@ code = '''
''' '''
# test a single mroot with many commits # test a single mroot with many commits
[cases.test_mtree_mroot_many_commits] [cases.t3_mtree_mroot_many_commits]
defines.N = [5, 5000] defines.N = [5, 5000]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
@@ -135,7 +135,7 @@ code = '''
## Splitting operations ## ## Splitting operations ##
# specific split corner cases # specific split corner cases
[cases.test_mtree_uninline] [cases.t3_mtree_uninline]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -207,7 +207,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_uninline_split] [cases.t3_mtree_uninline_split]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -278,7 +278,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_split] [cases.t3_mtree_split]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -377,7 +377,7 @@ code = '''
# try creating a range of entries that may or may not split our mtree # try creating a range of entries that may or may not split our mtree
[cases.test_mtree_split_many] [cases.t3_mtree_split_many]
defines.N = [5, 10, 20, 40, 80, 160, 320] defines.N = [5, 10, 20, 40, 80, 160, 320]
defines.FORCE_COMPACTION = [false, true] defines.FORCE_COMPACTION = [false, true]
in = 'lfs.c' in = 'lfs.c'
@@ -459,7 +459,7 @@ code = '''
''' '''
# create random entries # create random entries
[cases.test_mtree_split_fuzz] [cases.t3_mtree_split_fuzz]
defines.N = [5, 10, 20, 40, 80, 160] defines.N = [5, 10, 20, 40, 80, 160]
defines.FORCE_COMPACTION = [false, true] defines.FORCE_COMPACTION = [false, true]
defines.SAMPLES = 100 defines.SAMPLES = 100
@@ -576,7 +576,7 @@ code = '''
## Dropping operations ## ## Dropping operations ##
# specific drop corner cases # specific drop corner cases
[cases.test_mtree_drop] [cases.t3_mtree_drop]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -643,7 +643,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_drop_compact] [cases.t3_mtree_drop_compact]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -713,7 +713,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_drop_uninline] [cases.t3_mtree_drop_uninline]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -770,7 +770,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_drop_uninline_split_l] [cases.t3_mtree_drop_uninline_split_l]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -835,7 +835,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_drop_uninline_split_r] [cases.t3_mtree_drop_uninline_split_r]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -900,7 +900,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_drop_uninline_split_both] [cases.t3_mtree_drop_uninline_split_both]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -948,7 +948,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_drop_split_l] [cases.t3_mtree_drop_split_l]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -1040,7 +1040,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_drop_split_r] [cases.t3_mtree_drop_split_r]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -1132,7 +1132,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_drop_split_both] [cases.t3_mtree_drop_split_both]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -1209,7 +1209,7 @@ code = '''
''' '''
# try creating an mtree and then dropping mdirs # try creating an mtree and then dropping mdirs
[cases.test_mtree_drop_many] [cases.t3_mtree_drop_many]
defines.N = [5, 10, 20, 40, 80, 160, 320] defines.N = [5, 10, 20, 40, 80, 160, 320]
defines.REMAINING = [20, 5, 1, 0] defines.REMAINING = [20, 5, 1, 0]
if = 'N > REMAINING' if = 'N > REMAINING'
@@ -1306,7 +1306,7 @@ code = '''
''' '''
# this one has some pretty nasty corner cases # this one has some pretty nasty corner cases
[cases.test_mtree_repeated_drop] [cases.t3_mtree_repeated_drop]
defines.N = [5, 10, 20, 40] defines.N = [5, 10, 20, 40]
defines.FORCE_COMPACTION = [false, true] defines.FORCE_COMPACTION = [false, true]
defines.CYCLES = 10 defines.CYCLES = 10
@@ -1390,7 +1390,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_drop_fuzz] [cases.t3_mtree_drop_fuzz]
defines.N = [5, 10, 20, 40, 80, 160] defines.N = [5, 10, 20, 40, 80, 160]
defines.FORCE_COMPACTION = [false, true] defines.FORCE_COMPACTION = [false, true]
defines.SAMPLES = 100 defines.SAMPLES = 100
@@ -1530,7 +1530,7 @@ code = '''
## Relocation operations ## ## Relocation operations ##
# specific relocation corner cases # specific relocation corner cases
[cases.test_mtree_relocate] [cases.t3_mtree_relocate]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -1623,7 +1623,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_relocate_sibling_l] [cases.t3_mtree_relocate_sibling_l]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -1715,7 +1715,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_relocate_sibling_r] [cases.t3_mtree_relocate_sibling_r]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -1807,7 +1807,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_extend] [cases.t3_mtree_extend]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -1861,7 +1861,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_extend_twice] [cases.t3_mtree_extend_twice]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -1920,7 +1920,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_relocate_mroot] [cases.t3_mtree_relocate_mroot]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -1985,7 +1985,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_relocate_extend] [cases.t3_mtree_relocate_extend]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -2089,7 +2089,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_split_extend] [cases.t3_mtree_split_extend]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -2200,7 +2200,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_drop_extend] [cases.t3_mtree_drop_extend]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -2280,7 +2280,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_uninline_extend] [cases.t3_mtree_uninline_extend]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -2366,7 +2366,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_uninline_split_extend] [cases.t3_mtree_uninline_split_extend]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -2452,7 +2452,7 @@ code = '''
''' '''
# this fuzz covers a lot of configuratinos # this fuzz covers a lot of configuratinos
[cases.test_mtree_relocating_fuzz] [cases.t3_mtree_relocating_fuzz]
defines.N = [5, 10, 20, 40] defines.N = [5, 10, 20, 40]
defines.FORCE_COMPACTION = [false, true] defines.FORCE_COMPACTION = [false, true]
defines.BLOCK_CYCLES = [5, 2, 1] defines.BLOCK_CYCLES = [5, 2, 1]
@@ -2605,7 +2605,7 @@ code = '''
## Neighboring mdir updates ## ## Neighboring mdir updates ##
[cases.test_mtree_neighbor] [cases.t3_mtree_neighbor]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
const char *alphas = "abcdefghijklmnopqrstuvwxyz"; const char *alphas = "abcdefghijklmnopqrstuvwxyz";
@@ -2651,7 +2651,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_neighbor_remove_l] [cases.t3_mtree_neighbor_remove_l]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
const char *alphas = "abcdefghijklmnopqrstuvwxyz"; const char *alphas = "abcdefghijklmnopqrstuvwxyz";
@@ -2690,7 +2690,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_neighbor_remove_r] [cases.t3_mtree_neighbor_remove_r]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
const char *alphas = "abcdefghijklmnopqrstuvwxyz"; const char *alphas = "abcdefghijklmnopqrstuvwxyz";
@@ -2730,7 +2730,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_neighbor_uninline] [cases.t3_mtree_neighbor_uninline]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -2800,7 +2800,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_neighbor_uninline_split] [cases.t3_mtree_neighbor_uninline_split]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -2870,7 +2870,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_neighbor_split] [cases.t3_mtree_neighbor_split]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
in = 'lfs.c' in = 'lfs.c'
@@ -2962,7 +2962,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_neighbor_extend] [cases.t3_mtree_neighbor_extend]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -3024,7 +3024,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_neighbor_relocate] [cases.t3_mtree_neighbor_relocate]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -3116,7 +3116,7 @@ code = '''
## mtree traversal ## ## mtree traversal ##
# test specific corner cases # test specific corner cases
[cases.test_mtree_traversal] [cases.t3_mtree_traversal]
defines.VALIDATE = [false, true] defines.VALIDATE = [false, true]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
@@ -3211,7 +3211,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_traversal_uninline] [cases.t3_mtree_traversal_uninline]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
defines.VALIDATE = [false, true] defines.VALIDATE = [false, true]
@@ -3341,7 +3341,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_traversal_split] [cases.t3_mtree_traversal_split]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
defines.VALIDATE = [false, true] defines.VALIDATE = [false, true]
@@ -3471,7 +3471,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_traversal_extend] [cases.t3_mtree_traversal_extend]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -3584,7 +3584,7 @@ code = '''
''' '''
# larger traversal tests # larger traversal tests
[cases.test_mtree_traversal_many] [cases.t3_mtree_traversal_many]
defines.N = [5, 10, 20, 40, 80, 160, 320] defines.N = [5, 10, 20, 40, 80, 160, 320]
defines.VALIDATE = [false, true] defines.VALIDATE = [false, true]
defines.FORCE_COMPACTION = [false, true] defines.FORCE_COMPACTION = [false, true]
@@ -3723,7 +3723,7 @@ code = '''
lfsr_unmount(&lfs) => 0; lfsr_unmount(&lfs) => 0;
''' '''
[cases.test_mtree_traversal_fuzz] [cases.t3_mtree_traversal_fuzz]
defines.N = [5, 10, 20, 40, 80, 160] defines.N = [5, 10, 20, 40, 80, 160]
defines.VALIDATE = [false, true] defines.VALIDATE = [false, true]
defines.FORCE_COMPACTION = [false, true] defines.FORCE_COMPACTION = [false, true]
@@ -3899,7 +3899,7 @@ code = '''
## Cycle detection? ## ## Cycle detection? ##
# test that our cycle detector at least works in common cases # test that our cycle detector at least works in common cases
[cases.test_mtree_traversal_mroot_cycle] [cases.t3_mtree_traversal_mroot_cycle]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -3960,7 +3960,7 @@ code = '''
## Magic consistency ## ## Magic consistency ##
# make sure our magic string ("littlefs") shows up in the same place (off=8) # make sure our magic string ("littlefs") shows up in the same place (off=8)
[cases.test_mtree_magic] [cases.t3_mtree_magic]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
code = ''' code = '''
@@ -3979,7 +3979,7 @@ code = '''
assert(memcmp(&magic[8], "littlefs", 8) == 0); assert(memcmp(&magic[8], "littlefs", 8) == 0);
''' '''
[cases.test_mtree_magic_extend] [cases.t3_mtree_magic_extend]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -4031,7 +4031,7 @@ code = '''
assert(memcmp(&magic[8], "littlefs", 8) == 0); assert(memcmp(&magic[8], "littlefs", 8) == 0);
''' '''
[cases.test_mtree_magic_extend_twice] [cases.t3_mtree_magic_extend_twice]
# this should be set so only one entry can fit in a metadata block # this should be set so only one entry can fit in a metadata block
defines.SIZE = 'BLOCK_SIZE / 4' defines.SIZE = 'BLOCK_SIZE / 4'
# make it so blocks relocate every two compacts # make it so blocks relocate every two compacts
@@ -6,7 +6,7 @@
# config limit the block count by a couple blocks # config limit the block count by a couple blocks
# test that we can alloc # test that we can alloc
[cases.test_alloc_blocks] [cases.t4_alloc_blocks]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -39,7 +39,7 @@ code = '''
''' '''
# test that we can realloc after an ack # test that we can realloc after an ack
[cases.test_alloc_reuse] [cases.t4_alloc_reuse]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
lfs_t lfs; lfs_t lfs;
@@ -95,7 +95,7 @@ code = '''
# test that we can alloc an mtree, the difference between this and mtree tests # test that we can alloc an mtree, the difference between this and mtree tests
# is we expect this to be able to handle wrap-around # is we expect this to be able to handle wrap-around
[cases.test_alloc_mtree] [cases.t4_alloc_mtree]
in = 'lfs.c' in = 'lfs.c'
code = ''' code = '''
const char *alphas = "abcdefghijklmnopqrstuvwxyz"; const char *alphas = "abcdefghijklmnopqrstuvwxyz";