Open
Description
Describe the bug
I cant use a Substitute mock for code that uses object destructuring + rest
To Reproduce
import Substitute from "@fluffy-spoon/substitute";
type Entity = { id: number; name: string; lastName: string };
const copyEntity = (entity: Entity) => {
const { id, ...params } = entity;
console.log(params);
};
const mockEntity = Substitute.for<Entity>();
mockEntity.id.returns!(1);
mockEntity.name.returns!('test name');
mockEntity.lastName.returns!('test last name');
copyEntity(mockEntity); // empty object
copyEntity({id:1, name: 'test name', lastName: 'test last name'}) // {name: 'test name', lastName: 'test last name'}
Codesandbox:
https://codesandbox.io/s/flamboyant-sea-o5zf4?file=/src/index.ts:0-469
Expected behavior
I should be able to test functions using destructuring with the rest pattern
Environment
- Typescript version:
3.9.3
- substitute.js version:
1.145.0
- Node version:
12