Skip to content

Commit 3afaa31

Browse files
committed
testSame: simpler
1 parent 3c85c2d commit 3afaa31

File tree

2 files changed

+28
-15
lines changed

2 files changed

+28
-15
lines changed

+stdlib/+python/samepath.m

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,13 @@
44
y = false;
55
return
66
end
7-
7+
88
try
9-
y = py.os.path.samefile(path1, path2);
9+
if py.os.path.exists(path1) && py.os.path.exists(path2)
10+
y = py.os.path.samefile(path1, path2);
11+
else
12+
y = false;
13+
end
1014
catch e
1115
pythonException(e)
1216
y = logical.empty;

test/TestSame.m

Lines changed: 22 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
classdef (SharedTestFixtures={ matlab.unittest.fixtures.PathFixture(fileparts(fileparts(mfilename('fullpath'))))}, ...
2-
TestTags = {'impure'}) ...
2+
TestTags = {'R2019b', 'impure'}) ...
33
TestSame < matlab.unittest.TestCase
44

55
properties (TestParameter)
@@ -9,29 +9,38 @@
99
{"..", pwd() + "/.."}, ...
1010
{pwd(), pwd() + "/."}}
1111

12-
backend
12+
backend = {'python', 'java', 'perl', 'sys', 'native'}
1313
end
1414

15-
methods (TestParameterDefinition, Static)
16-
function backend = setupBackends()
17-
backend = init_backend("samepath");
18-
end
19-
end
2015

21-
22-
methods(Test, TestTags={'R2021a'})
16+
methods(Test)
2317

2418
function test_samepath(tc, p_same, backend)
25-
r = stdlib.samepath(p_same{:}, backend);
19+
[r, b] = stdlib.samepath(p_same{:}, backend);
20+
tc.assertEqual(char(b), backend)
2621
tc.verifyClass(r, 'logical')
27-
tc.verifyTrue(r)
22+
23+
if ismember(backend, stdlib.Backend().select('samepath'))
24+
tc.verifyTrue(r)
25+
else
26+
tc.assertEmpty(r)
27+
end
2828
end
2929

3030

3131
function test_samepath_notexist(tc, backend)
32+
3233
t = tempname();
33-
tc.verifyFalse(stdlib.samepath("", "", backend))
34-
tc.verifyFalse(stdlib.samepath(t, t, backend))
34+
r1 = stdlib.samepath("", "", backend);
35+
r2 = stdlib.samepath(t, t, backend);
36+
37+
if ismember(backend, stdlib.Backend().select('samepath'))
38+
tc.verifyFalse(r1)
39+
tc.verifyFalse(r2)
40+
else
41+
tc.assertEmpty(r1)
42+
tc.assertEmpty(r2)
43+
end
3544
end
3645

3746
end

0 commit comments

Comments
 (0)