Skip to content

Commit 7110a56

Browse files
committed
Add test for filenames containing parentheses
1 parent 2ead128 commit 7110a56

File tree

2 files changed

+47
-0
lines changed

2 files changed

+47
-0
lines changed

tests/test_filepattern.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -290,6 +290,7 @@ class TestFilePattern():
290290
test_generate_filepattern_data.generate_data()
291291
test_generate_filepattern_data.generate_channel_data()
292292
test_generate_filepattern_data.generate_sorted_data()
293+
test_generate_filepattern_data.generate_bracket_data()
293294

294295
def test_file_pattern(self):
295296

@@ -636,6 +637,25 @@ def test_file_pattern_sorting(self):
636637

637638
assert sorted(indices) == indices
638639

640+
def test_file_pattern_brackets(self):
641+
642+
bracket_path = self.root_directory + '/test_data/bracket_data/'
643+
644+
pattern = "x\\(0-31\\)_y\\(01-48\\)_c{c:d}.ome.tif"
645+
646+
files = fp.FilePattern(bracket_path, pattern)
647+
648+
result = []
649+
650+
for file in files: # test iterator without call
651+
result.append(file)
652+
653+
print(result)
654+
655+
for i in range(len(result)):
656+
result[i][0]['c'] == i
657+
os.path.basename(result[i][1][0]) == f'x(0-31)_y(01-48)_c{i}.ome.tif'
658+
639659

640660
# Todo: These tests need new data to be added after replacing the old version of filepattern.
641661
"""

tests/test_generate_filepattern_data.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,12 +138,39 @@ def generate_text_data():
138138
filename = f"img_r{r:03}_c{c:03}.tif"
139139
file.write(filename + "\n")
140140

141+
def generate_bracket_data():
142+
directory = 'test_data'
143+
root_directory = os.path.dirname(os.path.realpath(__file__))
144+
path = os.path.join(root_directory, directory)
145+
data_path = path + '/bracket_data'
146+
147+
try:
148+
os.mkdir(path)
149+
print('Data directory created at ' + path)
150+
except FileExistsError:
151+
print("Data directory already exists")
152+
153+
try:
154+
os.mkdir(data_path)
155+
print('Data directory created at ' + data_path)
156+
except FileExistsError:
157+
print("Data directory already exists")
158+
159+
for i in range(0, MAX):
160+
data1 = 'x(0-31)_y(01-48)_c0.ome.tif'
161+
data2 = 'x(0-31)_y(01-48)_c1.ome.tif'
162+
f1 = open(data_path + '/' + data1, 'w+')
163+
f1.close()
164+
f2 = open(data_path + '/' + data2, 'w+')
165+
f2.close()
166+
141167

142168
if __name__ == '__main__':
143169
generate_data()
144170
generate_channel_data()
145171
generate_sorted_data()
146172
generate_text_data()
173+
generate_bracket_data()
147174

148175

149176
MAX = 3

0 commit comments

Comments
 (0)