Codeception / module-yii2

Codeception module for Yii2 framework
MIT License
16 stars 36 forks source link

Unexpected methods counter "0" after change config #43

Closed bscheshirwork closed 2 years ago

bscheshirwork commented 6 years ago

For yii2-app-advanced

I rm modules from common/tests/unit.suite.yml

class_name: UnitTester
bootstrap: false

build throw docker codecep image

root@72603fb8df51:/var/www/html# codecept build

Included Configuration: common
Building Actor classes for suites: acceptance, functional, unit
 -> AcceptanceTesterActions.php generated successfully. 0 methods added
common\tests\AcceptanceTester includes modules: 
 -> FunctionalTesterActions.php generated successfully. 0 methods added
common\tests\FunctionalTester includes modules: 
 -> UnitTesterActions.php generated successfully. 0 methods added
common\tests\UnitTester includes modules: 

Included Configuration: frontend
Building Actor classes for suites: acceptance, functional, unit
 -> AcceptanceTesterActions.php generated successfully. 0 methods added
frontend\tests\AcceptanceTester includes modules: WebDriver, \bscheshirwork\Codeception\Module\DbYii2Config, Yii2, Asserts, common\tests\Helper\Acceptance
 -> FunctionalTesterActions.php generated successfully. 0 methods added
frontend\tests\FunctionalTester includes modules: Filesystem, \bscheshirwork\Codeception\Module\DbYii2Config, Yii2, Asserts, common\tests\Helper\Functional, frontend\tests\Helper\Functional
 -> UnitTesterActions.php generated successfully. 0 methods added
frontend\tests\UnitTester includes modules: Yii2, Asserts

Included Configuration: backend
Building Actor classes for suites: acceptance, functional, unit
 -> AcceptanceTesterActions.php generated successfully. 0 methods added
backend\tests\AcceptanceTester includes modules: WebDriver, \bscheshirwork\Codeception\Module\DbYii2Config, Yii2, common\tests\Helper\Acceptance
 -> FunctionalTesterActions.php generated successfully. 0 methods added
backend\tests\FunctionalTester includes modules: \bscheshirwork\Codeception\Module\DbYii2Config, Yii2, common\tests\Helper\Functional
 -> UnitTesterActions.php generated successfully. 0 methods added
backend\tests\UnitTester includes modules: 

I can see in generated code is 1 method

<?php  //[STAMP] 739f27113b6e852d226d2e121e177b1d
namespace common\tests\_generated;

// This class was automatically generated by build task
// You should not change it manually as it will be overwritten on next build
// @codingStandardsIgnoreFile

trait UnitTesterActions
{
    /**
     * @return \Codeception\Scenario
     */
    abstract protected function getScenario();

}

I add more modules to common/tests/unit.suite.yml

class_name: UnitTester
bootstrap: false
modules:
    enabled:
        - Yii2:
            part: fixtures
        - Asserts

I build again

root@72603fb8df51:/var/www/html# codecept build

Included Configuration: common
Building Actor classes for suites: acceptance, functional, unit
 -> AcceptanceTesterActions.php generated successfully. 0 methods added
common\tests\AcceptanceTester includes modules: 
 -> FunctionalTesterActions.php generated successfully. 0 methods added
common\tests\FunctionalTester includes modules: 
 -> UnitTesterActions.php generated successfully. 0 methods added
common\tests\UnitTester includes modules: Yii2, Asserts

Included Configuration: frontend
Building Actor classes for suites: acceptance, functional, unit
 -> AcceptanceTesterActions.php generated successfully. 0 methods added
frontend\tests\AcceptanceTester includes modules: WebDriver, \bscheshirwork\Codeception\Module\DbYii2Config, Yii2, Asserts, common\tests\Helper\Acceptance
 -> FunctionalTesterActions.php generated successfully. 0 methods added
frontend\tests\FunctionalTester includes modules: Filesystem, \bscheshirwork\Codeception\Module\DbYii2Config, Yii2, Asserts, common\tests\Helper\Functional, frontend\tests\Helper\Functional
 -> UnitTesterActions.php generated successfully. 0 methods added
frontend\tests\UnitTester includes modules: Yii2, Asserts

Included Configuration: backend
Building Actor classes for suites: acceptance, functional, unit
 -> AcceptanceTesterActions.php generated successfully. 0 methods added
backend\tests\AcceptanceTester includes modules: WebDriver, \bscheshirwork\Codeception\Module\DbYii2Config, Yii2, common\tests\Helper\Acceptance
 -> FunctionalTesterActions.php generated successfully. 0 methods added
backend\tests\FunctionalTester includes modules: \bscheshirwork\Codeception\Module\DbYii2Config, Yii2, common\tests\Helper\Functional
 -> UnitTesterActions.php generated successfully. 0 methods added
backend\tests\UnitTester includes modules: 

I can see in common/tests/_support/_generated/UnitTesterActions.php 38 methods

What are you trying to achieve?

 -> UnitTesterActions.php generated successfully. 37 methods added
common\tests\UnitTester includes modules: Yii2, Asserts

What do you get instead?

 -> UnitTesterActions.php generated successfully. 0 methods added
common\tests\UnitTester includes modules: Yii2, Asserts

Details

samdark commented 6 years ago

@DavertMik need your help with it.

bscheshirwork commented 6 years ago

@samdark I think it is common problem with count method in trait, not for yii only (:not sure:)

samdark commented 6 years ago

Yes. Looks like so.