Coverage for tests/unit/lib/test_util.py: 100%
22 statements
« prev ^ index » next coverage.py v7.4.4, created at 2024-03-20 05:56 +0000
« prev ^ index » next coverage.py v7.4.4, created at 2024-03-20 05:56 +0000
1import os
2import tempfile
3import unittest
4from unittest.mock import Mock, patch
6from tatlin.lib.util import format_status, get_recent_files, resolve_path
9class UtilTest(unittest.TestCase):
10 def test_resolve_path(self):
11 self.assertEqual(resolve_path("/tmp/test"), "/tmp/test")
13 with patch("sys.frozen", True, create=True), patch(
14 "sys._MEIPASS", "/", create=True
15 ):
16 self.assertEqual(resolve_path("test"), "/tatlin/test")
18 def test_format_status(self):
19 self.assertEqual(format_status("hello", 10, 10), " hello (10.0B, 10 vertices)")
20 self.assertEqual(format_status("hello", 1024, 1), " hello (1.0KB, 1 vertex)")
21 self.assertEqual(
22 format_status("hello", 1048576, 10), " hello (1.0MB, 10 vertices)"
23 )
24 self.assertEqual(
25 format_status("hello", 1073741824, 10), " hello (1.0GB, 10 vertices)"
26 )
28 def test_get_recent_files(self):
29 mock = Mock()
30 mock.read.return_value = "/tmp/test.stl:/tmp/test2.stl0"
31 # files that don't exist are not returned
32 self.assertEqual(get_recent_files(mock), [])
34 with tempfile.NamedTemporaryFile(suffix=".gcode") as f:
35 mock.read.return_value = f.name
36 self.assertEqual(
37 get_recent_files(mock), [(os.path.basename(f.name), f.name, None)]
38 )