react-native-bluetooth-datecs-printer
Version:
Module to printer in a Datecs bluetooth Printer
182 lines (137 loc) • 4.25 kB
Markdown
# 🧪 Scripts de Teste Automatizados
Este diretório contém scripts para criar automaticamente um projeto de teste para a biblioteca.
## Scripts Disponíveis
### Windows
#### `test-library.ps1` - Completo com logs
Script detalhado que mostra cada passo da criação do projeto de teste.
```powershell
.\test-library.ps1
```
**Características:**
- ✅ Logs detalhados de cada etapa
- ✅ Feedback visual colorido
- ✅ Ideal para debug e acompanhamento
#### `test-simple.ps1` - Rápido e silencioso
Script otimizado que cria o projeto rapidamente com saída mínima.
```powershell
.\test-simple.ps1
```
**Características:**
- ⚡ Mais rápido (saída silenciosa)
- ✅ Apenas mensagens importantes
- ✅ Ideal para uso frequente
### Linux/Mac
#### `test-library.sh`
Script bash completo para ambientes Unix.
```bash
chmod +x test-library.sh
./test-library.sh
```
## O Que os Scripts Fazem
1. **Limpam** projeto de teste anterior (se existir)
2. **Criam** novo projeto Expo SDK 54
3. **Instalam** dependências necessárias:
- expo-build-properties
- biblioteca local
4. **Copiam** configurações de exemplo:
- `app.json.example` → `app.json`
- `examples/ExpoExample.tsx` → `App.tsx`
5. **Ajustam** nomes no app.json
6. **Executam** `npx expo prebuild --clean`
## Estrutura Criada
```
../test-printer-app/ (ou test-printer-simple)
├── app.json ← Configurado para SDK 54
├── App.tsx ← Exemplo completo com UI
├── package.json ← Com biblioteca instalada
├── node_modules/
└── android/ ← Criado pelo prebuild
```
## Após Executar o Script
```bash
# Entrar no projeto criado
cd ../test-printer-app # ou ../test-printer-simple
# Executar no Android
npx expo run:android
# Ver logs
npx react-native log-android
```
## Problemas Comuns
### Erro: "Execution of scripts is disabled"
No PowerShell como Administrador:
```powershell
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
```
### Erro: "npm not found"
Certifique-se que Node.js está instalado e no PATH
### Erro: "expo not found"
```bash
npm install -g expo-cli
```
### Script trava no prebuild
O prebuild pode demorar na primeira execução. Aguarde alguns minutos.
## Limpar Depois
Para remover o projeto de teste:
**Windows:**
```powershell
cd ..
Remove-Item -Recurse -Force test-printer-app
# ou
Remove-Item -Recurse -Force test-printer-simple
```
**Linux/Mac:**
```bash
cd ..
rm -rf test-printer-app
```
## Diferenças Entre Scripts
| Feature | test-library.ps1 | test-simple.ps1 | test-library.sh |
|---------|------------------|-----------------|-----------------|
| Logs detalhados | ✅ Sim | ❌ Não | ✅ Sim |
| Cores/Emojis | ✅ Sim | ✅ Sim | ✅ Sim |
| Velocidade | Normal | ⚡ Rápido | Normal |
| Output | Verbose | Mínimo | Verbose |
| Plataforma | Windows | Windows | Linux/Mac |
## Modificar os Scripts
Para testar com configurações diferentes, edite as variáveis no início:
```powershell
# No script .ps1
$TEST_DIR = "..\meu-teste-custom"
$TEST_APP_NAME = "meu-teste-custom"
```
```bash
# No script .sh
TEST_DIR="../meu-teste-custom"
TEST_APP_NAME="meu-teste-custom"
```
## Integração CI/CD
Os scripts podem ser usados em pipelines CI/CD:
```yaml
# Exemplo GitHub Actions
- name: Test Library
run: |
cd path/to/library
./test-library.sh
cd ../test-printer-app
npx expo prebuild
# Adicionar testes aqui
```
## Troubleshooting
### Script não encontra arquivos
Certifique-se de executar da raiz da biblioteca:
```bash
cd c:\projetos\masfelix\react-native-bluetooth-datecs-printer
```
### Erro ao copiar arquivos
Verifique que existem:
- `app.json.example`
- `examples/ExpoExample.tsx`
### Prebuild falha
Verifique:
- Java 11+ instalado
- Android SDK instalado
- Variáveis de ambiente configuradas
## Documentação Relacionada
- [TESTING_GUIDE.md](./TESTING_GUIDE.md) - Guia completo de testes
- [HOW_TO_TEST.md](./HOW_TO_TEST.md) - Métodos de teste
- [EXPO_SETUP.md](./EXPO_SETUP.md) - Configuração Expo