X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=direct%2Fdtest.c;h=a93e1d05071a135a036591468720730368b7442e;hp=af02ff3edda4382e82f40682d629d34243d0bc98;hb=81be9bc57e13b12a5fe860ee9e53a041f10822a8;hpb=30ab3ff5e311e8e2b488c3f62f30e7450dc6bee9 diff --git a/direct/dtest.c b/direct/dtest.c index af02ff3..a93e1d0 100644 --- a/direct/dtest.c +++ b/direct/dtest.c @@ -1,7 +1,7 @@ /* * YAFFS: Yet another FFS. A NAND-flash specific file system. * - * Copyright (C) 2002 Aleph One Ltd. + * Copyright (C) 2002-2010 Aleph One Ltd. * for Toby Churchill Ltd and Brightstar Engineering * * Created by Charles Manning @@ -1036,6 +1036,36 @@ int resize_stress_test(const char *path) } + +int overwrite_test(const char *path) +{ + char aname[100]; + char bname[100]; + int i; + int j; + int a; + int b; + yaffs_StartUp(); + + yaffs_mount(path); + + sprintf(aname,"%s%s",path,"/a"); + sprintf(bname,"%s%s",path,"/b"); + + b = yaffs_open(bname, O_CREAT | O_TRUNC | O_RDWR, S_IREAD | S_IWRITE); + for(j= 0; j < 500; j++){ + yaffs_write(b,bname,100); + a = yaffs_open(aname, O_CREAT | O_TRUNC | O_RDWR, S_IREAD | S_IWRITE); + for(i = 0; i < rand() % 20000; i++) + yaffs_write(a,&a,sizeof(a)); + yaffs_close(a); + } + + return 0; + +} + + int root_perm_remount(const char *path) { struct yaffs_stat s; @@ -2480,6 +2510,9 @@ int main(int argc, char *argv[]) //rename_over_test("//////////////////flash///////////////////yaffs1///////////"); //fill_empty_files_test("/yaffs2/"); + //resize_stress_test("/yaffs2"); + overwrite_test("/yaffs2"); + //long_name_test("/yaffs2"); //link_test0("/yaffs2"); //link_test1("yaffs2"); @@ -2496,7 +2529,7 @@ int main(int argc, char *argv[]) // huge_array_test("/flash/flash",10); - handle_test("yaffs2/"); + // handle_test("yaffs2/"); //long_test_on_path("/ram2k"); // long_test_on_path("/flash");