Skip to content

Commit d935cdf

Browse files
committed
add stem()
1 parent 4a2506a commit d935cdf

File tree

3 files changed

+35
-1
lines changed

3 files changed

+35
-1
lines changed

+stdlib/+fileio/stem.m

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
function p = stem(path)
2+
% STEM filename without directory or suffix
3+
arguments
4+
path string
5+
end
6+
7+
[~, p] = fileparts(path);
8+
9+
end

+stdlib/+test/TestFilePure.m

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ function test_posix(tc)
1616

1717
function test_parent(tc)
1818

19-
tc.assertEmpty(stdlib.fileio.parent(string.empty))
19+
tc.verifyEmpty(stdlib.fileio.parent(string.empty))
2020
tc.verifyEqual(stdlib.fileio.parent(""), "")
2121

2222
tc.verifyEqual(stdlib.fileio.parent("/foo/bar/baz"), "/foo/bar")
@@ -27,6 +27,22 @@ function test_parent(tc)
2727
end
2828

2929

30+
function test_stem(tc)
31+
32+
tc.verifyEmpty(stdlib.fileio.stem(string.empty))
33+
tc.verifyEqual(stdlib.fileio.stem(""), "")
34+
35+
tc.verifyEqual(stdlib.fileio.stem("/foo/bar/baz"), "baz")
36+
tc.verifyEqual(stdlib.fileio.stem("/foo/bar/baz/"), "")
37+
38+
tc.verifyEqual(stdlib.fileio.stem("foo/bar/baz/"), "")
39+
40+
tc.verifyEqual(stdlib.fileio.stem("foo/bar/baz.txt"), "baz")
41+
tc.verifyEqual(stdlib.fileio.stem("foo/bar/baz.txt.gz"), "baz.txt")
42+
43+
end
44+
45+
3046
function test_path_tail(tc)
3147

3248
import stdlib.path_tail

+stdlib/stem.m

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
function p = stem(path)
2+
% STEM filename without directory or suffix
3+
arguments
4+
path string
5+
end
6+
7+
p = stdlib.fileio.stem(path);
8+
9+
end

0 commit comments

Comments
 (0)