-
Notifications
You must be signed in to change notification settings - Fork 0
/
testAirConditioningWindow.m
62 lines (44 loc) · 1.72 KB
/
testAirConditioningWindow.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
% AirConditioningWindowTest
%--------------------------------------------------------------------------
% 空調・開口部計算のテスト
%--------------------------------------------------------------------------
% 実行:
% results = runtests('testAirConditioningWindow.m');
%--------------------------------------------------------------------------
function tests = testAirConditioningWindow
global expSolutionALL
%% 期待値の読み込み
res = textread('./test/AirConditioningWindowTest/Results_20180309.csv','%s','delimiter','\n','whitespace','');
for i=1:length(res)
conma = strfind(res{i},',');
for j = 1:length(conma)
if j == 1
resall{i,j} = res{i}(1:conma(j)-1);
elseif j == length(conma)
resall{i,j} = res{i}(conma(j-1)+1:conma(j)-1);
resall{i,j+1} = res{i}(conma(j)+1:end);
else
resall{i,j} = res{i}(conma(j-1)+1:conma(j)-1);
end
end
end
expSolutionALL = str2double(resall(2:end,13:14));
tests = functiontests(localfunctions);
end
function testCase01to21(testCase)
global expSolutionALL
actSolution = [];
expSolution = [];
for caseNum = 1:21
if caseNum < 10
% 実行
eval(['y = ECS_routeB_AC_run(''./test/AirConditioningWindowTest/testmodel_Case0',int2str(caseNum),'.xml'',''OFF'',''3'',''Read'',''0'');'])
else
eval(['y = ECS_routeB_AC_run(''./test/AirConditioningWindowTest/testmodel_Case',int2str(caseNum),'.xml'',''OFF'',''3'',''Read'',''0'');'])
end
actSolution = [actSolution, y(1), y(17)];
expSolution = [expSolution, expSolutionALL(caseNum,:)];
end
% 検証
verifyEqual(testCase,actSolution,expSolution,'RelTol',0.0001)
end