Yii2 why the PhpStorm doesn't autocomplete Unit tests methods





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}







0















My test looks like:



<?php

namespace backendtestsunit;

use backendmodulescrmmodelsCrmClient;

class ClientTest extends CodeceptionTestUnit
{
/**
* @var frontendtestsUnitTester
*/
protected $tester;

public function testClientFields()
{
$client = new CrmClient();

$client->setCompany('12345');
$this->assertTrue($client->validate(['company']));
}
}


But by typing $this-> doesn't show list of methods like assertTrue, assertFalse e.g. Is it normal and can I make it show them ? Thank you!










share|improve this question





























    0















    My test looks like:



    <?php

    namespace backendtestsunit;

    use backendmodulescrmmodelsCrmClient;

    class ClientTest extends CodeceptionTestUnit
    {
    /**
    * @var frontendtestsUnitTester
    */
    protected $tester;

    public function testClientFields()
    {
    $client = new CrmClient();

    $client->setCompany('12345');
    $this->assertTrue($client->validate(['company']));
    }
    }


    But by typing $this-> doesn't show list of methods like assertTrue, assertFalse e.g. Is it normal and can I make it show them ? Thank you!










    share|improve this question

























      0












      0








      0








      My test looks like:



      <?php

      namespace backendtestsunit;

      use backendmodulescrmmodelsCrmClient;

      class ClientTest extends CodeceptionTestUnit
      {
      /**
      * @var frontendtestsUnitTester
      */
      protected $tester;

      public function testClientFields()
      {
      $client = new CrmClient();

      $client->setCompany('12345');
      $this->assertTrue($client->validate(['company']));
      }
      }


      But by typing $this-> doesn't show list of methods like assertTrue, assertFalse e.g. Is it normal and can I make it show them ? Thank you!










      share|improve this question














      My test looks like:



      <?php

      namespace backendtestsunit;

      use backendmodulescrmmodelsCrmClient;

      class ClientTest extends CodeceptionTestUnit
      {
      /**
      * @var frontendtestsUnitTester
      */
      protected $tester;

      public function testClientFields()
      {
      $client = new CrmClient();

      $client->setCompany('12345');
      $this->assertTrue($client->validate(['company']));
      }
      }


      But by typing $this-> doesn't show list of methods like assertTrue, assertFalse e.g. Is it normal and can I make it show them ? Thank you!







      yii2






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Jan 3 at 6:44









      Toma TomovToma Tomov

      592417




      592417
























          1 Answer
          1






          active

          oldest

          votes


















          2














          You need to call codeception build command, eg. ./vendor/bin/codecept build to generate base classes for all suites. This generate helper functions with documentation in folder /tests/_support/_generated/ (basic tests folder structure).



          Second solution:
          Pass UnitTester variable into function and then use it instead of $this, eg:



          public function testClientFields(UnitTester $I)
          {
          $client = new CrmClient();

          $client->setCompany('12345');
          $I->assertTrue($client->validate(['company']));
          }





          share|improve this answer


























          • Thank you! Thank you! Thank youu!

            – Toma Tomov
            Jan 3 at 14:16











          • Just one more thing. Both solutions works but on the second I get : [ArgumentCountError] Too few arguments to function backendtestsunitClientTest::testClientFields(), 0 passed in /home/projects/toma/transport/vendor/phpunit/phpunit/src/Framework/TestCase.php on line 1153 and exactly 1 expected because of the argument. Where should I set it ?

            – Toma Tomov
            Jan 3 at 14:21













          • Try to remove extends CodeceptionTestUnit and $tester variable, is not needed anymore.

            – Pistej
            Jan 3 at 14:37












          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54017498%2fyii2-why-the-phpstorm-doesnt-autocomplete-unit-tests-methods%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          2














          You need to call codeception build command, eg. ./vendor/bin/codecept build to generate base classes for all suites. This generate helper functions with documentation in folder /tests/_support/_generated/ (basic tests folder structure).



          Second solution:
          Pass UnitTester variable into function and then use it instead of $this, eg:



          public function testClientFields(UnitTester $I)
          {
          $client = new CrmClient();

          $client->setCompany('12345');
          $I->assertTrue($client->validate(['company']));
          }





          share|improve this answer


























          • Thank you! Thank you! Thank youu!

            – Toma Tomov
            Jan 3 at 14:16











          • Just one more thing. Both solutions works but on the second I get : [ArgumentCountError] Too few arguments to function backendtestsunitClientTest::testClientFields(), 0 passed in /home/projects/toma/transport/vendor/phpunit/phpunit/src/Framework/TestCase.php on line 1153 and exactly 1 expected because of the argument. Where should I set it ?

            – Toma Tomov
            Jan 3 at 14:21













          • Try to remove extends CodeceptionTestUnit and $tester variable, is not needed anymore.

            – Pistej
            Jan 3 at 14:37
















          2














          You need to call codeception build command, eg. ./vendor/bin/codecept build to generate base classes for all suites. This generate helper functions with documentation in folder /tests/_support/_generated/ (basic tests folder structure).



          Second solution:
          Pass UnitTester variable into function and then use it instead of $this, eg:



          public function testClientFields(UnitTester $I)
          {
          $client = new CrmClient();

          $client->setCompany('12345');
          $I->assertTrue($client->validate(['company']));
          }





          share|improve this answer


























          • Thank you! Thank you! Thank youu!

            – Toma Tomov
            Jan 3 at 14:16











          • Just one more thing. Both solutions works but on the second I get : [ArgumentCountError] Too few arguments to function backendtestsunitClientTest::testClientFields(), 0 passed in /home/projects/toma/transport/vendor/phpunit/phpunit/src/Framework/TestCase.php on line 1153 and exactly 1 expected because of the argument. Where should I set it ?

            – Toma Tomov
            Jan 3 at 14:21













          • Try to remove extends CodeceptionTestUnit and $tester variable, is not needed anymore.

            – Pistej
            Jan 3 at 14:37














          2












          2








          2







          You need to call codeception build command, eg. ./vendor/bin/codecept build to generate base classes for all suites. This generate helper functions with documentation in folder /tests/_support/_generated/ (basic tests folder structure).



          Second solution:
          Pass UnitTester variable into function and then use it instead of $this, eg:



          public function testClientFields(UnitTester $I)
          {
          $client = new CrmClient();

          $client->setCompany('12345');
          $I->assertTrue($client->validate(['company']));
          }





          share|improve this answer















          You need to call codeception build command, eg. ./vendor/bin/codecept build to generate base classes for all suites. This generate helper functions with documentation in folder /tests/_support/_generated/ (basic tests folder structure).



          Second solution:
          Pass UnitTester variable into function and then use it instead of $this, eg:



          public function testClientFields(UnitTester $I)
          {
          $client = new CrmClient();

          $client->setCompany('12345');
          $I->assertTrue($client->validate(['company']));
          }






          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Jan 3 at 13:06

























          answered Jan 3 at 12:56









          PistejPistej

          404




          404













          • Thank you! Thank you! Thank youu!

            – Toma Tomov
            Jan 3 at 14:16











          • Just one more thing. Both solutions works but on the second I get : [ArgumentCountError] Too few arguments to function backendtestsunitClientTest::testClientFields(), 0 passed in /home/projects/toma/transport/vendor/phpunit/phpunit/src/Framework/TestCase.php on line 1153 and exactly 1 expected because of the argument. Where should I set it ?

            – Toma Tomov
            Jan 3 at 14:21













          • Try to remove extends CodeceptionTestUnit and $tester variable, is not needed anymore.

            – Pistej
            Jan 3 at 14:37



















          • Thank you! Thank you! Thank youu!

            – Toma Tomov
            Jan 3 at 14:16











          • Just one more thing. Both solutions works but on the second I get : [ArgumentCountError] Too few arguments to function backendtestsunitClientTest::testClientFields(), 0 passed in /home/projects/toma/transport/vendor/phpunit/phpunit/src/Framework/TestCase.php on line 1153 and exactly 1 expected because of the argument. Where should I set it ?

            – Toma Tomov
            Jan 3 at 14:21













          • Try to remove extends CodeceptionTestUnit and $tester variable, is not needed anymore.

            – Pistej
            Jan 3 at 14:37

















          Thank you! Thank you! Thank youu!

          – Toma Tomov
          Jan 3 at 14:16





          Thank you! Thank you! Thank youu!

          – Toma Tomov
          Jan 3 at 14:16













          Just one more thing. Both solutions works but on the second I get : [ArgumentCountError] Too few arguments to function backendtestsunitClientTest::testClientFields(), 0 passed in /home/projects/toma/transport/vendor/phpunit/phpunit/src/Framework/TestCase.php on line 1153 and exactly 1 expected because of the argument. Where should I set it ?

          – Toma Tomov
          Jan 3 at 14:21







          Just one more thing. Both solutions works but on the second I get : [ArgumentCountError] Too few arguments to function backendtestsunitClientTest::testClientFields(), 0 passed in /home/projects/toma/transport/vendor/phpunit/phpunit/src/Framework/TestCase.php on line 1153 and exactly 1 expected because of the argument. Where should I set it ?

          – Toma Tomov
          Jan 3 at 14:21















          Try to remove extends CodeceptionTestUnit and $tester variable, is not needed anymore.

          – Pistej
          Jan 3 at 14:37





          Try to remove extends CodeceptionTestUnit and $tester variable, is not needed anymore.

          – Pistej
          Jan 3 at 14:37




















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54017498%2fyii2-why-the-phpstorm-doesnt-autocomplete-unit-tests-methods%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          MongoDB - Not Authorized To Execute Command

          How to fix TextFormField cause rebuild widget in Flutter

          in spring boot 2.1 many test slices are not allowed anymore due to multiple @BootstrapWith