# import unittest from pathlib import Path from py import path import pytest # import tempfile from modules.scanner import listar_ficheiros # class TestScanner(unittest.TestCase): # def setUp(self) -> None: # # criar derectorio temporario # self.temp_dir = tempfile.TemporaryDirectory() # (Path(self.temp_dir.name) / "teste.txt").touch() # (Path(self.temp_dir.name) / "imagem.jpg").touch() # # def tearDown(self) -> None: # self.temp_dir.cleanup() # # def test_listar_ficheiros(self): # ficheiros = listar_ficheiros(self.temp_dir.name) # self.assertEqual(len(ficheiros), 2) # for f in ficheiros: # self.assertTrue(Path(f).exists()) # # # if __name__ == "__main__": # unittest.main() def test_listar_ficheiros_vazio(tmp_path): ficheiros = listar_ficheiros(str(tmp_path)) assert ficheiros == [] def test_listar_ficheiros_simples(tmp_path): # criar ficheiros ficheiro1 = tmp_path / "ficheiro1.txt" ficheiro1.write_text("texto") ficheiro2 = tmp_path / "ficheiro2.mpg" ficheiro2.write_text("ficheiro de video") ficheiros = listar_ficheiros(str(tmp_path)) nomes = [Path(f).name for f in ficheiros] assert len(ficheiros) == 2 assert "ficheiro1.txt" in nomes assert "ficheiro2.mpg" in nomes def test_listar_ficheiros_em_subpastas(tmp_path): subpasta = tmp_path / "subpasta" subpasta.mkdir() ficheiro_sub = subpasta / "ficheiro_sub.txt" ficheiro_sub.write_text("conteudo na subpasta") ficheiros = listar_ficheiros(str(tmp_path)) nome = [Path(f).name for f in ficheiros] assert len(ficheiros) == 1 assert "ficheiro_sub.txt" in nome