yaffs Fixed an error in direct/timothy_tests/quick_tests
[yaffs2.git] / direct / timothy_tests / quick_tests / test_yaffs_stat.c
index d47fd2912cdf79de81a98b1d47be32b78e851d12..8244333b880d7b67a47b3e5108fef82a07d2039a 100644 (file)
 
 #include "test_yaffs_stat.h"
 
-int test_yaffs_stat(void){
+int test_yaffs_stat(void)
+{
+       char message[100];
        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;
        }
 }
@@ -70,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;
        }
 }