Testing framework feedback and improvements
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 25/100
- Tipo de issue
- Funcionalidade
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- typescript
- Domínio
- testing-qa
Direção de pesquisa
Start by locating the current testing framework and the testenv.exec entry point, then compare how handlers and filters are tested today. Done should include a decided design and tests covering handler hit counts, event order and input assertions, deletion, and intermediate results.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
The current testing framework is a good step to being able to check a handlers and filters but has some limitations. Based on feedback we can make improvements to give more control over tests
Example:
import {xxx_event_handler} from '../src/';
it('test XXX event handler for block #123', async () => {
store = Mock.fn();...
// blockheight, handler_name, injection, callback
await testenv.exec(1234, 'xxx_event_handler', {store}, (data) => {
// assert data.length, how many times it is expected to be hit at this height
// loop data element, assert content/order of the matching events
// invoke real handler
for (const evt of data) {
await xxx_event_handler(evt);
// write store asserts
}
})
});
Advantages:
- more assertions than the store output, e.g
- times the handler is hit in the given height
- order of events hitting the given handler
- assert the input of the handler
- assert deletion
- assert intermediate results
- Linguagem predominante
- TypeScript
- Estrelas
- 18.7k
- Forks
- 396
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de subquery/subql
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 48/100
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 25/100
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 35/100
-
Improve project validationAberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 48/100
Todas as issues de subquery/subql
Issues semelhantes
-
Add: Digi World (Romania) SDAbertacheck:passed streams:add
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
Fission-AI/OpenSpec#1986 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
nestjs/docs.nestjs.com#3554 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
publicodes/publicodes#868 ·
-
namespace operations
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 78/100
EclipseFdn/open-vsx.org#13488 ·
Mantenedores costumam responder em até 2 dias