Codeception / Codeception/module-db

[Db] Change to disconnect on initialise breaks tests where Db is used in _beforeSuite

Aberta
#18 1 comentário 1 reação 0 responsáveis Ver no GitHub
Linguagem predominante
PHP
Estrelas
23
Forks
31
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

#### What are you trying to achieve?

A helper runs code to modify the database in `_beforeSuite` in order to add control rows before any tests are run.

#### What do you get instead?

The code crashes upon trying to run SQL as the connection has been terminated. This was new behaviour added by https://github.com/Codeception/Codeception/commit/5e2c999df9eae7ff4f802eb801940f87088f0fc7

Easiest fix would be to create a public method on `Db` to ensure that the connection is open before running code if config has reconnect. The quickest route would just be to make `connect()` public.

### Details

* Codeception version: 2.2.11
* PHP Version: 7.0.19
* Operating System: Ubuntu 16.04 LTS
* Installation type: Composer
* List of installed packages (`composer show`) not relevant
* Suite configuration:

```yml
config:
Db:
dsn: 'mysql:host=localhost;dbname=XXXX;charset=utf8'
user: 'root'
password: ''
dump: 'tests/_data/schema.sql'
populate: true
cleanup: false
reconnect: true
```

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

Comece inspecionando a inicialização da conexão do módulo Db e o código auxiliar que executa SQL em _beforeSuite, usando a configuração de reconnect mostrada para reproduzir a falha. O trabalho estará concluído quando a configuração da suíte puder executar seu SQL da linha de controle sem uma conexão encerrada quando reconnect estiver habilitado.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
php
Domínio
databases
Tipo de issue
Bug
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
38/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.