> but that doesn't give me a way of asserting the "no match" case with arbitrary filterValue params and to do so, I needed some degree of basic filtering capabilities. 

Of course you can. You can tell your mock that the value-to-be-returned should be an empty array/whatever. See for example https://github.com/mozilla-b2g/gaia/blob/master/apps/system/test/unit/statusbar_test.js#L392

As I said, you're still really testing your mock in these tests. In your mock, you need to store that `find` was called, and eventually with which arguments, and that's what you need to test in your tests.

And of course you need to test that what you asked your mock to return was correctly handled by your code, but that's what you're doing already, and that's good (but not enough).