diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2012-11-22 14:09:03 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2012-11-22 16:35:05 +0100 |
commit | 0268adb3ddeb0fd187a94047923b4437e7be249e (patch) | |
tree | 655e14a296f9631cf39491c29e9f12038bdd35f9 /testsuites/fstests/fsfseeko01 | |
parent | ftpfs: Use SIZE command (diff) | |
download | rtems-0268adb3ddeb0fd187a94047923b4437e7be249e.tar.bz2 |
fstests/fsfseeko01: Add test cases
Diffstat (limited to 'testsuites/fstests/fsfseeko01')
-rw-r--r-- | testsuites/fstests/fsfseeko01/init.c | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/testsuites/fstests/fsfseeko01/init.c b/testsuites/fstests/fsfseeko01/init.c index 20797b5840..2c3d7985d6 100644 --- a/testsuites/fstests/fsfseeko01/init.c +++ b/testsuites/fstests/fsfseeko01/init.c @@ -32,26 +32,48 @@ static void test(void) ? INT64_MAX : (sizeof(off_t) == sizeof(int32_t) ? INT32_MAX : 1); off_t actual_off; + const long long_off = LONG_MAX; + long actual_long_off; errno = 0; file = fopen("file", "w+"); - perror("fopen"); rtems_test_assert(file != NULL); + rtems_test_assert(errno == 0); + + errno = 0; + rv = fseek(file, long_off, SEEK_SET); + rtems_test_assert(rv == 0); + rtems_test_assert(errno == 0); + + errno = 0; + actual_long_off = ftell(file); + rtems_test_assert(actual_long_off == long_off); + rtems_test_assert(errno == 0); + + errno = 0; + actual_off = ftello(file); + rtems_test_assert(actual_off == long_off); + rtems_test_assert(errno == 0); errno = 0; rv = fseeko(file, off, SEEK_SET); - perror("fseeko"); rtems_test_assert(rv == 0); + rtems_test_assert(errno == 0); + + errno = 0; + actual_long_off = ftell(file); + rtems_test_assert(actual_long_off == -1L); + rtems_test_assert(errno == EOVERFLOW); errno = 0; actual_off = ftello(file); - perror("ftello"); rtems_test_assert(actual_off == off); + rtems_test_assert(errno == 0); errno = 0; rv = fclose(file); - perror("fclose"); rtems_test_assert(rv == 0); + rtems_test_assert(errno == 0); } static void Init(rtems_task_argument arg) |