Skip to content

Commit 5ac3cf1

Browse files
committed
test: constraints for better auto-error message
1 parent 9f2c94b commit 5ac3cf1

File tree

7 files changed

+22
-14
lines changed

7 files changed

+22
-14
lines changed

+stdlib/+test/TestFileImpure.m

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
methods (Test)
44

55
function test_expanduser(tc)
6+
import matlab.unittest.constraints.EndsWithSubstring
67
import stdlib.expanduser
78
tc.assumeTrue(usejava("jvm"), "Java required")
89

@@ -13,7 +14,7 @@ function test_expanduser(tc)
1314

1415
tc.verifyFalse(startsWith(expanduser('~/foo'), "~"))
1516

16-
tc.verifyTrue(endsWith(expanduser('~/foo'), "foo"))
17+
tc.verifyThat(expanduser('~/foo'), EndsWithSubstring("foo"))
1718
end
1819

1920

@@ -53,6 +54,7 @@ function test_which_name(tc)
5354

5455
function test_is_exe_which_fullpath(tc)
5556
import matlab.unittest.constraints.IsFile
57+
import matlab.unittest.constraints.EndsWithSubstring
5658
tc.assumeTrue(usejava("jvm"), "Java required")
5759

5860
tc.verifyEmpty(stdlib.is_exe(string.empty))
@@ -72,9 +74,9 @@ function test_is_exe_which_fullpath(tc)
7274
exe = stdlib.which(p);
7375

7476
if ispc
75-
tc.verifyTrue(endsWith(exe, ".exe"))
77+
tc.verifyThat(exe, EndsWithSubstring(".exe"))
7678
else
77-
tc.verifyFalse(endsWith(exe, ".exe"))
79+
tc.verifyThat(exe, ~EndsWithSubstring(".exe"))
7880
end
7981
tc.verifyThat(exe, IsFile)
8082

+stdlib/+test/TestFilePure.m

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,7 @@ function test_absolute_path(tc)
138138
function test_canonical(tc)
139139
import matlab.unittest.fixtures.TemporaryFolderFixture
140140
import matlab.unittest.fixtures.CurrentFolderFixture
141+
import matlab.unittest.constraints.StartsWithSubstring
141142
import stdlib.canonical
142143

143144
tc.assumeTrue(usejava("jvm"), "Java required")
@@ -150,11 +151,11 @@ function test_canonical(tc)
150151
tc.verifyEqual(canonical(""), "")
151152

152153
pabs = canonical('2foo');
153-
tc.verifyTrue(startsWith(pabs, "2foo"))
154+
tc.verifyThat(pabs, StartsWithSubstring("2foo"))
154155

155156
par1 = canonical("../2foo");
156157
tc.verifyNotEmpty(par1)
157-
tc.verifyTrue(startsWith(par1, ".."))
158+
tc.verifyThat(par1, StartsWithSubstring(".."))
158159

159160
pt1 = canonical("bar/../2foo");
160161
tc.verifyEqual(pt1, "2foo")

+stdlib/+test/TestHDF5.m

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
function setup_file(tc)
1515
import matlab.unittest.fixtures.TemporaryFolderFixture
16+
import matlab.unittest.constraints.IsFile
1617
fixture = tc.applyFixture(TemporaryFolderFixture);
1718

1819
A0 = 42.;
@@ -49,7 +50,7 @@ function setup_file(tc)
4950
stdlib.h5save(bf, '/t/y', 13)
5051
stdlib.h5save(bf, '/j/a/b', 6)
5152

52-
tc.assumeTrue(isfile(bf))
53+
tc.assumeThat(bf, IsFile)
5354
end
5455
end
5556

@@ -220,11 +221,12 @@ function test_coerce(tc)
220221

221222

222223
function test_rewrite(tc)
224+
import matlab.unittest.constraints.IsFile
223225
basic = tc.TestData.basic;
224226

225227
stdlib.h5save(basic, '/A2', 3*magic(4))
226228

227-
tc.assumeTrue(isfile(basic))
229+
tc.assumeThat(basic, IsFile)
228230
tc.verifyEqual(h5read(basic, '/A2'), 3*magic(4))
229231
end
230232

+stdlib/+test/TestNetCDF.m

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
methods (TestMethodSetup)
88

99
function setup_file(tc)
10+
import matlab.unittest.constraints.IsFile
1011
import matlab.unittest.fixtures.TemporaryFolderFixture
1112
fixture = tc.applyFixture(TemporaryFolderFixture);
1213

@@ -49,7 +50,7 @@ function setup_file(tc)
4950
stdlib.ncsave(basic, '/t/y', 13)
5051
stdlib.ncsave(basic, '/j/a/b', 6)
5152

52-
tc.assumeTrue(isfile(basic))
53+
tc.assumeThat(basic, IsFile)
5354
end
5455
end
5556

@@ -213,11 +214,12 @@ function test_coerce(tc)
213214

214215

215216
function test_rewrite(tc)
217+
import matlab.unittest.constraints.IsFile
216218
basic = tc.TestData.basic;
217219

218220
stdlib.ncsave(basic, "A2", 3*magic(4))
219221

220-
tc.assumeTrue(isfile(basic))
222+
tc.assumeThat(basic, IsFile)
221223
tc.verifyEqual(ncread(basic, 'A2'), 3*magic(4))
222224
end
223225

+stdlib/+test/TestSys.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ function test_env_run(tc)
3838

3939
[ret, out] = stdlib.subprocess_run(cmd, env=env);
4040
tc.verifyEqual(ret, 0)
41-
tc.verifyTrue(contains(out, vals(i)))
41+
tc.verifySubstring(out, vals(i))
4242
end
4343

4444
end

+stdlib/+test/TestWSL.m

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
methods (Test)
44

55
function test_is_exe_which_wsl(tc)
6-
6+
import matlab.unittest.constraints.IsFile
77
tc.assumeTrue(ispc, "Windows only")
88
tc.assumeTrue(stdlib.sys.has_wsl(), "did not find Windows Subsystem for Linux")
99

@@ -22,7 +22,7 @@ function test_is_exe_which_wsl(tc)
2222

2323
tc.assumeEqual(ret, 0, "failed to compile " + src)
2424
out = stdlib.sys.wslpath2winpath(out_wsl);
25-
tc.assumeTrue(isfile(out), "cc failed to produce output file " + out)
25+
tc.assumeThat(out, IsFile, "cc failed to produce output file " + out)
2626

2727
tc.verifyTrue(stdlib.is_exe(out), "is_exe() failed to detect WSL executable " + out)
2828

+stdlib/+test/TestWindowsCOM.m

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,16 @@
33
methods (Test)
44

55
function test_shortname(tc)
6+
import matlab.unittest.constraints.IsFolder
67

78
tc.assumeTrue(ispc, "Windows only")
89

910
progdir = stdlib.fileio.posix(getenv("PROGRAMFILES"));
10-
tc.assumeTrue(isfolder(progdir), "Env:ProgramFiles not defined")
11+
tc.assumeThat(progdir, IsFolder, "PROGRAMFILES is not a directory")
1112

1213
short = stdlib.fileio.windows_shortname(progdir);
1314

14-
tc.verifyTrue(contains(short, "PROGRA~1"), short + " did not contain PROGRA~1")
15+
tc.verifySubstring(short, "PROGRA~1")
1516

1617
tc.verifyEqual(stdlib.canonical(short), progdir)
1718

0 commit comments

Comments
 (0)