X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=direct%2Ftimothy_tests%2Fquick_tests%2Ftest_yaffs_stat.c;h=83efcdbb05a3a5126c0ce7de8657c088eeefc42c;hp=0d972a61cfe9f3f12e6286c7ae2569329d977d1c;hb=c7ada078b9d435ea7e7eb4732974135e15006537;hpb=90c66937f76d1e4ce1fb43aed91219c4f1e443f1 diff --git a/direct/timothy_tests/quick_tests/test_yaffs_stat.c b/direct/timothy_tests/quick_tests/test_yaffs_stat.c index 0d972a6..83efcdb 100644 --- a/direct/timothy_tests/quick_tests/test_yaffs_stat.c +++ b/direct/timothy_tests/quick_tests/test_yaffs_stat.c @@ -1,52 +1,75 @@ +/* + * YAFFS: Yet another FFS. A NAND-flash specific file system. + * + * Copyright (C) 2002-2010 Aleph One Ltd. + * for Toby Churchill Ltd and Brightstar Engineering + * + * Created by Timothy Manning + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + #include "test_yaffs_stat.h" -int test_yaffs_stat(void){ +int test_yaffs_stat(void) +{ + char message[20]; int mode=0; int size=0; - mode =yaffs_test_stat_mode(); - printf("\nmode %o\n",mode); - printf("expected mode %o \n",FILE_MODE); - printf("anding together %o\n",FILE_MODE & mode); - printf("%d\n",FILE_MODE == (FILE_MODE & mode)); - if (FILE_MODE == (FILE_MODE & mode)){ - mode=1; - } - else { - printf("mode did not match expected file mode\n"); - return -1; - } - if (yaffs_test_stat_size()==FILE_SIZE){ - size=1; - } - else { - printf("mode did not match expected file mode\n"); - return -1; + message[0]='\0'; + + mode =yaffs_test_stat_mode(); + if (mode>=0){ + if (FILE_MODE == (FILE_MODE & mode)){ + mode=1; + } else { + print_message("mode did not match expected file mode\n",2); + return -1; + } + } else { + mode =-1; } - - if (mode && size){ + + size=yaffs_test_stat_size(); + if (size >=0){ + if (size==FILE_SIZE){ + size=1; + } else { + sprintf(message,"file size %d, expected file size %d\n",size,FILE_SIZE); + print_message(message,2); + print_message("mode did not match expected file mode\n",2); + return -1; + } + } else { + size =-1; + } + + + if ((mode>0) && (size>0)){ return 1; - } - else { - /* a test failed*/ + } else { + /* one of the tests failed*/ return -1; } - } -int test_yaffs_stat_clean(void){ +int test_yaffs_stat_clean(void) +{ return 1; } -int yaffs_test_stat_mode(void){ +int yaffs_test_stat_mode(void) +{ struct yaffs_stat stat; int output=0; output=yaffs_stat(FILE_PATH, &stat); - printf("output: %d\n",output); + //printf("output: %d\n",output); if (output>=0){ return stat.st_mode; - } - else { - printf("failed to stat file\n") ; + } else { + print_message("failed to stat file mode\n",2) ; return -1; } } @@ -57,9 +80,8 @@ int yaffs_test_stat_size(void){ output=yaffs_stat(FILE_PATH, &stat); if (output>=0){ return stat.st_size; - } - else { - printf("failed to stat file\n") ; + } else { + print_message("failed to stat file size\n",2) ; return -1; } }