19 lines
829 B
Python
19 lines
829 B
Python
from pathlib import Path
|
|
from tempfile import TemporaryDirectory
|
|
from unittest import TestCase
|
|
from unittest.mock import patch
|
|
from station import operator_teach as points
|
|
|
|
|
|
class PointsTest(TestCase):
|
|
def test_atomic_save_read_delete(self):
|
|
with TemporaryDirectory() as folder:
|
|
path=Path(folder)/'points.yaml'
|
|
with patch.object(points,'_file',return_value=path):
|
|
points._write('89',[{'name':'p1','utc':'test','joints':[.1]*7}])
|
|
self.assertTrue(path.is_file())
|
|
self.assertFalse(path.with_suffix('.yaml.tmp').exists())
|
|
self.assertEqual(points.list_points('89')['points'][0]['name'],'p1')
|
|
self.assertTrue(points.delete_point('89','p1')['ok'])
|
|
self.assertEqual(points.list_points('89')['points'],[])
|