refactorar para usar framework pytest, em vez de unittest
This commit is contained in:
@ -1,25 +1,63 @@
|
|||||||
import unittest
|
# import unittest
|
||||||
import tempfile
|
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
from py import path
|
||||||
|
import pytest
|
||||||
|
|
||||||
|
# import tempfile
|
||||||
from modules.scanner import listar_ficheiros
|
from modules.scanner import listar_ficheiros
|
||||||
|
|
||||||
|
|
||||||
class TestScanner(unittest.TestCase):
|
# class TestScanner(unittest.TestCase):
|
||||||
def setUp(self) -> None:
|
# def setUp(self) -> None:
|
||||||
# criar derectorio temporario
|
# # criar derectorio temporario
|
||||||
self.temp_dir = tempfile.TemporaryDirectory()
|
# self.temp_dir = tempfile.TemporaryDirectory()
|
||||||
(Path(self.temp_dir.name) / "teste.txt").touch()
|
# (Path(self.temp_dir.name) / "teste.txt").touch()
|
||||||
(Path(self.temp_dir.name) / "imagem.jpg").touch()
|
# (Path(self.temp_dir.name) / "imagem.jpg").touch()
|
||||||
|
#
|
||||||
def tearDown(self) -> None:
|
# def tearDown(self) -> None:
|
||||||
self.temp_dir.cleanup()
|
# self.temp_dir.cleanup()
|
||||||
|
#
|
||||||
def test_listar_ficheiros(self):
|
# def test_listar_ficheiros(self):
|
||||||
ficheiros = listar_ficheiros(self.temp_dir.name)
|
# ficheiros = listar_ficheiros(self.temp_dir.name)
|
||||||
self.assertEqual(len(ficheiros), 2)
|
# self.assertEqual(len(ficheiros), 2)
|
||||||
for f in ficheiros:
|
# for f in ficheiros:
|
||||||
self.assertTrue(Path(f).exists())
|
# self.assertTrue(Path(f).exists())
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# if __name__ == "__main__":
|
||||||
|
# unittest.main()
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
def test_listar_ficheiros_vazio(tmp_path):
|
||||||
unittest.main()
|
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
|
||||||
|
|||||||
Reference in New Issue
Block a user