Checks Runtime.getProperties method while debugger is paused.

Running test: testObject5
  __proto__ own object undefined
  foo own string cat
Internal properties
  [[PrimitiveValue]] number 5

Running test: testNotOwn
  __defineGetter__ inherited function undefined
  __defineSetter__ inherited function undefined
  __lookupGetter__ inherited function undefined
  __lookupSetter__ inherited function undefined
  __proto__ inherited no value, getter, setter
  a own number 2
  b own no value, getter, setter
  c inherited number 4
  constructor inherited function undefined
  d inherited no value, getter
  hasOwnProperty inherited function undefined
  isPrototypeOf inherited function undefined
  propertyIsEnumerable inherited function undefined
  toLocaleString inherited function undefined
  toString inherited function undefined
  valueOf inherited function undefined

Running test: testAccessorsOnly
  b own no value, getter, setter
  d own no value, setter

Running test: testArray
  0 own string red
  1 own string green
  2 own string blue
  __proto__ own object undefined
  length own number 3

Running test: testBound
  __proto__ own function undefined
  length own number 0
  name own string bound Number
Internal properties
  [[BoundArgs]] object undefined
  [[BoundThis]] object undefined
  [[TargetFunction]] function undefined

Running test: testObjectThrowsLength
  __proto__ own object undefined
  length own no value, getter

Running test: testTypedArrayWithoutLength
  __proto__ own object undefined

Running test: testArrayBuffer
[[Int8Array]]
  0 own number 1
  1 own number 1
  2 own number 1
  3 own number 1
  4 own number 1
  5 own number 1
  6 own number 1
  7 own number 1
  __proto__ own object undefined
[[Uint8Array]]
  0 own number 1
  1 own number 1
  2 own number 1
  3 own number 1
  4 own number 1
  5 own number 1
  6 own number 1
  7 own number 1
  __proto__ own object undefined
[[Int16Array]]
  0 own number 257
  1 own number 257
  2 own number 257
  3 own number 257
  __proto__ own object undefined
[[Int32Array]]
  0 own number 16843009
  1 own number 16843009
  __proto__ own object undefined

Running test: testArrayBufferWithBrokenUintCtor
  [[Int8Array]] own object undefined
  [[Uint8Array]] own object undefined
  __proto__ own object undefined
