Skip to content

Commit debcab3

Browse files
committed
refactor multitag tests
1 parent c35e95b commit debcab3

File tree

1 file changed

+103
-89
lines changed

1 file changed

+103
-89
lines changed

tests/TestMultiTag.m

Lines changed: 103 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@
77
funcs{end+1} = @test_remove_source;
88
funcs{end+1} = @test_add_reference;
99
funcs{end+1} = @test_remove_reference;
10-
funcs{end+1} = @test_list_fetch_references;
11-
funcs{end+1} = @test_list_fetch_sources;
12-
funcs{end+1} = @test_list_fetch_features;
10+
funcs{end+1} = @test_fetch_references;
11+
funcs{end+1} = @test_fetch_sources;
12+
funcs{end+1} = @test_fetch_features;
1313
funcs{end+1} = @test_open_source;
1414
funcs{end+1} = @test_open_feature;
1515
funcs{end+1} = @test_open_reference;
@@ -24,125 +24,135 @@
2424
%% Test: Add sources by entity and id
2525
function [] = test_add_source ( varargin )
2626
test_file = nix.File(fullfile(pwd, 'tests', 'testRW.h5'), nix.FileMode.Overwrite);
27-
getBlock = test_file.createBlock('sourceTest', 'nixBlock');
28-
getSource = getBlock.create_source('sourceTest', 'nixSource');
27+
b = test_file.createBlock('sourceTest', 'nixBlock');
28+
tmp = b.create_data_array('sourceTestDataArray', 'nixDataArray', 'double', [1 2]);
29+
getSource = b.create_source('sourceTest', 'nixSource');
2930
tmp = getSource.create_source('nestedSource1', 'nixSource');
3031
tmp = getSource.create_source('nestedSource2', 'nixSource');
32+
getMTag = b.create_multi_tag('sourcetest', 'nixMultiTag', b.dataArrays{1});
3133

32-
% getMTag = getBlock.create_multitag('sourcetest', 'nixMultiTag', position);
33-
34-
% assert(isempty(getMTag.sources));
35-
% getMTag.add_source(getSource.sources{1}.id);
36-
% getMTag.add_source(getSource.sources{2});
37-
% assert(size(getMTag.sources,1) == 2);
38-
disp('Test MultiTag: add sources ... TODO (create block multitag method missing)');
34+
assert(isempty(getMTag.sources));
35+
getMTag.add_source(getSource.sources{1}.id);
36+
getMTag.add_source(getSource.sources{2});
37+
assert(size(getMTag.sources, 1) == 2);
3938
end
4039

4140
%% Test: Remove sources by entity and id
4241
function [] = test_remove_source ( varargin )
4342
test_file = nix.File(fullfile(pwd, 'tests', 'testRW.h5'), nix.FileMode.Overwrite);
44-
getBlock = test_file.createBlock('test', 'nixBlock');
45-
getSource = getBlock.create_source('test', 'nixSource');
43+
b = test_file.createBlock('sourceTest', 'nixBlock');
44+
tmp = b.create_data_array('sourceTestDataArray', 'nixDataArray', 'double', [1 2]);
45+
getSource = b.create_source('sourceTest', 'nixSource');
4646
tmp = getSource.create_source('nestedSource1', 'nixSource');
4747
tmp = getSource.create_source('nestedSource2', 'nixSource');
48+
getMTag = b.create_multi_tag('sourcetest', 'nixMultiTag', b.dataArrays{1});
4849

49-
% getMTag = getBlock.create_multitag('sourcetest', 'nixMultiTag', position);
50-
% getMTag.add_source(getSource.sources{1}.id);
51-
% getMTag.add_source(getSource.sources{2});
52-
%
53-
% assert(size(getMTag.sources,1) == 2);
54-
% getMTag.remove_source(getSource.sources{2});
55-
% assert(size(getMTag.sources,1) == 1);
56-
% getMTag.remove_source(getSource.sources{1}.id);
57-
% assert(isempty(getMTag.sources));
58-
% assert(getMTag.remove_source('I do not exist'));
59-
% assert(size(getSource.sources,1) == 2);
60-
61-
disp('Test MultiTag: remove sources ... TODO (create block multitag method missing)');
50+
getMTag.add_source(getSource.sources{1}.id);
51+
getMTag.add_source(getSource.sources{2});
52+
53+
getMTag.remove_source(getSource.sources{2});
54+
assert(size(getMTag.sources,1) == 1);
55+
getMTag.remove_source(getSource.sources{1}.id);
56+
assert(isempty(getMTag.sources));
57+
assert(getMTag.remove_source('I do not exist'));
58+
assert(size(getSource.sources,1) == 2);
6259
end
6360

6461
%% Test: Add references by entity and id
6562
function [] = test_add_reference ( varargin )
6663
test_file = nix.File(fullfile(pwd, 'tests', 'testRW.h5'), nix.FileMode.Overwrite);
67-
getBlock = test_file.createBlock('referenceTest', 'nixBlock');
68-
tmp = getBlock.create_data_array('referenceTest1', 'nixDataArray', 'double', [1 2]);
69-
tmp = getBlock.create_data_array('referenceTest2', 'nixDataArray', 'double', [3 4]);
64+
b = test_file.createBlock('referenceTest', 'nixBlock');
65+
tmp = b.create_data_array('referenceTestDataArray', 'nixDataArray', 'double', [1 2]);
66+
getMTag = b.create_multi_tag('referencetest', 'nixMultiTag', b.dataArrays{1});
7067

71-
% getMTag = getBlock.create_multitag('referenceTest', 'nixMTag', position);
72-
%
73-
% assert(isempty(getMTag.references));
74-
% getMTag.add_reference(getBlock.dataArrays{1}.id);
75-
% getMTag.add_reference(getBlock.dataArrays{2});
76-
% assert(size(getMTag.references, 1) == 2);
77-
78-
disp('Test MultiTag: add reference ... TODO (create block multitag method missing)');
68+
tmp = b.create_data_array('referenceTest1', 'nixDataArray', 'double', [3 4]);
69+
tmp = b.create_data_array('referenceTest2', 'nixDataArray', 'double', [5 6]);
70+
71+
assert(isempty(getMTag.references));
72+
getMTag.add_reference(b.dataArrays{2}.id);
73+
getMTag.add_reference(b.dataArrays{3});
74+
assert(size(getMTag.references, 1) == 2);
7975
end
8076

8177
%% Test: Remove references by entity and id
8278
function [] = test_remove_reference ( varargin )
8379
test_file = nix.File(fullfile(pwd, 'tests', 'testRW.h5'), nix.FileMode.Overwrite);
84-
getBlock = test_file.createBlock('referenceTest', 'nixBlock');
85-
tmp = getBlock.create_data_array('referenceTest1', 'nixDataArray', 'double', [1 2]);
86-
tmp = getBlock.create_data_array('referenceTest2', 'nixDataArray', 'double', [3 4]);
80+
b = test_file.createBlock('referenceTest', 'nixBlock');
81+
tmp = b.create_data_array('referenceTestDataArray', 'nixDataArray', 'double', [1 2]);
82+
getMTag = b.create_multi_tag('referencetest', 'nixMultiTag', b.dataArrays{1});
8783

88-
% getMTag = getBlock.create_multitag('referenceTest', 'nixMultiTag', position);
89-
% getMTag.add_reference(getBlock.dataArrays{1}.id);
90-
% getMTag.add_reference(getBlock.dataArrays{2});
91-
% assert(size(getMTag.references, 1) == 2);
92-
%
93-
% getMTag.remove_reference(getBlock.dataArrays{2});
94-
% assert(size(getMTag.references, 1) == 1);
95-
% getMTag.remove_reference(getBlock.dataArrays{1}.id);
96-
% assert(isempty(getMTag.references));
97-
% assert(~getMTag.remove_reference('I do not exist'));
98-
% assert(size(getBlock.dataArrays, 1) == 2);
99-
100-
disp('Test MultiTag: remove reference ... TODO (create block multitag method missing)');
84+
tmp = b.create_data_array('referenceTest1', 'nixDataArray', 'double', [3 4]);
85+
tmp = b.create_data_array('referenceTest2', 'nixDataArray', 'double', [5 6]);
86+
getMTag.add_reference(b.dataArrays{2}.id);
87+
getMTag.add_reference(b.dataArrays{3});
88+
89+
assert(getMTag.remove_reference(b.dataArrays{3}));
90+
assert(getMTag.remove_reference(b.dataArrays{2}.id));
91+
assert(isempty(getMTag.references));
92+
93+
assert(~getMTag.remove_reference('I do not exist'));
94+
assert(size(b.dataArrays, 1) == 3);
10195
end
10296

103-
%% Test: List/fetch references
104-
function [] = test_list_fetch_references( varargin )
105-
test_file = nix.File(fullfile(pwd, 'tests', 'test.h5'), nix.FileMode.ReadOnly);
106-
getBlock = test_file.openBlock(test_file.blocks{1,1}.name);
107-
getMultiTag = getBlock.open_multi_tag(getBlock.multiTags{1,1}.id);
108-
109-
assert(size(getMultiTag.references(), 1) == 1);
97+
%% Test: fetch references
98+
function [] = test_fetch_references( varargin )
99+
test_file = nix.File(fullfile(pwd, 'tests', 'testRW.h5'), nix.FileMode.Overwrite);
100+
b = test_file.createBlock('referenceTest', 'nixBlock');
101+
tmp = b.create_data_array('referenceTestDataArray', 'nixDataArray', 'double', [1 2]);
102+
getMTag = b.create_multi_tag('referencetest', 'nixMultiTag', b.dataArrays{1});
103+
tmp = b.create_data_array('referenceTest1', 'nixDataArray', 'double', [3 4]);
104+
tmp = b.create_data_array('referenceTest2', 'nixDataArray', 'double', [5 6]);
105+
getMTag.add_reference(b.dataArrays{2}.id);
106+
getMTag.add_reference(b.dataArrays{3});
107+
108+
assert(size(getMTag.references, 1) == 2);
110109
end
111110

112-
%% Test: List/fetch sources
113-
function [] = test_list_fetch_sources( varargin )
114-
test_file = nix.File(fullfile(pwd, 'tests', 'test.h5'), nix.FileMode.ReadOnly);
115-
getBlock = test_file.openBlock(test_file.blocks{1,1}.name);
116-
getMultiTag = getBlock.open_multi_tag(getBlock.multiTags{1,1}.id);
111+
%% Test: fetch sources
112+
function [] = test_fetch_sources( varargin )
113+
test_file = nix.File(fullfile(pwd, 'tests', 'testRW.h5'), nix.FileMode.Overwrite);
114+
b = test_file.createBlock('sourceTest', 'nixBlock');
115+
tmp = b.create_data_array('sourceTestDataArray', 'nixDataArray', 'double', [1 2]);
116+
getSource = b.create_source('sourceTest', 'nixSource');
117+
tmp = getSource.create_source('nestedSource1', 'nixSource');
118+
tmp = getSource.create_source('nestedSource2', 'nixSource');
119+
getMTag = b.create_multi_tag('sourcetest', 'nixMultiTag', b.dataArrays{1});
120+
getMTag.add_source(getSource.sources{1}.id);
121+
getMTag.add_source(getSource.sources{2});
117122

118-
assert(size(getMultiTag.sources(),1) == 1);
123+
assert(size(getMTag.sources, 1) == 2);
119124
end
120125

121-
%% Test: List/fetch features
122-
function [] = test_list_fetch_features( varargin )
126+
%% Test: fetch features
127+
function [] = test_fetch_features( varargin )
123128
test_file = nix.File(fullfile(pwd, 'tests', 'test.h5'), nix.FileMode.ReadOnly);
124129
getBlock = test_file.openBlock(test_file.blocks{1,1}.name);
125130
getMultiTag = getBlock.open_multi_tag(getBlock.multiTags{1,1}.id);
126131

127132
%-- ToDo get testfile with tag referencing a source
128-
assert(size(getMultiTag.features(),1) == 0);
133+
assert(size(getMultiTag.features(), 1) == 0);
129134
disp('Test MultiTag: fetch features ... TODO (proper testfile)');
130135
end
131136

132137
%% Test: Open source by ID or name
133138
function [] = test_open_source( varargin )
134-
test_file = nix.File(fullfile(pwd, 'tests', 'test.h5'), nix.FileMode.ReadOnly);
135-
getBlock = test_file.openBlock(test_file.blocks{1,1}.name);
136-
getMultiTag = getBlock.open_multi_tag(getBlock.multiTags{1,1}.id);
137-
138-
getSourceByID = getMultiTag.open_source(getMultiTag.sources{1,1}.id);
139-
assert(strcmp(getSourceByID.id, 'edf4c8b6-8569-4952-bcee-4203dd26571e'));
139+
test_file = nix.File(fullfile(pwd, 'tests', 'testRW.h5'), nix.FileMode.Overwrite);
140+
b = test_file.createBlock('sourceTest', 'nixBlock');
141+
tmp = b.create_data_array('sourceTestDataArray', 'nixDataArray', 'double', [1 2]);
142+
getSource = b.create_source('sourceTest', 'nixSource');
143+
sName = 'nestedSource';
144+
tmp = getSource.create_source(sName, 'nixSource');
145+
getMTag = b.create_multi_tag('sourcetest', 'nixMultiTag', b.dataArrays{1});
146+
getMTag.add_source(getSource.sources{1});
147+
148+
getSourceByID = getMTag.open_source(getMTag.sources{1,1}.id);
149+
assert(~isempty(getSourceByID));
140150

141-
getSourceByName = getMultiTag.open_source(getMultiTag.sources{1,1}.name);
142-
assert(strcmp(getSourceByName.id, 'edf4c8b6-8569-4952-bcee-4203dd26571e'));
151+
getSourceByName = getMTag.open_source(sName);
152+
assert(~isempty(getSourceByName));
143153

144154
%-- test open non existing source
145-
getSource = getMultiTag.open_source('I dont exist');
155+
getSource = getMTag.open_source('I do not exist');
146156
assert(isempty(getSource));
147157
end
148158

@@ -168,18 +178,22 @@
168178

169179
%% Test: Open reference by ID or name
170180
function [] = test_open_reference( varargin )
171-
test_file = nix.File(fullfile(pwd, 'tests', 'test.h5'), nix.FileMode.ReadOnly);
172-
getBlock = test_file.openBlock(test_file.blocks{1,1}.name);
173-
getMultiTag = getBlock.open_multi_tag(getBlock.multiTags{1,1}.id);
174-
175-
getRefByID = getMultiTag.open_reference(getMultiTag.references{1,1}.id);
176-
assert(strcmp(getRefByID.id, 'd21318e2-151e-4afd-afd3-1d86c8c20a85'));
181+
test_file = nix.File(fullfile(pwd, 'tests', 'testRW.h5'), nix.FileMode.Overwrite);
182+
b = test_file.createBlock('referenceTest', 'nixBlock');
183+
tmp = b.create_data_array('referenceTestDataArray', 'nixDataArray', 'double', [1 2]);
184+
getMTag = b.create_multi_tag('referencetest', 'nixMultiTag', b.dataArrays{1});
185+
refName = 'referenceTest';
186+
tmp = b.create_data_array(refName, 'nixDataArray', 'double', [3 4]);
187+
getMTag.add_reference(b.dataArrays{2}.id);
188+
189+
getRefByID = getMTag.open_reference(getMTag.references{1,1}.id);
190+
assert(~isempty(getRefByID));
191+
192+
getRefByName = getMTag.open_reference(refName);
193+
assert(~isempty(getRefByName));
177194

178-
getRefByName = getMultiTag.open_reference(getMultiTag.references{1,1}.name);
179-
assert(strcmp(getRefByName.id, 'd21318e2-151e-4afd-afd3-1d86c8c20a85'));
180-
181195
%-- test open non existing reference
182-
getRef = getMultiTag.open_reference('I dont exist');
196+
getRef = getMTag.open_reference('I do not exist');
183197
assert(isempty(getRef));
184198
end
185199

0 commit comments

Comments
 (0)