Consolida núcleo (presença, peer actions, MessageDispatcher), chat e screencast na galeria, documentação PT-BR e testes JUnit; remove mpChat do catálogo em favor do chat unificado. Co-authored-by: Cursor <cursoragent@cursor.com>
63 lines
1.8 KiB
Markdown
63 lines
1.8 KiB
Markdown
# Testes e gate
|
||
|
||
## Gate automatizado (núcleo)
|
||
|
||
O módulo `pitiupi/` inclui testes JUnit:
|
||
|
||
```bash
|
||
cd pitiupi && ant test
|
||
```
|
||
|
||
Falha se `java`, `javac` ou Ant estiverem ausentes.
|
||
|
||
## Gate de build (produto)
|
||
|
||
Na raiz do clone:
|
||
|
||
```bash
|
||
./scripts/pitiupi.sh build --all
|
||
```
|
||
|
||
Equivalente manual:
|
||
|
||
```bash
|
||
cd pitiupi && ant jar
|
||
cd plugins/chat && ant jar
|
||
cd plugins/screencast && ant jar
|
||
```
|
||
|
||
Depois, para runtime local:
|
||
|
||
```bash
|
||
./scripts/pitiupi.sh link --all
|
||
```
|
||
|
||
## Checklist manual — uma máquina (5000 / 5001)
|
||
|
||
- [ ] Duas instâncias com portas distintas; nomes diferentes
|
||
- [ ] Peers visíveis na lista em até ~15 s
|
||
- [ ] Chat: sala geral e conversa por IP; tags de transporte coloridas no histórico
|
||
- [ ] ScreenCast: abrir aba, destino sala ou peer; fechar aba com × interrompe compartilhamento
|
||
- [ ] Compose do chat sem barra de rolagem vazio em janela ~1024×768
|
||
- [ ] Encerrar uma instância remove o peer após timeout de heartbeat
|
||
|
||
## Checklist manual — dois PCs (mesma Wi‑Fi)
|
||
|
||
Mesma **porta** em ambos (ex. 5000), **mesmos JARs** em `~/pitiupi/plugins` em cada máquina:
|
||
|
||
- [ ] Presença e linha **Todos**
|
||
- [ ] Troca de mensagens no chat (multicast e, se possível, unicast/TCP)
|
||
- [ ] Compartilhamento de tela entre os dois (ambiente com captura de tela funcional — no WSL a captura nativa pode falhar)
|
||
- [ ] Plugin Ping do aluno (tutorial [17_tutorial_ping_aula.md](17_tutorial_ping_aula.md)) medindo RTT — recomendado antes da entrega final
|
||
|
||
## Checklist plugin de aluno
|
||
|
||
- [ ] JAR em `PITIUPI_HOME/plugins` + SPI correto
|
||
- [ ] README do módulo com build e formato das mensagens
|
||
- [ ] UI na aba (`PluginWorkspace`), sem `JFrame` principal
|
||
- [ ] Demonstração mínima professor ↔ aluno ou aluno ↔ aluno
|
||
|
||
## Melhorias futuras
|
||
|
||
Ver [engineering_backlog.md](engineering_backlog.md) (CI contínuo, mais testes de rede sem sockets reais).
|