Jump to content

Diogo Alexsander

Members
  • Content count

    21
  • Joined

  • Last visited

Community Reputation

1 Comum

About Diogo Alexsander

  • Rank
    DarkSolstice
  • Birthday 02/22/1990

Informações Pessoais

  • Sexo
    Masculino

Contato

  1. Diogo Alexsander

    PHPUnit criar mock de método.

    Certo, entendi. Obrigado.
  2. Diogo Alexsander

    PHPUnit criar mock de método.

    Quanto eu meu post anterior, na verdade eu esqueci de responder com citação da primeira vez, então dupliquei a resposta e coloquei a citação, pra daí apagar o primeiro. Você apagou o que eu tinha corrigido, hehe. Entendi. Só devo fazer mock quando quero alterar o comportamento do método então, pra que seja testado nas várias possíveis situações. Bom, eu vou marcar este tópico como resolvido. O que você respondeu agora vai me fazer escrever os testes de forma diferente e eu vou pesquisar mais sobre o uso de mocks. Muito obrigado pelo esclarecimento.
  3. Diogo Alexsander

    PHPUnit criar mock de método.

    .
  4. Diogo Alexsander

    PHPUnit criar mock de método.

    Boa tarde, pessoal. Estou há alguns dias tentando passar de um problema no PHPUnit, mas tá estranho. Antes de tudo... sou novo no processo de TDD. Estou tentando "mockar" um método de uma classe, e quero me certificar de que quando eu chame este método, ele chame um terceiro método. Bom, segue código com comentários do que eu quero fazer mas não estou conseguindo... Classe: Usuario <?php namespace Minha\Classe\Concreta; class Usuario { /** * Este é o método que eu tento mockar, para posteriormente, verificar se ele chama o método teste2. */ public function teste() { $this->teste2(); } private function teste2() { } } O teste unitário para ela... <?php class UsuarioTest extends \PHPUnit_Framework_TestCase { public function testMockingMethods() { // Crio um mock da minha classe Usuário com o método teste. $mock = $this->getMockBuilder('Minha\Classe\Concreta\Usuario') ->disableOriginalConstructor() ->setMethods(['teste']) ->getMock(); // Espero que o método teste2 seja chamado uma vez apenas. $mock->expects($this->once()) ->method('teste2'); // Chamo o método "teste" para rodar o teste de fato e certificar que "teste2" foi chamado. $mock->teste(); } } Ao rodar esse teste, o resultado é o seguinte... vagrant@vm:/www$ (master) ✖ ./library/vendor/bin/phpunit PHPUnit 4.8.21 by Sebastian Bergmann and contributors. Runtime: PHP 5.5.9-1ubuntu4.17 with Xdebug 2.2.3 Configuration: /www/teste/phpunit.xml F Time: 13.13 seconds, Memory: 14.25MB There was 1 failure: 1) UsuarioTest::testMockingMethods Expectation failed for method name is equal to <string:teste2> when invoked 1 time(s). Method was expected to be called 1 times, actually called 0 times. Pois bem, eu não sei o que está errado na minha classe de teste. Já verifiquei várias vezes na própria documentação do PHPUnit mas não sei o que estou fazendo errado ainda. Agradeço desde já.
  5. Diogo Alexsander

    Alinhamento de operadores de atribuição.

    Bom dia. Obrigado pela opinião de vocês, Luiz Paulo Franz, ESerra e Dorian Neto.
  6. Diogo Alexsander

    Alinhamento de operadores de atribuição.

    Legal. Bom saber que eu não sou o único. Quero aber a opinião de mais desenvolvedores ainda. Obrigado pelo feedback ;) Pessoal, ninguém mais tem alguma coisa a dizer sobre essa prática?
  7. Diogo Alexsander

    Alinhamento de operadores de atribuição.

    Bom dia, pessoal. Tenho uma dúvida bem simples. Não sei se aqui seria o local correto pra perguntar isso, mas vou tentar. Já fiz algumas pesquisas no Google e não achei a resposta (também não sei se procurei o suficiente). A dúvida é referente a formatação de código e padrões de codificação. Segue exemplo: Exemplo 1: <?php $user = []; $user['name'] = 'Diogo'; $user['email'] = 'email@blabla.com'; $user['age'] = 25; ?> Exemplo 2: <?php $user = []; $user['name'] = 'Diogo'; $user['email'] = 'email@blabla.com'; $user['age'] = 25; ?> No exemplo 2, os sinais de igualdade estão alinhados. Eu sei que isso pode parecer besteira e pode ser que eu esteja me preocupando demais com pouca coisa, mas de fato, isso faz diferença quando o código é maior. Com os operadores de atribuição alinhados a legibilidade do código melhora bastante. Lógico que se deve manter um bom senso e não alinhar TODOS os operadores na mesma posição do início até o final do arquivo. Eu normalmente coscutmo dar atenção nesses detalhes. Obviamente utilizo um plugin pra fazer isso com um atalho de teclado. O que eu queria saber é se isso é válido. Se é uma boa prática. Acredito que não seja só eu que faça isso.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.