Codeception / Codeception/module-doctrine

Method haveInRepository() does not work with readonly property in Embeddable

Ouverte
#2 1 commentaire 1 réaction 0 personnes assignées Voir sur GitHub
Langage dominant
PHP
Étoiles
4
Forks
2
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Hi, thanks for good library
How I can use method **haveInRepository()** with readonly property,
Example: simple entity with embeddable property

```php
#[Entity]
class User
{
public function __construct(
#[Embedded(class: Address::class)] private Address $address
) {
}

public function getAddres(): Address
{
return $this->address;
}
}

#[Embeddable]
class Address
{
#[Column(type: "string")]
private readonly string $street;

#[Column(type: "string")]
private readonly string $city;
}
```

I want use method **haveInRepository()** for creating test entities like this
```php
$I->haveInRepository(new User(
address: new Address(
street: 'Test street',
city: 'Toronto'
);
);
```

**But got error after run Cest:**
```php
[LogicException] Attempting to change readonly property Address::$street.
```

**How I can fix it? Thanks**

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.