flatcam/tests/test_tclCommands/test_TclCommandNew.py

49 lines
1.9 KiB
Python

from FlatCAMObj import FlatCAMGeometry
def test_new(self):
"""
Test new project
:param self:
:return:
"""
self.fc.exec_command_test('new_geometry "%s"' % self.geometry_name)
geometry_obj = self.fc.collection.get_by_name(self.geometry_name)
self.assertTrue(isinstance(geometry_obj, FlatCAMGeometry), "Expected FlatCAMGeometry, instead, %s is %s"
% (self.geometry_name, type(geometry_obj)))
self.fc.exec_command_test('proc testproc {} { puts "testresult" }')
result = self.fc.exec_command_test('testproc')
self.assertEqual(result, "testresult",'testproc should return "testresult"')
self.fc.exec_command_test('set_sys units MM')
self.fc.exec_command_test('new')
# object should not exists anymore
geometry_obj = self.fc.collection.get_by_name(self.geometry_name)
self.assertIsNone(geometry_obj, "Expected object to be None, instead, %s is %s"
% (self.geometry_name, type(geometry_obj)))
# TODO after new it should delete all procedures and variables, we need to make sure "testproc" does not exists
# Test it again with same names
self.fc.exec_command_test('set_sys units MM')
self.fc.exec_command_test('new')
self.fc.exec_command_test('new_geometry "%s"' % self.geometry_name)
geometry_obj = self.fc.collection.get_by_name(self.geometry_name)
self.assertTrue(isinstance(geometry_obj, FlatCAMGeometry), "Expected FlatCAMGeometry, instead, %s is %s"
% (self.geometry_name, type(geometry_obj)))
self.fc.exec_command_test('set_sys units MM')
self.fc.exec_command_test('new')
# object should not exists anymore
geometry_obj = self.fc.collection.get_by_name(self.geometry_name)
self.assertIsNone(geometry_obj, "Expected object to be None, instead, %s is %s"
% (self.geometry_name, type(geometry_obj)))