I think this shouldn't pass:

```js
    expect(() => {
      expect(() => {
        throw new Error('haha') // no warning
      }).toWarnDev(
        'nope',
      );
    }).toThrow('haha');
```

but it does.
expect(() => {
        expect(() => {
          console.error('Hi %s');
        }).toWarnDev('Hi', {withoutStack: true});
      }).toThrow('Received 0 arguments for a message with 1 placeholders');
    });
    it('fails if stack is passed twice', () => {
      expect(() => {
        expect(() => {
          console.error('Hi %s%s', '\n    in div', '\n    in div');
        }).toWarnDev('Hi');
      }).toThrow('Received more than one component stack for a warning');
    });
    it('fails if multiple strings are passed without an array wrapper', () => {
      expect(() => {
        expect(() => {
          console.error('Hi \n    in div');
        }).toWarnDev('Hi', 'Bye');
      }).toThrow(
        'toWarnDev() second argument, when present, should be an object'
      );
      expect(() => {
        expect(() => {
          console.error('Hi \n    in div');
          console.error('Bye \n    in div');
        }).toWarnDev('Hi', 'Bye');
      }).toThrow(
        'toWarnDev() second argument, when present, should be an object'
      );
      expect(() => {