Согласно «Как писать тесты, которые Поделиться общим кодом настройки" можно:
function test_suite = testSetupExample
initTestSuite;
function fh = setup
fh = figure;
function teardown(fh)
delete(fh);
function testColormapColumns(fh)
assertEqual(size(get(fh, 'Colormap'), 2), 3);
function testPointer(fh)
assertEqual(get(fh, 'Pointer'), 'arrow');
Но я не мог заставить его работать с большим количеством параметров:
function test_suite = testSetupExample
initTestSuite;
function [fh,fc] = setup
fh = figure;
fc = 2;
end
function teardown(fh,fc)
delete(fh);
function testColormapColumns(fh,fc)
assertEqual(size(get(fh, 'Colormap'), fc), 3);
function testPointer(fh,fc)
assertEqual(get(fh, 'Pointer'), 'arrow');
Когда я запускаю тесты, он говорит:
Входной аргумент "fc" не определен.
Это почему? Я сделал что-то не так или это не поддерживается в текущей версии Matlab xUnit? Как это обойти?
PS: На самом деле мой MATLAB требует, чтобы каждая функция имела конец. Я не писал их здесь, чтобы сохранить согласованность с ручными примерами.