Files
indexer/scripts/create_tests.rb
2020-05-06 11:03:05 -07:00

127 lines
2.4 KiB
Ruby

# (c) 2020, Ava Labs, Inc. All rights reserved.
# See the file LICENSE for licensing terms.
require 'net/http'
require 'json'
Username = "ASDFasdf1245asdfASDFasdf234"
Password = "ASDFasdf1245asdfASDFasdf234"
keystoreURI = "http://127.0.0.1:9650/ext/keystore"
XChainURI = "http://127.0.0.1:9650/ext/bc/X"
pChainURI = "http://127.0.0.1:9650/ext/bc/P"
def send(uri, data)
uri = URI(uri)
req = Net::HTTP::Post.new(uri.request_uri, {'Content-Type': 'application/json'})
req.body = data.to_json
http = Net::HTTP.new(uri.host, uri.port)
resp = http.request(req).body
p resp
resp
end
def newXChainAddr()
resp = JSON.parse(send(XChainURI, {
"jsonrpc": "2.0",
"id": nextID(),
"method": "avm.createAddress",
"params":{
"username": Username,
"password": Password
}
}))
addr2 = resp["result"]["address"]
end
@id = 0
def nextID()
@id = @id + 1
@id
end
send(keystoreURI, {
"jsonrpc": "2.0",
"id": nextID(),
"method": "keystore.createUser",
"params": {
"username": Username,
"password": Password
}
})
send(XChainURI, {
"jsonrpc": "2.0",
"id": nextID(),
"method": "avm.importKey",
"params":{
"username": Username,
"password": Password,
"privateKey": "ewoqjP7PxY4yr3iLTpLisriqt94hdyDFNgchSxGGztUrTXtNN"
}
})
addr1 = newXChainAddr()
addr2 = newXChainAddr()
addr3 = newXChainAddr()
send(XChainURI, {
"jsonrpc": "2.0",
"id": nextID(),
"method": "avm.send",
"params":{
"username": Username,
"password": Password,
"assetID": "AVA",
"amount": 100_000,
"to": addr1
}
})
sleep 2
send(XChainURI, {
"jsonrpc": "2.0",
"id": 3,
"method": "avm.send",
"params":{
"username": Username,
"password": Password,
"assetID": "AVA",
"amount": 10_000,
"to": addr2
}
})
sleep 2
send(XChainURI, {
"jsonrpc": "2.0",
"id": nextID(),
"method": "avm.send",
"params":{
"username": Username,
"password": Password,
"assetID": "AVA",
"amount": 10_001,
"to": addr2
}
})
sleep 2
send(XChainURI, {
"jsonrpc": "2.0",
"id": nextID(),
"method": "avm.send",
"params":{
"username": Username,
"password": Password,
"assetID": "AVA",
"amount": 20_002,
"to": addr3
}
})