diff options
author | Everett Hildenbrandt <hildenb2@illinois.edu> | 2018-05-30 00:45:50 +0800 |
---|---|---|
committer | Everett Hildenbrandt <hildenb2@illinois.edu> | 2018-05-31 22:37:30 +0800 |
commit | e5c12114d6417b44137171588043679bfd6550b0 (patch) | |
tree | 567ab561facf91b6fc95ee810410df8d73f9263b /JSONSchema/vm-schema.json | |
parent | 61d5603b69909282188f6e11616ea7d82f6569e0 (diff) | |
download | tangerine-tests-e5c12114d6417b44137171588043679bfd6550b0.tar tangerine-tests-e5c12114d6417b44137171588043679bfd6550b0.tar.gz tangerine-tests-e5c12114d6417b44137171588043679bfd6550b0.tar.bz2 tangerine-tests-e5c12114d6417b44137171588043679bfd6550b0.tar.lz tangerine-tests-e5c12114d6417b44137171588043679bfd6550b0.tar.xz tangerine-tests-e5c12114d6417b44137171588043679bfd6550b0.tar.zst tangerine-tests-e5c12114d6417b44137171588043679bfd6550b0.zip |
test.py, JSONSchema/{vm,vm-filler}-schema: add schemas for vm tests
Diffstat (limited to 'JSONSchema/vm-schema.json')
-rw-r--r-- | JSONSchema/vm-schema.json | 138 |
1 files changed, 138 insertions, 0 deletions
diff --git a/JSONSchema/vm-schema.json b/JSONSchema/vm-schema.json new file mode 100644 index 000000000..7a81d64c0 --- /dev/null +++ b/JSONSchema/vm-schema.json @@ -0,0 +1,138 @@ +{ + "definitions": { + "PreStateAccount": { + "additionalproperties": true, + "properties": { + "balance": { + "$ref": "#/definitions/ConfusedHexType" + }, + "code": { + "$ref": "#/definitions/HexMaybePrefixOrEmpty" + }, + "nonce": { + "$ref": "#/definitions/ConfusedHexType" + }, + "storage": { + "additionalProperties": false, + "patternProperties": { + "^0x[0-9a-f]+": { + "$ref": "#/definitions/HexData", + "description": "storage key with 0x. data is HexData" + } + }, + "type": "object" + } + }, + "required": [ + "balance", + "code", + "nonce" + ], + "type": "object" + } + }, + "patternProperties": { + "^.*$": { + "properties": { + "env": { + "additionalproperties": false, + "properties": { + "currentCoinbase": { + "$ref": "#/definitions/HexData" + }, + "currentDifficulty": { + "$ref": "#/definitions/ConfusedHexType" + }, + "currentGasLimit": { + "$ref": "#/definitions/ConfusedHexType" + }, + "currentNumber": { + "$ref": "#/definitions/ConfusedHexType" + }, + "currentTimestamp": { + "$ref": "#/definitions/ConfusedHexType" + } + }, + "required": [ + "currentCoinbase", + "currentDifficulty", + "currentGasLimit", + "currentNumber", + "currentTimestamp" + ], + "type": "object" + }, + "exec": { + "additionalproperties": false, + "properties": { + "address": { + "$ref": "#/definitions/AddressMaybePrefixOrEmpty" + }, + "caller": { + "$ref": "#/definitions/AddressMaybePrefixOrEmpty" + }, + "code": { + "$ref": "#/definitions/HexMaybePrefixOrEmpty" + }, + "data": { + "$ref": "#/definitions/HexDataOrEmpty" + }, + "gas": { + "$ref": "#/definitions/IntegerOrEmptyOrConfusedHex" + }, + "gasPrice": { + "$ref": "#/definitions/IntegerOrEmptyOrConfusedHex" + }, + "origin": { + "$ref": "#/definitions/AddressMaybePrefixOrEmpty" + }, + "value": { + "$ref": "#/definitions/IntegerOrEmptyOrConfusedHex" + } + }, + "required": [ + "address", + "caller", + "code", + "data", + "gas", + "gasPrice", + "origin", + "value" + ] + }, + "gas": { + "$ref": "#/definitions/IntegerOrEmptyOrConfusedHex" + }, + "logs": { + "$ref": "#/definitions/HexDataOrEmpty" + }, + "out": { + "$ref": "#/definitions/HexDataOrEmpty" + }, + "post": { + "additionalProperties": false, + "patternProperties": { + "^0x[0-9a-f]*": { + "$ref": "#/definitions/PreStateAccount", + "description": "poststate account address with 0x prefix" + } + }, + "type": "object" + }, + "pre": { + "additionalProperties": false, + "patternProperties": { + "^0x[0-9a-f]*": { + "$ref": "#/definitions/PreStateAccount", + "description": "prestate account address with 0x prefix" + } + }, + "type": "object" + } + }, + "type": "object" + } + }, + "type": "object" +}
\ No newline at end of file |