Codeception / Codeception/module-doctrine

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

Open
#2 1 comment 1 reaction 0 assignees View on GitHub
Dominant language
PHP
Stars
4
Forks
2
PR merge metrics
No merged PRs in 30d

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

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.