Skip to content

Commit

Permalink
Added optional field for lookups (#1058)
Browse files Browse the repository at this point in the history
  • Loading branch information
silaslenihan authored Feb 10, 2025
1 parent ba7d77a commit cc142c0
Show file tree
Hide file tree
Showing 6 changed files with 226 additions and 461 deletions.
41 changes: 21 additions & 20 deletions integration-tests/relayinterface/lookups_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ func TestAccountContant(t *testing.T) {
IsSigner: true,
IsWritable: true,
}
result, err := constantConfig.Resolve(tests.Context(t), nil, nil, nil, testContractIDL)
result, err := constantConfig.Resolve(tests.Context(t), nil, nil, nil)
require.NoError(t, err)
require.Equal(t, expectedMeta, result)
})
Expand Down Expand Up @@ -76,7 +76,7 @@ func TestAccountLookups(t *testing.T) {
IsSigner: chainwriter.MetaBool{Value: true},
IsWritable: chainwriter.MetaBool{Value: true},
}
result, err := lookupConfig.Resolve(ctx, testArgs, nil, nil, testContractIDL)
result, err := lookupConfig.Resolve(ctx, testArgs, nil, nil)
require.NoError(t, err)
require.Equal(t, expectedMeta, result)
})
Expand Down Expand Up @@ -110,7 +110,7 @@ func TestAccountLookups(t *testing.T) {
IsSigner: chainwriter.MetaBool{Value: true},
IsWritable: chainwriter.MetaBool{Value: true},
}
result, err := lookupConfig.Resolve(ctx, testArgs, nil, nil, testContractIDL)
result, err := lookupConfig.Resolve(ctx, testArgs, nil, nil)
require.NoError(t, err)
for i, meta := range result {
require.Equal(t, expectedMeta[i], meta)
Expand All @@ -131,7 +131,7 @@ func TestAccountLookups(t *testing.T) {
IsSigner: chainwriter.MetaBool{Value: true},
IsWritable: chainwriter.MetaBool{Value: true},
}
_, err := lookupConfig.Resolve(ctx, testArgs, nil, nil, testContractIDL)
_, err := lookupConfig.Resolve(ctx, testArgs, nil, nil)
require.Error(t, err)
})

Expand Down Expand Up @@ -161,7 +161,7 @@ func TestAccountLookups(t *testing.T) {
},
}

result, err := lookupConfig.Resolve(ctx, args, nil, nil, testContractIDL)
result, err := lookupConfig.Resolve(ctx, args, nil, nil)
require.NoError(t, err)

for i, meta := range result {
Expand Down Expand Up @@ -199,7 +199,7 @@ func TestAccountLookups(t *testing.T) {
Bitmaps: []uint64{5, 3},
}

_, err := lookupConfig.Resolve(ctx, args, nil, nil, testContractIDL)
_, err := lookupConfig.Resolve(ctx, args, nil, nil)
require.Contains(t, err.Error(), "bitmap value is not a single value")
})

Expand All @@ -226,7 +226,7 @@ func TestAccountLookups(t *testing.T) {
},
}

_, err := lookupConfig.Resolve(ctx, args, nil, nil, testContractIDL)
_, err := lookupConfig.Resolve(ctx, args, nil, nil)
require.Contains(t, err.Error(), "error reading bitmap from location")
})

Expand All @@ -253,7 +253,7 @@ func TestAccountLookups(t *testing.T) {
},
}

_, err := lookupConfig.Resolve(ctx, args, nil, nil, testContractIDL)
_, err := lookupConfig.Resolve(ctx, args, nil, nil)
require.Contains(t, err.Error(), "invalid value format at path")
})
}
Expand Down Expand Up @@ -286,7 +286,7 @@ func TestPDALookups(t *testing.T) {
IsWritable: true,
}

result, err := pdaLookup.Resolve(ctx, nil, nil, nil, testContractIDL)
result, err := pdaLookup.Resolve(ctx, nil, nil, nil)
require.NoError(t, err)
require.Equal(t, expectedMeta, result)
})
Expand Down Expand Up @@ -321,7 +321,7 @@ func TestPDALookups(t *testing.T) {
"another_seed": seed2,
}

result, err := pdaLookup.Resolve(ctx, args, nil, nil, testContractIDL)
result, err := pdaLookup.Resolve(ctx, args, nil, nil)
require.NoError(t, err)
require.Equal(t, expectedMeta, result)
})
Expand All @@ -341,7 +341,7 @@ func TestPDALookups(t *testing.T) {
"test_seed": []byte("data"),
}

_, err := pdaLookup.Resolve(ctx, args, nil, nil, testContractIDL)
_, err := pdaLookup.Resolve(ctx, args, nil, nil)
require.Error(t, err)
require.Contains(t, err.Error(), "key not found")
})
Expand Down Expand Up @@ -377,7 +377,7 @@ func TestPDALookups(t *testing.T) {
"another_seed": seed2,
}

result, err := pdaLookup.Resolve(ctx, args, nil, nil, testContractIDL)
result, err := pdaLookup.Resolve(ctx, args, nil, nil)
require.NoError(t, err)
require.Equal(t, expectedMeta, result)
})
Expand Down Expand Up @@ -415,7 +415,7 @@ func TestPDALookups(t *testing.T) {
"array_seed": arraySeed,
}

result, err := pdaLookup.Resolve(ctx, args, nil, nil, testContractIDL)
result, err := pdaLookup.Resolve(ctx, args, nil, nil)
require.NoError(t, err)
require.Equal(t, expectedMeta, result)
})
Expand Down Expand Up @@ -455,7 +455,7 @@ func TestPDALookups(t *testing.T) {
"seed2": arraySeed2,
}

result, err := pdaLookup.Resolve(ctx, args, nil, nil, testContractIDL)
result, err := pdaLookup.Resolve(ctx, args, nil, nil)
require.NoError(t, err)
require.Equal(t, expectedMeta, result)
})
Expand Down Expand Up @@ -491,7 +491,7 @@ func TestLookupTables(t *testing.T) {
DerivedLookupTables: nil,
StaticLookupTables: []solana.PublicKey{table},
}
_, staticTableMap, resolveErr := cw.ResolveLookupTables(ctx, nil, lookupConfig, testContractIDL)
_, staticTableMap, resolveErr := cw.ResolveLookupTables(ctx, nil, lookupConfig)
require.NoError(t, resolveErr)
require.Equal(t, pubKeys, staticTableMap[table])
})
Expand All @@ -512,7 +512,7 @@ func TestLookupTables(t *testing.T) {
},
StaticLookupTables: nil,
}
derivedTableMap, _, resolveErr := cw.ResolveLookupTables(ctx, nil, lookupConfig, testContractIDL)
derivedTableMap, _, resolveErr := cw.ResolveLookupTables(ctx, nil, lookupConfig)
require.NoError(t, resolveErr)

addresses, ok := derivedTableMap["DerivedTable"][table.String()]
Expand Down Expand Up @@ -540,7 +540,7 @@ func TestLookupTables(t *testing.T) {
StaticLookupTables: nil,
}

_, _, err = cw.ResolveLookupTables(ctx, nil, lookupConfig, testContractIDL)
_, _, err = cw.ResolveLookupTables(ctx, nil, lookupConfig)
require.Error(t, err)
require.Contains(t, err.Error(), "error fetching account info for table") // Example error message
})
Expand All @@ -553,7 +553,7 @@ func TestLookupTables(t *testing.T) {
StaticLookupTables: []solana.PublicKey{invalidTable},
}

_, _, err = cw.ResolveLookupTables(ctx, nil, lookupConfig, testContractIDL)
_, _, err = cw.ResolveLookupTables(ctx, nil, lookupConfig)
require.Error(t, err)
require.Contains(t, err.Error(), "error fetching account info for table") // Example error message
})
Expand Down Expand Up @@ -581,7 +581,7 @@ func TestLookupTables(t *testing.T) {
},
}

derivedTableMap, _, err := cw.ResolveLookupTables(ctx, testArgs, lookupConfig, testContractIDL)
derivedTableMap, _, err := cw.ResolveLookupTables(ctx, testArgs, lookupConfig)
require.NoError(t, err)

addresses, ok := derivedTableMap["DerivedTable"][table.String()]
Expand Down Expand Up @@ -619,14 +619,15 @@ func TestLookupTables(t *testing.T) {
InternalField: chainwriter.InternalField{
TypeName: "LookupTableDataAccount",
Location: "LookupTable",
IDL: testContractIDL,
},
},
},
},
StaticLookupTables: nil,
}

derivedTableMap, _, err := cw.ResolveLookupTables(ctx, args, lookupConfig, testContractIDL)
derivedTableMap, _, err := cw.ResolveLookupTables(ctx, args, lookupConfig)
require.NoError(t, err)

addresses, ok := derivedTableMap["DerivedTable"][lookupTable.String()]
Expand Down
Loading

0 comments on commit cc142c0

Please sign in to comment.