sealevel: run Pyth Oracle program

This commit is contained in:
Richard Patel 2022-09-05 10:27:58 +02:00
parent 0a3c7853fd
commit 5d11c3c465
5 changed files with 41 additions and 3 deletions

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d535666a4bbaf7a45f8675762184e917d3568f9a12c7796b6ad2ab9fce00ec00
size 81760

View File

@ -0,0 +1,33 @@
{
"Name": "Pyth_UpdatePrice",
"Program": "sealevel/FsJ3A3u2vn5cTVofAjvy6y5kwABJAqYWpe4975bi2epH.so",
"Params": {
"Accounts": [
{
"IsDuplicate": false,
"DuplicateIndex": 255,
"IsSigner": true,
"IsWritable": true,
"IsExecutable": false,
"Key": "JTmFx5zX9mM94itfk2nQcJnQQDPjcv4UPD7SYj6xDCV",
"Owner": "11111111111111111111111111111111",
"Lamports": 7376362656,
"RentEpoch": 345
},
{
"IsDuplicate": false,
"DuplicateIndex": 255,
"IsSigner": false,
"IsWritable": true,
"IsExecutable": false,
"Key": "Ax9ujW5B9oqcv59N8m6f1BpTBq2rGeGaBcpKjC5UYsXU",
"Owner": "FsJ3A3u2vn5cTVofAjvy6y5kwABJAqYWpe4975bi2epH",
"Lamports": 23942400,
"Data": "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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
"RentEpoch": 345
}
],
"Data": "AgAAAA0AAAABAAAAAAAAAEC2o28AAAAAgE8SAAAAAAAwceUIAAAAAA==",
"ProgramID": "FsJ3A3u2vn5cTVofAjvy6y5kwABJAqYWpe4975bi2epH"
}
}

View File

@ -13,7 +13,6 @@
"Owner": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
"Lamports": 10000000,
"Data": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Padding": 0,
"RentEpoch": 0
},
{
@ -26,7 +25,6 @@
"Owner": "Sysvar1111111111111111111111111111111111111",
"Lamports": 10092,
"Data": "mA0AAAAAAAAAAAAAAAAAQGQ=",
"Padding": 0,
"RentEpoch": 0
}
],

View File

@ -65,6 +65,9 @@ func (l *Loader) registerFunc(target uint64) (uint32, error) {
func (l *Loader) applyDynamicRelocs() error {
iter := l.relocsIter
if iter == nil {
return nil
}
for iter.Next() && iter.Err() == nil {
reloc := iter.Item()
if err := l.applyReloc(&reloc); err != nil {

View File

@ -135,7 +135,8 @@ func TestExecute(t *testing.T) {
})
require.NoError(t, err)
for _, _case := range cases {
for i := range cases {
_case := cases[i]
t.Run(_case.Name, func(t *testing.T) {
t.Parallel()
_case.run(t)