Checks Runtime.getProperties method

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: testClassWithPrivateFields
  __proto__ own object undefined
  baz own number 4
Private properties
  #bar number 3
  #foo number 2
  __proto__ own object undefined
  baz own number 4
Private properties
  #bar number 3
  #baz number 1
  #foo number 2
Internal properties
  [[Handler]] object undefined
  [[IsRevoked]] boolean false
  [[Target]] object undefined
Private properties
  #bar number 3
  #foo number 2

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: testDetachedArrayBuffer
[[Int8Array]]
  __proto__ own object undefined
[[Uint8Array]]
  __proto__ own object undefined
[[Int16Array]]
  __proto__ own object undefined
[[Int32Array]]
  __proto__ own object undefined

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