|  | <!DOCTYPE html> | 
|  | <meta charset='utf-8'> | 
|  | <title>Vibration API: vibrate(invalid)</title> | 
|  | <link rel='author' title='Intel' href='http://www.intel.com'> | 
|  | <link rel='help' href='https://w3c.github.io/vibration/#vibration-interface'> | 
|  | <script src='/resources/testharness.js'></script> | 
|  | <script src='/resources/testharnessreport.js'></script> | 
|  | <div id='log'></div> | 
|  | <script> | 
|  | test(function() { | 
|  | assert_throws(new TypeError(), function() { | 
|  | navigator.vibrate(); | 
|  | }, 'Argument is required, so was expecting a TypeError.'); | 
|  | }, 'Missing pattern argument'); | 
|  |  | 
|  | test(function() { | 
|  | navigator.vibrate(undefined); | 
|  | }, 'pattern of undefined resolves to []'); | 
|  |  | 
|  | test(function() { | 
|  | navigator.vibrate(null); | 
|  | }, 'pattern of null resolves to []'); | 
|  |  | 
|  | test(function() { | 
|  | navigator.vibrate('one'); | 
|  | }, 'pattern of empty string resolves to [""]'); | 
|  |  | 
|  | test(function() { | 
|  | navigator.vibrate('one'); | 
|  | }, 'pattern of string resolves to ["one"]'); | 
|  |  | 
|  | test(function() { | 
|  | navigator.vibrate(new String('one')); | 
|  | }, 'pattern of String instance resolves to ["one"]'); | 
|  |  | 
|  | test(function() { | 
|  | navigator.vibrate(NaN); | 
|  | }, 'pattern of NaN resolves to [NaN]'); | 
|  |  | 
|  | test(function() { | 
|  | navigator.vibrate({}); | 
|  | }, 'pattern of {} resolves to [{}]'); | 
|  | </script> |