- definido projeto com uma sequência e múltiplos arquivos de mídia - criada persistência de projeto com uma sequência e seleções de faixas e clipes - criada guia Projeto para selecionar sequência, faixas e clipes do Premiere - adicionada gravação das seleções da guia Projeto no SQLite Resumo: - 10 arquivos alterados - 4 novos - 6 modificados - 0 removidos 6 files changed, 71 insertions(+), 2 deletions(-) Arquivos: - .jhonny/analises.db - CONTEXT.md - code/cep-plugin/index.html - code/cep-plugin/main.js - code/engine/persistencia/__init__.py - code/engine/persistencia/esquema.py - code/cep-plugin/abas/ - code/engine/persistencia/repositorio_de_projetos.py - code/engine/registrar_projeto_de_edicao.py - code/engine/testes/test_repositorio_de_projetos.py
32 lines
1.2 KiB
Python
32 lines
1.2 KiB
Python
"""Testes da persistência de projetos com uma sequência e várias seleções."""
|
|
|
|
import tempfile
|
|
import unittest
|
|
from pathlib import Path
|
|
|
|
from engine.persistencia import ProjetoDeEdicao, RepositorioDeProjetos, abrir_banco
|
|
|
|
|
|
class TesteRepositorioDeProjetos(unittest.TestCase):
|
|
"""Garante a regra de uma sequência por projeto."""
|
|
|
|
def test_registra_um_projeto_com_varias_faixas_e_clipes(self):
|
|
with tempfile.TemporaryDirectory() as pasta:
|
|
conexao = abrir_banco(Path(pasta) / "analises.db")
|
|
conexao.execute("INSERT INTO videos (id, nome) VALUES ('video-1', 'Sequência')")
|
|
repositorio = RepositorioDeProjetos(conexao)
|
|
projeto_id = repositorio.registrar(ProjetoDeEdicao(
|
|
nome="Projeto depoimento", video_id="video-1",
|
|
faixas=("video_0", "audio_0"), clipes=("clipe-v", "clipe-a"),
|
|
))
|
|
projeto = repositorio.carregar(projeto_id)
|
|
conexao.close()
|
|
|
|
self.assertEqual(projeto["video_id"], "video-1")
|
|
self.assertEqual(projeto["faixas"], ["video_0", "audio_0"])
|
|
self.assertEqual(projeto["clipes"], ["clipe-v", "clipe-a"])
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|