X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=direct%2Ftimothy_tests%2Fquick_tests%2Ftest_yaffs_read_EINVAL.c;h=27120b21c313a8074ea5a7e594522c7819558887;hp=46e11f78c2936f1e13540a6eb4ce71ab52af6327;hb=c7ada078b9d435ea7e7eb4732974135e15006537;hpb=7827323c3e54b664075177cdb5626bb4dd1e7ed1 diff --git a/direct/timothy_tests/quick_tests/test_yaffs_read_EINVAL.c b/direct/timothy_tests/quick_tests/test_yaffs_read_EINVAL.c index 46e11f7..27120b2 100644 --- a/direct/timothy_tests/quick_tests/test_yaffs_read_EINVAL.c +++ b/direct/timothy_tests/quick_tests/test_yaffs_read_EINVAL.c @@ -13,83 +13,105 @@ #include "test_yaffs_read_EINVAL.h" -static int handle=0; - +static int handle = -1; static char *file_name = NULL; -int test_yaffs_read_EINVAL(void){ - int error_code=0; - handle=test_yaffs_open(); + +int test_yaffs_read_EINVAL(void) +{ + int error_code = 0; + handle=yaffs_open(FILE_PATH,O_CREAT | O_RDWR, FILE_MODE); + printf("newly opend handle = %d handle\n",handle); char text[2000000]="\0"; int output=0; if (handle<0){ - printf("could not open file\n"); + print_message("could not open file\n",2); return -1; } /*there needs a large amout of test in the file in order to trigger EINVAL */ output=test_yaffs_read_EINVAL_init(); if (output<0){ - printf("could not write text to the file\n"); + print_message("could not write text to the file\n",2); return -1; } if (handle>=0){ output=yaffs_read(handle, text, -1); - if (output<0){ error_code=yaffs_get_error(); if (abs(error_code)== EINVAL){ return 1; - } - else { - printf("different error than expected\n"); + } else { + print_message("different error than expected\n",2); return -1; } - } - else{ - printf("read a negative number of bytes (which is a bad thing)\n"); + } else{ + print_message("read a negative number of bytes (which is a bad thing)\n",2); return -1; } - } - else { - printf("error opening file\n"); + } else { + print_message("error opening file\n",2); return -1; } - } -int test_yaffs_read_EINVAL_clean(void){ +int test_yaffs_read_EINVAL_clean(void) +{ int output=0; if (handle>=0){ - output=test_yaffs_read_EINVAL_init_clean(); + if(file_name){ + free(file_name); + file_name = NULL; + } + + + output= yaffs_truncate(FILE_PATH,FILE_SIZE ); + if (output>=0){ + output=test_yaffs_write(); + if (output<0){ + print_message("failed to write to file\n",2); + return -1; + } else { + output=test_yaffs_write_clean(); + if (output<0){ + print_message("failed to clean the write_to_file function\n",2); + } + } + } else { + print_message("failed to truncate file\n",2); + return -1; + } + if(output>=0){ output=yaffs_close(handle); if (output>=0){ + printf("closed the file, handle %d\n",handle); return 1; } else { - printf("could not close the handle\n"); + print_message("could not close the handle\n",2); return -1; } } else { - printf("failed to fix the file\n"); + print_message("failed to fix the file\n",2); return -1; } + } else { + print_message("no open handle\n",2); + return -1; } - } int test_yaffs_read_EINVAL_init(void) { int output=0; - int error_code=0; int x=0; int file_name_length=1000000; file_name = malloc(file_name_length); if(!file_name){ - printf("unable to create file text\n"); + print_message("unable to create file text\n",2); return -1; } @@ -104,7 +126,7 @@ int test_yaffs_read_EINVAL_init(void) if (handle>=0){ output= yaffs_write(handle, file_name, file_name_length-1); if (output<0){ - printf("could not write text to file\n"); + print_message("could not write text to file\n",2); return -1; } else { @@ -112,34 +134,10 @@ int test_yaffs_read_EINVAL_init(void) } } else { - printf("error opening file\n"); + print_message("error opening file\n",2); return -1; } } -int test_yaffs_read_EINVAL_init_clean(void) -{ - int output=1; - if(file_name){ - free(file_name); - file_name = NULL; - } - - - output= yaffs_truncate(FILE_PATH,FILE_SIZE ); - if (output>=0){ - output=test_yaffs_write(); - if (output>=0){ - return 1; - } else { - printf("failed to write to file\n"); - return -1; - } - } else { - printf("failed to truncate file\n"); - return -1; - } - -}