diff --git a/code/classes/SCDclass_algo.m b/code/classes/SCDclass_algo.m index 9cee69a8c7db2c5a45abc03f710a090c9a833edd..9a4bb6bd834195300bd78babeff393436b0f9ac4 100644 --- a/code/classes/SCDclass_algo.m +++ b/code/classes/SCDclass_algo.m @@ -296,6 +296,20 @@ classdef SCDclass_algo end end + function compile(obj) + try + eval(sprintf('%s([],[],[],''compile'')',obj.modelname)); + catch + eval(sprintf('%s([],[],[],''term'')',obj.modelname)); + end + eval(sprintf('%s([],[],[],''term'')',obj.modelname)); + + end + + function sim(obj) + sim(obj.modelname); + end + end end diff --git a/code/classes/SCDclass_expcode.m b/code/classes/SCDclass_expcode.m index b7ba781c566a933f2efb413055d441ad090b761c..e8647ee3f345d3cb2c05ae3ad1ff35ed78ba425c 100644 --- a/code/classes/SCDclass_expcode.m +++ b/code/classes/SCDclass_expcode.m @@ -531,7 +531,16 @@ classdef SCDclass_expcode fprintf(" }\n"); fprintf("}\n"); end - + + function tcvcompile(obj) + try + tcv([],[],[],'compile'); + tcv([],[],[],'term'); + catch ME + tcv([],[],[],'term'); + rethrow(ME) + end + end end methods (Access = private) diff --git a/tests/test_expcodes.m b/tests/test_expcodes.m index 0d0515e9361aafc355afa3f4f8ebc0a04b56632d..5f55e69c5812213bebf09356494dd012494e152a 100644 --- a/tests/test_expcodes.m +++ b/tests/test_expcodes.m @@ -31,16 +31,17 @@ classdef test_expcodes < matlab.unittest.TestCase end methods(Test) + function test_callinits(testCase) + testCase.expcode_obj.callinits; + end + + function test_setup(testCase) + testCase.expcode_obj.setup; % run setup this exp code + end + function test_expcode(testCase) % attempt compiling tcv.slx for this expcode - try - tcv([],[],[],'compile'); - tcv([],[],[],'term'); - catch ME - tcv([],[],[],'term'); - rethrow(ME) - end - testCase.assertTrue(true); % dummy + testCase.expcode_obj.tcvcompile; % compile tcv.slx with this expcode end end