Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to use Examples attribute #882

Open
mvhirsch opened this issue Jan 31, 2025 · 1 comment
Open

Unable to use Examples attribute #882

mvhirsch opened this issue Jan 31, 2025 · 1 comment

Comments

@mvhirsch
Copy link

I recently updated to codeception v5 - which works like a charm 😊
I just wanted to try out the new Examples Attribute. Unfortunately I get this:

use Codeception\Attribute\Examples;
use Codeception\Example;
use Symfony\Component\HttpFoundation\Response;
use Tests\Support\FunctionalTester;

final class LegacySeriesRedirectControllerCest
{
    #[Examples(url: '/de/series/index', expected: 'asdf')]
    public function foo(FunctionalTester $I, Example $example): void
    {
        $I->followRedirects(false);
        $I->amOnPage($example['url']);
        $I->seeRedirectTo($example['expected'], Response::HTTP_FOUND);
    }
}
 LegacySeriesRedirectControllerCest: Foo
 Test  tests/Functional/App/Controller/Frontend/LegacySeriesRedirectControllerCest.php:foo
                                                                                                                                                                                                                                            
  [InjectionException] Failed to inject dependencies in instance of 'Functional\App\Controller\Frontend\LegacySeriesRedirectControllerCest'. Failed to create instance of 'Codeception\Example'. Parameter 'data' must have default value.  
                                                                                                                                                                                                                                            
/path/to/project/okto/website/vendor/codeception/codeception/src/Codeception/Lib/Di.php:122
/path/to/project/okto/website/vendor/codeception/codeception/src/Codeception/Test/Cest.php:184
/path/to/project/okto/website/vendor/codeception/codeception/src/Codeception/Test/Cest.php:200
/path/to/project/okto/website/vendor/codeception/codeception/src/Codeception/Test/Cest.php:129
/path/to/project/okto/website/vendor/codeception/codeception/src/Codeception/Test/Test.php:168
/path/to/project/okto/website/vendor/codeception/codeception/src/Codeception/Suite.php:130
/path/to/project/okto/website/vendor/codeception/codeception/src/Codeception/SuiteManager.php:151
/path/to/project/okto/website/vendor/codeception/codeception/src/Codeception/Codecept.php:260
/path/to/project/okto/website/vendor/codeception/codeception/src/Codeception/Codecept.php:216
/path/to/project/okto/website/vendor/codeception/codeception/src/Codeception/Command/Run.php:435
/path/to/project/okto/website/vendor/symfony/console/Command/Command.php:326
/path/to/project/okto/website/vendor/symfony/console/Application.php:1078
/path/to/project/okto/website/vendor/symfony/console/Application.php:324
/path/to/project/okto/website/vendor/symfony/console/Application.php:175
/path/to/project/okto/website/vendor/codeception/codeception/src/Codeception/Application.php:112
/path/to/project/okto/website/vendor/codeception/codeception/app.php:45
/path/to/project/okto/website/vendor/codeception/codeception/app.php:46
/path/to/project/okto/website/vendor/codeception/codeception/codecept:7
/path/to/project/okto/website/vendor/bin/codecept:119
$ symfony composer info codeception/*
codeception/codeception      5.1.2 BDD-style testing framework
codeception/lib-asserts      2.1.0 Assertion methods used by Codeception core and Asserts module
codeception/lib-innerbrowser 4.0.5 Parent library for all Codeception framework modules and PhpBrowser
codeception/lib-web          1.0.6 Library containing files used by module-webdriver and lib-innerbrowser or module-phpbrowser
codeception/lib-xml          1.0.3 Files used by module-rest and module-soap
codeception/module-asserts   3.0.0 Codeception module containing various assertions
codeception/module-doctrine  3.1.0 Doctrine module for Codeception
codeception/module-rest      3.4.0 REST module for Codeception
codeception/module-symfony   3.5.0 Codeception module for Symfony framework
codeception/module-webdriver 4.0.2 WebDriver module for Codeception
codeception/stub             4.1.3 Flexible Stub wrapper for PHPUnit's Mock Builder

According to #867 this should work. What am I doing wrong?

@burned42
Copy link

See Codeception/Codeception#6812

Your example looks fine to me and theoretically that's how it should work, but at the moment it doesn't.

Until the bugfix gets merged, it should still begin to work after you add a second example attribute.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants