A "mockable" window object.  You can use it in place of the real window object.  When you are running unit tests, you can call mockableWindow.useFake() and then run spies and put fake values for the properties