migrate-to-shoehorn
Migrar Testes TypeScript para Shoehorn
Testes em TypeScript frequentemente usam asserções `as` inseguras para falsificar objetos grandes. Esta skill migra esses testes para helpers do shoehorn com segurança de tipos, mantendo o autocomplete e a checagem de tipos funcionando.
Baixar o ZIP da skill
Upload no Claude
Vá em Configurações → Capacidades → Skills → Upload skill
Ative e comece a usar
Testar
A utilizar "migrate-to-shoehorn". getUser({ body: { id: '123' } } as Request);
Resultado esperado:
Depois: getUser(fromPartial({ body: { id: '123' } })); com o import adicionado de @total-typescript/shoehorn.
A utilizar "migrate-to-shoehorn". getUser({ body: { id: 123 } } as unknown as Request);
Resultado esperado:
Depois: getUser(fromAny({ body: { id: 123 } })); com o import adicionado de @total-typescript/shoehorn.
Auditoria de Segurança
Baixo RiscoAll 37 static findings are false positives. The 'backtick execution' detections are Markdown code fences around TypeScript examples. The 'weak cryptographic algorithm' and 'system reconnaissance' flags are pattern false-positives from prose matching. The skill is benign documentation that guides migration of test code to use @total-typescript/shoehorn. No malicious intent detected.
Problemas de Baixo Risco (1)
Fatores de risco
⚙️ Comandos externos (24)
Pontuação de qualidade
O Que Você Pode Construir
Migrar objetos mock grandes em testes
Substitua falsificações verbosas de tipos TypeScript grandes por fromPartial() para passar apenas as propriedades necessárias.
Substituir asserções double-as inseguras
Converta padrões `as unknown as Type` para fromAny() em cenários de teste de erro.
Padronizar helpers de dados de teste
Adote o shoehorn de forma consistente em toda a suite de testes do código para melhor segurança de tipos.
Tente Estes Prompts
Encontre todos os arquivos de teste que usam asserções `as Type` e migre-os para usar fromPartial() de @total-typescript/shoehorn.
Substitua todos os padrões `as unknown as Type` nos meus arquivos de teste por fromAny() de @total-typescript/shoehorn.
Tenho arquivos de teste que falsificam objetos Request grandes com mais de 20 propriedades. Migre-os para usar fromPartial() para que eu especifique apenas as propriedades que preciso.
Audite minha suite de testes em busca de todas as asserções `as`, instale @total-typescript/shoehorn e migre cada ocorrência para o helper apropriado do shoehorn.
Melhores Práticas
- Use fromPartial() para objetos grandes onde apenas algumas propriedades são relevantes para o teste
- Use fromAny() apenas quando passar intencionalmente dados com tipo errado para teste de erros
- Mantenha o uso do shoehorn restrito aos arquivos de teste, nunca no código de produção
- Execute uma checagem de tipos após a migração para confirmar que a segurança de tipos foi preservada
Evitar
- Usar helpers do shoehorn no código fonte de produção
- Migrar sem verificar se a checagem de tipos ainda passa
- Usar fromAny() quando fromPartial() seria suficiente, perdendo os benefícios de segurança de tipos
- Deixar algumas asserções `as` sem migrar, criando padrões de teste inconsistentes
Perguntas Frequentes
O que é shoehorn?
O shoehorn pode ser usado em código de produção?
Como instalo o shoehorn?
Qual é a diferença entre fromPartial e fromAny?
Como encontro arquivos de teste com asserções `as`?
Esta skill executa código automaticamente?
Detalhes do Desenvolvedor
Estrutura de arquivos
📄 SKILL.md