import unittest from main import * from unittest.mock import Mock from pathlib import Path # test saving file class savingFileTest(unittest.TestCase): def test_text_file(self): print('Testing save_input method \n') old_file_content = 'testing\n\n\nmore testing' with open('test.txt', 'w') as file: file.write(old_file_content) script_path = os.path.dirname(os.path.realpath(__file__)) test_file_path = script_path + '\\test.txt' newpath = save_input(test_file_path) new_file_content = '' with open(newpath, 'r') as new_file: for line in new_file: new_file_content += line self.assertEqual(old_file_content, new_file_content) os.remove(newpath) # test using mock checking if a file with analysis had been generated class generetingOutputFile(unittest.TestCase): def test_output_file(self): print('Mock testing outputfile') m = Mock() m.output_file_path = scriptPath + '\\files\\output\\test.pdf' assert Path(m.output_file_path).is_file() # test deleting input file class testDeleteFile(unittest.TestCase): def test_delete_file(self): print('Testing deleting the file') new_file = inputFilePath + os.path.sep + 'new_file.txt' with open(new_file, 'w') as file: file.write('teeeest') with open(new_file) as f: content = f.read() assert os.path.exists(new_file) self.assertEqual(content, 'teeeest') delete_file(new_file) self.assertFalse(os.path.exists(new_file)) if __name__ == '__main__': unittest.main()