v8/test/inspector/debugger/set-variable-value-expected.txt
Benedikt Meurer b1f5eeabe5 Reland "[inspector] Report [[Prototype]] as internal property."
This is a reland of 2b94e5677f

Original change's description:
> [inspector] Report [[Prototype]] as internal property.
>
> Previously the inspector was trying to add a special `__proto__`
> property to every JSObject, which looked and behaved like a real
> data property on the object. But this is confusing to developers
> since `__proto__` is not a real data property, but usually an
> accessor property on the `Object.prototype`.
>
> Additionally all other internal properties are reported using the
> [[Name]] notation, with the [[Prototype]] having been the strange
> outlier.
>
> Drive-by-cleanup: Use an ArrayList to collect the name/value pairs
> inside Runtime::GetInternalProperties(), which makes this function
> more readable and easier to add things.
>
> Bug: chromuium:1162229
> Fixed: chromium:1197019
> Screenshot: https://imgur.com/a/b7TZ32s.png
> Change-Id: Ic4c1e35e2e65f90619fcc12bf3a72806cadb0794
> Doc: http://doc/1Xetnc9s6r0yy4LnPbqeCwsnsOtBlvJsV4OCdXMZ1wCM
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2814565
> Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
> Reviewed-by: Yang Guo <yangguo@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#73881}

Bug: chromuium:1162229, chromium:1197019
Screenshot: https://imgur.com/a/b7TZ32s.png
Doc: http://doc/1Xetnc9s6r0yy4LnPbqeCwsnsOtBlvJsV4OCdXMZ1wCM
Change-Id: Ie1e2276b385b18a5f865fdae583d1ce0101157c0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2820970
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#73899}
2021-04-12 08:44:13 +00:00

255 lines
5.5 KiB
Plaintext

Tests that exercise Debugger.setVariableValue
Running test: testSetVariableValueMain
{
id : <messageId>
result : {
result : {
description : 5
type : number
value : 5
}
}
}
{
id : <messageId>
result : {
result : {
description : 10
type : number
value : 10
}
}
}
{
id : <messageId>
result : {
result : {
description : NaN
type : number
unserializableValue : NaN
}
}
}
{
id : <messageId>
result : {
result : {
type : boolean
value : true
}
}
}
{
id : <messageId>
result : {
result : {
className : Object
description : Object
objectId : <objectId>
type : object
}
}
}
{
id : <messageId>
result : {
internalProperties : [
[0] : {
name : [[Prototype]]
value : {
className : Object
description : Object
objectId : <objectId>
type : object
}
}
]
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : a
value : {
description : 3
type : number
value : 3
}
writable : true
}
]
}
}
{
id : <messageId>
result : {
result : {
className : Array
description : Array(3)
objectId : <objectId>
subtype : array
type : object
}
}
}
{
id : <messageId>
result : {
internalProperties : [
[0] : {
name : [[Prototype]]
value : {
className : Array
description : Array(0)
objectId : <objectId>
subtype : array
type : object
}
}
]
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : 0
value : {
type : string
value : 1
}
writable : true
}
[1] : {
configurable : true
enumerable : true
isOwn : true
name : 1
value : {
type : string
value : 2
}
writable : true
}
[2] : {
configurable : true
enumerable : true
isOwn : true
name : 2
value : {
type : string
value : 3
}
writable : true
}
[3] : {
configurable : false
enumerable : false
isOwn : true
name : length
value : {
description : 3
type : number
value : 3
}
writable : true
}
]
}
}
{
id : <messageId>
result : {
result : {
className : Object
description : Object
objectId : <objectId>
type : object
}
}
}
{
id : <messageId>
result : {
internalProperties : [
[0] : {
name : [[Prototype]]
value : {
className : Object
description : Object
objectId : <objectId>
type : object
}
}
]
result : [
[0] : {
configurable : true
enumerable : true
isOwn : true
name : b
value : {
description : 4
type : number
value : 4
}
writable : true
}
]
}
}
Running test: testInvalidFrame
setVariableValue with invalid callFrameId
{
error : {
code : -32000
message : Invalid call frame id
}
id : <messageId>
}
setVariableValue with invalid scopeNumber
{
error : {
code : -32602
data : Failed to deserialize params.scopeNumber - BINDINGS: int32 value expected at <some position>
message : Invalid parameters
}
id : <messageId>
}
setVariableValue with invalid scopeNumber
{
error : {
code : -32000
message : Could not find scope with given number
}
id : <messageId>
}
setVariableValue with invalid variableName
{
error : {
code : -32603
message : Internal error
}
id : <messageId>
}
Running test: testNewValueErrors
setVariableValue with invalid unserializableValue
{
error : {
code : -32000
message : Couldn't parse value object in call argument
}
id : <messageId>
}
setVariableValue with invalid objectId
{
error : {
code : -32602
data : Failed to deserialize params.newValue.objectId - BINDINGS: string value expected at <some position>
message : Invalid parameters
}
id : <messageId>
}