I would have expected this assertion to fail as the object you are passing is a brand new object, so `window.MozActivity` *can't* have been called with it.

I think your assuming the `calledWith` method does a 'deepEqual' style match against objects. There is nothing in the sinon.js docs to suggest this is the case. I think you should extract the argument the `window.MozActivity` was called with, as test each property of the argument like this:

```js
// Get first argument, of first call
var arg = window.MozActivity.args[0][0];

assert.ok(arg.name === 'share');
assert.ok(arg.data.type === 'video/*');
assert.ok(arg.data.number === 1);
// ... and so on
```