[rtems commit] fstests/fsfseeko01: Add test cases

Sebastian Huber sebh at rtems.org
Thu Nov 22 15:31:31 UTC 2012


Module:    rtems
Branch:    master
Commit:    0268adb3ddeb0fd187a94047923b4437e7be249e
Changeset: http://git.rtems.org/rtems/commit/?id=0268adb3ddeb0fd187a94047923b4437e7be249e

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Thu Nov 22 14:09:03 2012 +0100

fstests/fsfseeko01: Add test cases

---

 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 20797b5..2c3d798 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)




More information about the vc mailing list