5e6d0d9f76f4f28bb0514976d2a85e69825fcb62
[scilab.git] / scilab / modules / fileio / tests / unit_tests / copyfile.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2007-2008 - INRIA - Bruno JOFRET <bruno.jofret@inria.fr>
4 // Copyright (C) 2007-2008 - INRIA - Allan CORNET
5 // Copyright (C) 2009 - DIGITEO - Allan CORNET
6 //
7 //  This file is distributed under the same license as the Scilab package.
8 // =============================================================================
9
10 // <-- CLI SHELL MODE -->
11
12 // =============================================================================
13 // Date   : 13/12/2007
14 //
15 // Unitary tests for copyfile function
16 // =============================================================================
17 // TEST 1 : copyfile
18 tab_ref = [
19 "世界您好",
20 "азеазея",
21 "ハロー・ワールド",
22 "เฮลโลเวิลด์",
23 "حريات وحقوق",
24 "프로그램",
25 "프로그램",
26 "תוכנית"];
27 cd TMPDIR;
28 mkdir test_copyfile_source;
29 mkdir test_copyfile_target;
30 cd('test_copyfile_source');
31
32 for i = 1 : size(tab_ref,"*")
33         filename = tab_ref(i) + '.orig';
34         mputl('I am a dummy String : ' + tab_ref(i), filename);
35         if fileinfo(filename) == [] then pause,end
36 end
37
38 for i = 1 : size(tab_ref,"*")
39         orig = tab_ref(i) + '.orig';
40         dest = tab_ref(i) + '.dest';
41         r = copyfile(TMPDIR+'/test_copyfile_source/' + orig, TMPDIR+'/test_copyfile_target/' + dest);
42         if r <> 1 then pause,end
43         if fileinfo(TMPDIR+'/test_copyfile_target/' + dest) == [] then pause,end
44 end
45
46 cd TMPDIR;
47 rmdir('test_copyfile_source', 's');
48 rmdir('test_copyfile_target', 's');
49 // =============================================================================
50 cd TMPDIR;
51 dir1="test dir with space";
52 dir2="test dir with space number 2";
53 file1='dummyFile.dummy';
54 mkdir(dir1);
55 mkdir(dir2);
56
57 mputl('I am a dummy String', dir1+'/'+file1);
58 copyfile(dir1+'/'+file1,dir2);
59
60 lsResult = ls(dir2+'/'+file1);
61 if lsResult == [] then pause,end
62 // =============================================================================
63 removedir(TMPDIR+'/etc');
64 ierr = execstr("copyfile(SCI+""etc"",TMPDIR)","errcatch");
65 if ierr <> 999 then pause,end
66 // =============================================================================
67 ref_files = ['fileio.start','fileio.quit'];
68 // =============================================================================
69 // copy a directory into a directory
70 a = copyfile(SCI+'/modules/fileio/etc',TMPDIR);
71 if (a <> 1) then pause,end
72 if fileinfo(TMPDIR + filesep() + ref_files(1)) == [] then pause,end
73 if fileinfo(TMPDIR + filesep() + ref_files(2)) == [] then pause,end
74 mdelete(TMPDIR + filesep() + ref_files(1));
75 mdelete(TMPDIR + filesep() + ref_files(2));
76 // =============================================================================
77 // copy a directory into a directory  with separator(s)
78 a = copyfile(SCI+'/modules/fileio/etc',TMPDIR + filesep());
79 if (a <> 1) then pause,end
80 if fileinfo(TMPDIR + filesep() + ref_files(1)) == [] then pause,end
81 if fileinfo(TMPDIR + filesep() + ref_files(2)) == [] then pause,end
82 mdelete(TMPDIR + filesep() + ref_files(1));
83 mdelete(TMPDIR + filesep() + ref_files(2));
84 // =============================================================================
85 // copy a directory into a directory  with separator(s)
86 a = copyfile(SCI+'/modules/fileio/etc' + filesep(), TMPDIR);
87 if (a <> 1) then pause,end
88 if fileinfo(TMPDIR + filesep() + ref_files(1)) == [] then pause,end
89 if fileinfo(TMPDIR + filesep() + ref_files(2)) == [] then pause,end
90 mdelete(TMPDIR + filesep() + ref_files(1));
91 mdelete(TMPDIR + filesep() + ref_files(2));
92 // =============================================================================
93 // copy a directory into a directory  with separator(s)
94 a = copyfile(SCI+'/modules/fileio/etc' + filesep(), TMPDIR  + filesep());
95 if (a <> 1) then pause,end
96 if fileinfo(TMPDIR + filesep() + ref_files(1)) == [] then pause,end
97 if fileinfo(TMPDIR + filesep() + ref_files(2)) == [] then pause,end
98 mdelete(TMPDIR + filesep() + ref_files(1));
99 mdelete(TMPDIR + filesep() + ref_files(2));
100 // =============================================================================
101 // copy a file to a file
102 mdelete(TMPDIR + '/scilab.start');
103 a = copyfile(SCI+'/etc/scilab.start', TMPDIR + '/scilab.start');
104 if fileinfo(TMPDIR + '/scilab.start') == [] then pause,end
105 mdelete(TMPDIR + '/scilab.start');
106 // =============================================================================
107 // copy a file into a directory
108 mdelete(TMPDIR + '/scilab.quit');
109 a = copyfile(SCI+'/etc/scilab.quit', TMPDIR);
110 if fileinfo(TMPDIR + '/scilab.quit') == [] then pause,end
111 mdelete(TMPDIR + '/scilab.quit');
112 // =============================================================================
113 // copy a file into a directory with separator
114 mdelete(TMPDIR + '/modules.xml');
115 a = copyfile(SCI+'/etc/modules.xml', TMPDIR + filesep());
116 if fileinfo(TMPDIR + '/modules.xml') == [] then pause,end
117 mdelete(TMPDIR + '/modules.xml');
118 // =============================================================================
119 // copy directory with sub-directories
120 mkdir(TMPDIR + '/copyfile_test');
121 a = copyfile(SCI+'/modules/fileio/tests', TMPDIR + filesep() + 'copyfile_test');
122 if (a <> 1) then pause,end
123 if fileinfo(TMPDIR + '/copyfile_test/unit_tests/copyfile.tst') == [] then pause,end
124 rmdir(TMPDIR + '/copyfile_test');
125 // =============================================================================