From 08debc286839353dd5cba39d527214589686702e Mon Sep 17 00:00:00 2001 From: Giovanni Di Sirio Date: Tue, 13 Nov 2018 16:30:27 +0000 Subject: git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@12417 110e8d01-0319-4d1e-a829-52ad28d1bb01 --- test/mfs/configuration.xml | 50 ++++++++++++++++++++++++++-- test/mfs/source/test/mfs_test_sequence_001.c | 50 ++++++++++++++++++++++++---- 2 files changed, 92 insertions(+), 8 deletions(-) (limited to 'test') diff --git a/test/mfs/configuration.xml b/test/mfs/configuration.xml index a222033f8..efc7b5b04 100644 --- a/test/mfs/configuration.xml +++ b/test/mfs/configuration.xml @@ -385,10 +385,10 @@ test_assert(err == MFS_ERR_NOT_FOUND, "record not erased");]]> - Erasing the whole storage. + Erasing the whole storage and re-initialization. - The managed storage is erased and re-initialized. + The managed storage is erased, initialized and re-mounted. @@ -425,6 +425,52 @@ err = mfsWriteRecord(&mfs1, 3, sizeof pattern3, pattern3); test_assert(err == MFS_NO_ERROR, "error creating record 3");]]> + + + Records must exist. + + + + + + + + + + + Re-mounting, records must still exist. + + + + + + + + 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. 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 * *

Description

- * The managed storage is erased and re-initialized. + * The managed storage is erased, initialized and re-mounted. * *

Test Steps

* - [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 -- cgit v1.2.3