seeInRepository does not work with values from multiple relations
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 45/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 停滞
- 技术栈
- php
- 领域
- database, testing-qa
调研方向
从 Codeception\Module\Doctrine2::_buildAssociationQuery 开始,复现所示的包含两个关系的 Doctor/Ordination 案例。调查嵌套 collection 产生 Doctrine QueryException 的原因,然后验证 seeInRepository 接受多个关系值而无需分别调用。
由索引模型根据 Issue 内容生成。
描述
Example: a one-to-many relation (uni-directional, so implemented as many-to-many with join table):
#[ManyToMany(targetEntity: Ordination::class, cascade: ['all'], orphanRemoval: true)]
private Collection|ArrayCollection $ordinations;
Just for this example I save a Doctor entity with two Ordination relations with haveInRepository in my test.
But then there's no possibility to check for values of both ordinations
$this->tester->seeInRepository(Doctor::class, [
'name.firstName' => 'Mauris',
'ordinations' => [
[
'externalReferenceId' => '3'
]
]
]);
This leads to
[Doctrine\ORM\Query\QueryException] [Syntax Error] line 0, col 140: Error: Expected Doctrine\ORM\Query\Lexer::T_IDENTIFIER, got '0'
because of the nested structure.
What works is a check for a single relation:
$this->tester->seeInRepository(Doctor::class, [
'name.firstName' => 'Mauris',
'ordinations' => [
'externalReferenceId' => '3'
]
]);
(so as a workaround, I could call the seeInRepository multiple times with a different relation's values …)
The problem is in the method \Codeception\Module\Doctrine2::_buildAssociationQuery
but I'm not really sure how to fix this for a PR. Anyone with more knowledge on this?
I guess this issue is somehow related to Codeception/module-doctrine#16
- 主要语言
- PHP
- 星标
- 4
- 派生
- 2
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
我们还没有检查这个项目的环境配置文件。先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
Codeception/module-doctrine 的其他 Issue
-
难度 3/5 1-2 天 新手友好度 38/100
-
难度 4/5 3-5 天 新手友好度 30/100
-
难度 4/5 3-5 天 新手友好度 35/100
Codeception/module-doctrine#2 · 1 条评论 · 1 个 reaction ·
-
难度 3/5 1-2 天 新手友好度 42/100
-
难度 3/5 1-2 天 新手友好度 64/100
Codeception/module-doctrine#6 · 1 条评论 ·
查看 Codeception/module-doctrine 的全部 Issue
相似的 Issue
-
[Feature]: Remove Kanboard Discourse forum link from README.md and CONTRIBUTING.md, or moderate it未关闭
难度 2/5 1-3 小时 新手友好度 68/100
-
难度 2/5 1-3 小时 新手友好度 78/100
solana-foundation/pay-kit#341 ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 85/100
-
难度 1/5 1 小时以内 新手友好度 92/100
a2aproject/A2A#2262 ·
维护者通常 2 天内回复
-
Bug
难度 2/5 1-3 小时 新手友好度 84/100
维护者通常 2 天内回复