Como eu posso usar authentication tdd ? eu testei só que ele para no meio do caminho, tipo eu quero mostrar quem está logado em outro form usei esse exemplo da documentação e não tive exito https://laravel.com/docs/5.6/http-tests
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Como eu posso usar authentication tdd ? eu testei só que ele para no meio do caminho, tipo eu quero mostrar quem está logado em outro form usei esse exemplo da documentação e não tive exito https://laravel.com/docs/5.6/http-tests
Olá Elyton,
deixa eu ver se eu entendi, você quer fazer testes automatizados de autenticação com o phpUnit, certo?
Os asserts de autenticação são esses mesmo que você indicou na documentação: https://laravel.com/docs/5.6/http-tests#authentication-assertions Você pode descrever com mais detalhes o que aconteceu. O que você quis dizer com "ele para no meio do caminho"?
Abraços!
Tipo pegar o nome do usuário logado
Na function do arquivo tddTest eu passo o login e logo em seguida eu passo o campo cadastro, e gostaria de saber como eu pego o nome do usuário...
Eu estou fazendo dessa maneira não sei se é o correto
$response = $this->post('api/login',$dados);
$response->assertOk();
$response = $this->post('api/empresa',$dados);
$response->assertOk();
Oi Elyton, tudo bom?
O usuario logado não é rertonado no response? Você poderia resgatar a instancia do response e verificar o nome. Já tentou essa abordagem?
Como está o método post dentro do teste? Compartilha mais do seu código aqui com a gente. Assim fica mais facil dar um direcionamento =)
Abraço
Consegui resolver tiver que pegar o usuário logado, buscar id da pessoa logada e no tdd jogava o dados do login
Controller
//busca usuario
$usuario = $request->user(); //usuario logado
$idPessoafisica = $usuario->pessoafisica->id; //id pessoafisica
TDDpublic function testCriarEmpresaGerador() { // $this->assertTrue(true);
$dadosUsuario = [
'email' => 'ana@mail.com',
'password' => '123456'
];
$response = $this->post('/api/login', $dadosUsuario);
$response->assertOk();
$dados =
[
'nomeEmpresa' => 'Centro de tecnologia da informação',
'nomeFantasia'=> 'CCTI',
'cnpj'=> '85701757000165',
'telefone'=> '9536268087',
//Endereco
'logradouro' => 'Av Brasil,
'numero' => '1820',
'cep' => '69318900',
];
$response = $this->post('/api/empresa/criar', $dados);
//echo $response->content();
$response->assertSuccessful();
}