Codeception / Codeception/module-doctrine

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

Offen
#2 1 Kommentar 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
PHP
Sterne
4
Forks
2
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

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**

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.