This test breaks in a release build because later assertions require that `viewModel.update()` is actually called, and `toThrowDeveloperError` becomes a no-op.

I think `expect().not.toThrow()` is never correct.  Expressing an expectation that some code should not throw an exception is easy, just run the code.