**Describe the bug** I cant use a Substitute mock for code that uses object destructuring + rest **To Reproduce** ```typescript 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 `
Activity
notanengineercom commentedon Sep 27, 2020
Thank you for the detailed report!
Can confirm the bug ^^
ffMathy commentedon Sep 28, 2020
Maybe the proxy object has a method for destructuring that we're missing.
notanengineercom commentedon Sep 28, 2020
Yes, we need to add a trap to handle the spread assignments!