2 #include "yaffs_tester.h"
6 int simulate_power_failure = 0;
9 buffer message_buffer; /*create message_buffer */
15 char yaffs_test_dir[]="/yaffs2/test_dir";
16 char yaffs_mount_dir[]="/yaffs2/";
17 printf("welcome to the yaffs tester\n");
18 init(yaffs_test_dir,yaffs_mount_dir);
19 //test(yaffs_test_dir);
20 add_to_buffer(&message_buffer,"message1\0");
21 add_to_buffer(&message_buffer,"message2\0");
22 add_to_buffer(&message_buffer,"message3\0");
23 add_to_buffer(&message_buffer,"message4\0");
24 add_to_buffer(&message_buffer,"message5\0");
25 print_buffer(&message_buffer);
26 yaffs_unmount(yaffs_mount_dir);
30 void add_to_buffer(buffer *p_Buffer, char message[])
32 //add a thing to add \0 on the end of the message
33 if (p_Buffer->head+1==p_Buffer->tail)
36 if (p_Buffer->tail >BUFFER_SIZE-1) p_Buffer->tail -= BUFFER_SIZE-1;
39 /*move the head up one. the head always points at the last witten data*/
41 if (p_Buffer->head >BUFFER_SIZE) p_Buffer->head -= BUFFER_SIZE;
43 strcpy(p_Buffer->message[p_Buffer->head],message);
46 void print_buffer(buffer *p_Buffer)
48 printf("print buffer\n");
49 printf("buffer head:%d\n",p_Buffer->head);
50 printf("buffer tail:%d\n",p_Buffer->tail);
52 for (x=p_Buffer->head; x>=p_Buffer->tail; x--)
55 if (x<0) x = BUFFER_SIZE;
56 printf("%s",p_Buffer->message[x]);
63 void init(char yaffs_test_dir[],char yaffs_mount_dir[])
66 yaffs_mount(yaffs_mount_dir);
67 if (yaffs_access(yaffs_test_dir,0))
69 yaffs_mkdir(yaffs_test_dir,S_IREAD | S_IWRITE);
73 void yaffs_check_for_errors(char output)
78 print_buffer(&message_buffer);
82 void test(char yaffs_test_dir[])
84 char name[MAX_FILE_NAME_SIZE +3];
89 generate_random_string(name);
90 printf("the length of the string is %d \n",strlen(name));
91 printf("generated string is:");
92 for (x=0; x <= (strlen(name)-1)&&x<=MAX_FILE_NAME_SIZE ; x++)
94 // printf("x=%d\n",x);
95 printf("%c ",name[x]);
100 void generate_random_string(char *ptr)
103 unsigned int length=((rand() %MAX_FILE_NAME_SIZE)+1); /*creates a int with the number of charecters been between 1 and 51*/
104 printf("generating string\n");
105 printf("string length is %d\n",length);
106 for (x=0; x <= (length-2) &&length>2 ; x++)
108 // printf("x=%d\n",x);
109 ptr[x]=(rand() % 126-32)+32; /*generate a number between 32 and 126 and uses it as a charecter (letter) */
110 // printf("charecter generated is %c\n",ptr[x]);
112 ptr[x+1]=0; /*adds NULL charecter to turn it into a string*/