aboutsummaryrefslogtreecommitdiffstats
path: root/test/mfs/source
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2018-11-13 16:30:27 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2018-11-13 16:30:27 +0000
commit08debc286839353dd5cba39d527214589686702e (patch)
treef8f06769e5e3ad2790110baa64a1995232750611 /test/mfs/source
parent1d6d312d43a5cceda95705b3a04eb21a5c4cb310 (diff)
downloadChibiOS-08debc286839353dd5cba39d527214589686702e.tar.gz
ChibiOS-08debc286839353dd5cba39d527214589686702e.tar.bz2
ChibiOS-08debc286839353dd5cba39d527214589686702e.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@12417 110e8d01-0319-4d1e-a829-52ad28d1bb01
Diffstat (limited to 'test/mfs/source')
-rw-r--r--test/mfs/source/test/mfs_test_sequence_001.c50
1 files changed, 44 insertions, 6 deletions
diff --git a/test/mfs/source/test/mfs_test_sequence_001.c b/test/mfs/source/test/mfs_test_sequence_001.c
index 272924bd4..20b4d8d89 100644
--- a/test/mfs/source/test/mfs_test_sequence_001.c
+++ b/test/mfs/source/test/mfs_test_sequence_001.c
@@ -309,14 +309,16 @@ static const testcase_t mfs_test_001_003 = {
};
/**
- * @page mfs_test_001_004 [1.4] Erasing the whole storage
+ * @page mfs_test_001_004 [1.4] Erasing the whole storage and re-initialization
*
* <h2>Description</h2>
- * The managed storage is erased and re-initialized.
+ * The managed storage is erased, initialized and re-mounted.
*
* <h2>Test Steps</h2>
* - [1.4.1] Creating records 1, 2 and 3, MFS_NO_ERROR is expected.
- * - [1.4.2] Erasing storage and verify that the records have been
+ * - [1.4.2] Records must exist.
+ * - [1.4.3] Re-mounting, records must still exist.
+ * - [1.4.4] Erasing storage and verify that the records have been
* removed, MFS_NO_ERROR is expected on erase, MFS_ERR_NOT_FOUND is
* expected on retrieve.
* .
@@ -347,10 +349,46 @@ static void mfs_test_001_004_execute(void) {
test_assert(err == MFS_NO_ERROR, "error creating record 3");
}
- /* [1.4.2] Erasing storage and verify that the records have been
+ /* [1.4.2] Records must exist.*/
+ test_set_step(2);
+ {
+ mfs_error_t err;
+ size_t size;
+
+ size = sizeof mfs_buffer;
+ err = mfsReadRecord(&mfs1, 1, &size, mfs_buffer);
+ test_assert(err == MFS_NO_ERROR, "record 0 not present");
+ size = sizeof mfs_buffer;
+ err = mfsReadRecord(&mfs1, 2, &size, mfs_buffer);
+ test_assert(err == MFS_NO_ERROR, "record 1 not present");
+ size = sizeof mfs_buffer;
+ err = mfsReadRecord(&mfs1, 3, &size, mfs_buffer);
+ test_assert(err == MFS_NO_ERROR, "record 2 not present");
+ }
+
+ /* [1.4.3] Re-mounting, records must still exist.*/
+ test_set_step(3);
+ {
+ mfs_error_t err;
+ size_t size;
+
+ err = mfsStart(&mfs1, &mfscfg1);
+ test_assert(err == MFS_NO_ERROR, "re-mount failed");
+ size = sizeof mfs_buffer;
+ err = mfsReadRecord(&mfs1, 1, &size, mfs_buffer);
+ test_assert(err == MFS_NO_ERROR, "record 0 not present");
+ size = sizeof mfs_buffer;
+ err = mfsReadRecord(&mfs1, 2, &size, mfs_buffer);
+ test_assert(err == MFS_NO_ERROR, "record 1 not present");
+ size = sizeof mfs_buffer;
+ err = mfsReadRecord(&mfs1, 3, &size, mfs_buffer);
+ test_assert(err == MFS_NO_ERROR, "record 2 not present");
+ }
+
+ /* [1.4.4] Erasing storage and verify that the records have been
removed, MFS_NO_ERROR is expected on erase, MFS_ERR_NOT_FOUND is
expected on retrieve.*/
- test_set_step(2);
+ test_set_step(4);
{
mfs_error_t err;
size_t size;
@@ -370,7 +408,7 @@ static void mfs_test_001_004_execute(void) {
}
static const testcase_t mfs_test_001_004 = {
- "Erasing the whole storage",
+ "Erasing the whole storage and re-initialization",
mfs_test_001_004_setup,
mfs_test_001_004_teardown,
mfs_test_001_004_execute