Codeception / Codeception/AspectMock

verifyInvokedMultipleTimes and ArgumentFormatter formats an object in an array with __set_state

Open
#174 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
PHP
Stars
784
Forks
132
PR merge metrics
No merged PRs in 30d

Description

Hi,

Im having an issue where im checking if a function is being call with the correct params, but one of my params is an array with objects in it. the what the ArgumentFormatter handles arrays is but calling `var_export` but this changes the objects/classes into the `__set_state` resulting the verify to fail

My current version of aspect mock:
```
name : codeception/aspect-mock
descrip. : Experimental Mocking Framework powered by Aspects
keywords :
versions : * 3.0.2
type : library
license : MIT License (MIT) (OSI approved) https://spdx.org/licenses/MIT.html#licenseText
source : [git] https://github.com/Codeception/AspectMock.git 130afd10a3d8131d267f393ee1ec322e3e583d67
dist : [zip] https://api.github.com/repos/Codeception/AspectMock/zipball/130afd10a3d8131d267f393ee1ec322e3e583d67 130afd10a3d8131d267f393ee1ec322e3e583d67
path : /var/www/html/billing/vendor/codeception/aspect-mock
names : codeception/aspect-mock
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading ArgumentFormatter and the verifyInvokedMultipleTimes path, then reproduce the comparison with an array containing objects. Confirm that var_export produces __set_state and define completion as verification no longer failing solely because objects in array arguments are formatted that way.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
testing
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.