[doc] label_properties improved
[scilab.git] / scilab / modules / fileio / tests / unit_tests / fileparts.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2008 - INRIA
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7
8 // <-- CLI SHELL MODE -->
9
10 //===============================
11 // Tests fileparts
12 //===============================
13
14 // Error messages
15
16 errmsg1 = msprintf(_("%s: Wrong number of input argument(s): %d to %d expected.\n"), "fileparts", 1, 2);
17 assert_checkerror("fileparts(SCI+''/etc/scilab.start'', ""extension"", ""extension"")", errmsg1);
18
19 errmsg2 = msprintf(_("%s: Wrong number of output arguments: %d expected.\n"),  "fileparts", 1);
20 assert_checkerror("[a,b] = fileparts(SCI+''/etc/scilab.start'',""extension"")", errmsg2);
21
22 errmsg3 = msprintf(_("%s: Wrong type for input argument #%d: string expected.\n"), "fileparts", 1);
23 assert_checkerror("[path,fname,extension] = fileparts([]);", errmsg3);
24
25 errmsg4 = msprintf(_("%s: Wrong value for input argument #%d.\n"), "fileparts", 2);
26 assert_checkerror("extension = fileparts(SCI+''/etc/scilab.start'',''rpr'');", errmsg4);
27
28 errmsg5 = msprintf(_("%s: Wrong type for input argument #%d: string expected.\n"), "fileparts", 2);
29 assert_checkerror("extension = fileparts(SCI+''/etc/scilab.start'',10);", errmsg5);
30
31 errmsg6 = msprintf(_("%s: Wrong type for input argument #%d: string expected.\n"), "fileparts", 1);
32 assert_checkerror("extension = fileparts(10,10);", errmsg6);
33
34 errmsg7 = msprintf(_("%s: Wrong size for input argument #%d: string expected.\n"), "fileparts", 2);
35 assert_checkerror("fileparts(SCI+''/etc/scilab.start'', [""extension"", ""extension""])", errmsg7);
36
37 // For a string
38 [path,fname,extension] = fileparts(SCI+'/etc/scilab.start');
39 assert_checkequal(path, pathconvert(SCI+'/etc/',%t,%t));
40 assert_checkequal(fname, 'scilab');
41 assert_checkequal(extension, '.start');
42 //===============================
43 r = fileparts(SCI+'/etc/scilab.start','path');
44 assert_checkequal(r, pathconvert(SCI+'/etc/',%t,%f));
45 //===============================
46 r = fileparts(SCI+'/etc/scilab.start','fname');
47 assert_checkequal(r, 'scilab');
48 //===============================
49 r = fileparts(SCI+'/etc/scilab.start','extension');
50 assert_checkequal(r, '.start');
51 //===============================
52
53 // For an empty string
54 [path,fname,extension] = fileparts("");
55 assert_checkequal(path, "");
56 assert_checkequal(fname, "");
57 assert_checkequal(extension, "");
58 //===============================
59 r = fileparts("", 'path');
60 assert_checkequal(r, "");
61 //===============================
62 r = fileparts("", 'fname');
63 assert_checkequal(fname, "");
64 //===============================
65 r = fileparts("", 'extension');
66 assert_checkequal(extension, "");
67
68 // For a matrix of strings (1x2)
69 [path,fname,extension] = fileparts([SCI+'/etc/scilab.start', SCI+'/etc/scilab.start']);
70 assert_checkequal(path, [pathconvert(SCI+'/etc/',%t,%t), pathconvert(SCI+'/etc/',%t,%t)]);
71 assert_checkequal(fname, ['scilab', 'scilab']);
72 assert_checkequal(extension, ['.start', '.start']);
73 //===============================
74 r = fileparts([SCI+'/etc/scilab.start', SCI+'/etc/scilab.start'],'path');
75 assert_checkequal(r, [pathconvert(SCI+'/etc/',%t,%f), pathconvert(SCI+'/etc/',%t,%f)]);
76 //===============================
77 r = fileparts([SCI+'/etc/scilab.start', SCI+'/etc/scilab.start'],'fname');
78 assert_checkequal(r, ['scilab', 'scilab']);
79 //===============================
80 r = fileparts([SCI+'/etc/scilab.start', SCI+'/etc/scilab.start'],'extension');
81 assert_checkequal(r, ['.start', '.start']);
82 // For a matrix of strings (2x1)
83 [path,fname,extension] = fileparts([SCI+'/etc/scilab.start'; SCI+'/etc/scilab.start']);
84 assert_checkequal(path, [pathconvert(SCI+'/etc/',%t,%t); pathconvert(SCI+'/etc/',%t,%t)]);
85 assert_checkequal(fname, ['scilab'; 'scilab']);
86 assert_checkequal(extension, ['.start'; '.start']);
87 //===============================
88 r = fileparts([SCI+'/etc/scilab.start'; SCI+'/etc/scilab.start'],'path');
89 assert_checkequal(r, [pathconvert(SCI+'/etc/',%t,%f); pathconvert(SCI+'/etc/',%t,%f)]);
90 //===============================
91 r = fileparts([SCI+'/etc/scilab.start'; SCI+'/etc/scilab.start'],'fname');
92 assert_checkequal(r, ['scilab'; 'scilab']);
93 //===============================
94 r = fileparts([SCI+'/etc/scilab.start'; SCI+'/etc/scilab.start'],'extension');
95 assert_checkequal(r, ['.start'; '.start']);
96 // For a matrix of strings with no extension
97 [path,fname,extension] = fileparts([SCI+'/etc/scilab.start', SCI+'/etc/scilab']);
98 assert_checkequal(path, [pathconvert(SCI+'/etc/',%t,%t), pathconvert(SCI+'/etc/',%t,%t)]);
99 assert_checkequal(fname, ['scilab', 'scilab']);
100 assert_checkequal(extension, ['.start', ""]);
101 //===============================
102 r = fileparts([SCI+'/etc/scilab.start', SCI+'/etc/scilab'],'path');
103 assert_checkequal(r, [pathconvert(SCI+'/etc/',%t,%f), pathconvert(SCI+'/etc/',%t,%f)]);
104 //===============================
105 r = fileparts([SCI+'/etc/scilab.start', SCI+'/etc/scilab'],'fname');
106 assert_checkequal(r, ['scilab', 'scilab']);
107 //===============================
108 r = fileparts([SCI+'/etc/scilab.start', SCI+'/etc/scilab'],'extension');
109 assert_checkequal(r, ['.start', ""]);
110 // For a matrix of strings with no path
111 [path,fname,extension] = fileparts([SCI+'/etc/scilab.start', 'scilab.start']);
112 assert_checkequal(path, [pathconvert(SCI+'/etc/',%t,%t), ""]);
113 assert_checkequal(fname, ['scilab', 'scilab']);
114 assert_checkequal(extension, ['.start', ".start"]);
115 //===============================
116 r = fileparts([SCI+'/etc/scilab.start', 'scilab.start'], 'path');
117 assert_checkequal(r, [pathconvert(SCI+'/etc/',%t,%f), ""]);
118 //===============================
119 r = fileparts([SCI+'/etc/scilab.start', 'scilab.start'], 'fname');
120 assert_checkequal(r, ['scilab', 'scilab']);
121 //===============================
122 r = fileparts([SCI+'/etc/scilab.start', 'scilab.start'], 'extension');
123 assert_checkequal(r, ['.start', '.start']);