forked from wkentaro/labelme
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest_app.py
61 lines (47 loc) · 1.45 KB
/
test_app.py
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
import os.path as osp
import shutil
import tempfile
import labelme.app
import labelme.config
import labelme.testing
here = osp.dirname(osp.abspath(__file__))
data_dir = osp.join(here, 'data')
def test_MainWindow_open(qtbot):
win = labelme.app.MainWindow()
qtbot.addWidget(win)
win.show()
win.close()
def test_MainWindow_open_json(qtbot):
filename = osp.join(data_dir, 'apc2016_obj3.json')
labelme.testing.assert_labelfile_sanity(filename)
win = labelme.app.MainWindow(filename=filename)
qtbot.addWidget(win)
win.show()
win.close()
def test_MainWindow_annotate_jpg(qtbot):
tmp_dir = tempfile.mkdtemp()
filename = osp.join(tmp_dir, 'apc2016_obj3.jpg')
shutil.copy(osp.join(data_dir, 'apc2016_obj3.jpg'),
filename)
output = osp.join(tmp_dir, 'apc2016_obj3.json')
config = labelme.config.get_default_config()
win = labelme.app.MainWindow(
config=config, filename=filename, output=output)
qtbot.addWidget(win)
win.show()
def check_imageData():
assert hasattr(win, 'imageData')
assert win.imageData is not None
qtbot.waitUntil(check_imageData) # wait for loadFile
label = 'shelf'
points = [
(26, 70),
(176, 730),
(986, 742),
(1184, 102),
]
shape = label, points, None, None, 'polygon'
shapes = [shape]
win.loadLabels(shapes)
win.saveFile()
labelme.testing.assert_labelfile_sanity(output)