v8/test/inspector/runtime/internal-properties-entries-expected.txt
kozyatinskiy 6e17719e79 [inspector] introduced v8::debug::EntriesPreview for inspector
- entries preview available even if debugger agent is disabled,
- less deprecated mirrors usage in debugger-script.js
- no usage of debugger context - zero probability of leaking it.
- better test coverage.

BUG=v8:5510
R=yangguo@chromium.org,jgruber@chromium.org,alph@chromium.org,luoe@chromium.org

Review-Url: https://codereview.chromium.org/2672213002
Cr-Commit-Position: refs/heads/master@{#42978}
2017-02-07 07:46:21 +00:00

692 lines
16 KiB
Plaintext

Checks internal [[Entries]] in Runtime.getProperties output
Running test: maps
expression: new Map([[1,2],[3,4]])
[
[0] : {
key : 1
value : 2
}
[1] : {
key : 3
value : 4
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : {1 => 2}
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : true
enumerable : true
isOwn : true
name : 1
value : {
className : Object
description : {3 => 4}
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[2] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 2
type : number
value : 2
}
writable : true
}
]
}
}
expression: new Map()
[
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 0
type : number
value : 0
}
writable : true
}
]
}
}
Running test: mapIterators
expression: new Map([[1,2],[3,4]]).entries()
[
[0] : {
key : 1
value : 2
}
[1] : {
key : 3
value : 4
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : {1 => 2}
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : true
enumerable : true
isOwn : true
name : 1
value : {
className : Object
description : {3 => 4}
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[2] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 2
type : number
value : 2
}
writable : true
}
]
}
}
expression: it = new Map([[1,2],[3,4]]).entries(); it.next(); it
[
[0] : {
key : 3
value : 4
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : {3 => 4}
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 1
type : number
value : 1
}
writable : true
}
]
}
}
expression: it = new Map([[1,2],[3,4]]).keys(); it.next(); it
[
[0] : {
value : 3
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : 3
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 1
type : number
value : 1
}
writable : true
}
]
}
}
expression: it = new Map([[1,2],[3,4]]).values(); it.next(); it
[
[0] : {
value : 4
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : 4
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 1
type : number
value : 1
}
writable : true
}
]
}
}
expression: it = new Map([[1,2],[3,4]]).entries(); it.next(); it.next(); it
[
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 0
type : number
value : 0
}
writable : true
}
]
}
}
Running test: sets
expression: new Set([1,2])
[
[0] : {
value : 1
}
[1] : {
value : 2
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : 1
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : true
enumerable : true
isOwn : true
name : 1
value : {
className : Object
description : 2
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[2] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 2
type : number
value : 2
}
writable : true
}
]
}
}
expression: new Set()
[
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 0
type : number
value : 0
}
writable : true
}
]
}
}
Running test: setIterators
expression: new Set([1,2]).values()
[
[0] : {
value : 1
}
[1] : {
value : 2
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : 1
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : true
enumerable : true
isOwn : true
name : 1
value : {
className : Object
description : 2
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[2] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 2
type : number
value : 2
}
writable : true
}
]
}
}
expression: it = new Set([1,2]).values(); it.next(); it
[
[0] : {
value : 2
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : 2
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 1
type : number
value : 1
}
writable : true
}
]
}
}
expression: it = new Set([1,2]).keys(); it.next(); it
[
[0] : {
value : 2
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : 2
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 1
type : number
value : 1
}
writable : true
}
]
}
}
expression: it = new Set([1,2]).entries(); it.next(); it
[
[0] : {
value : 2
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : 2
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 1
type : number
value : 1
}
writable : true
}
]
}
}
expression: it = new Set([1,2]).values(); it.next(); it.next(); it
[
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 0
type : number
value : 0
}
writable : true
}
]
}
}
Running test: weakMaps
expression: new WeakMap()
[
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 0
type : number
value : 0
}
writable : true
}
]
}
}
expression: new WeakMap([[{ a: 2 }, 42]])
[
[0] : {
key : {
a : 2
}
value : 42
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : {Object => 42}
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 1
type : number
value : 1
}
writable : true
}
]
}
}
Running test: weakSets
expression: new WeakSet()
[
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 0
type : number
value : 0
}
writable : true
}
]
}
}
expression: new WeakSet([{a:2}])
[
[0] : {
value : {
a : 2
}
}
]
{
id : <messageId>
result : {
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
className : Object
description : Object
objectId : <objectId>
subtype : internal#entry
type : object
}
writable : true
}
[1] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 1
type : number
value : 1
}
writable : true
}
]
}
}