Commit 771988b6 authored by Roberto Bayardo's avatar Roberto Bayardo Committed by GitHub

update txmgr to support sending blob txs (#8760)

parent 28c35962
...@@ -19,13 +19,14 @@ type priceBumpTest struct { ...@@ -19,13 +19,14 @@ type priceBumpTest struct {
newBasefee int64 newBasefee int64
expectedTip int64 expectedTip int64
expectedFC int64 expectedFC int64
isBlobTx bool
} }
func (tc *priceBumpTest) run(t *testing.T) { func (tc *priceBumpTest) run(t *testing.T) {
prevFC := calcGasFeeCap(big.NewInt(tc.prevBasefee), big.NewInt(tc.prevGasTip)) prevFC := calcGasFeeCap(big.NewInt(tc.prevBasefee), big.NewInt(tc.prevGasTip))
lgr := testlog.Logger(t, log.LvlCrit) lgr := testlog.Logger(t, log.LvlCrit)
tip, fc := updateFees(big.NewInt(tc.prevGasTip), prevFC, big.NewInt(tc.newGasTip), big.NewInt(tc.newBasefee), lgr) tip, fc := updateFees(big.NewInt(tc.prevGasTip), prevFC, big.NewInt(tc.newGasTip), big.NewInt(tc.newBasefee), tc.isBlobTx, lgr)
require.Equal(t, tc.expectedTip, tip.Int64(), "tip must be as expected") require.Equal(t, tc.expectedTip, tip.Int64(), "tip must be as expected")
require.Equal(t, tc.expectedFC, fc.Int64(), "fee cap must be as expected") require.Equal(t, tc.expectedFC, fc.Int64(), "fee cap must be as expected")
...@@ -39,51 +40,111 @@ func TestUpdateFees(t *testing.T) { ...@@ -39,51 +40,111 @@ func TestUpdateFees(t *testing.T) {
newGasTip: 90, newBasefee: 900, newGasTip: 90, newBasefee: 900,
expectedTip: 110, expectedFC: 2310, expectedTip: 110, expectedFC: 2310,
}, },
{
prevGasTip: 100, prevBasefee: 1000,
newGasTip: 90, newBasefee: 900,
expectedTip: 200, expectedFC: 4200,
isBlobTx: true,
},
{ {
prevGasTip: 100, prevBasefee: 1000, prevGasTip: 100, prevBasefee: 1000,
newGasTip: 101, newBasefee: 1000, newGasTip: 101, newBasefee: 1000,
expectedTip: 110, expectedFC: 2310, expectedTip: 110, expectedFC: 2310,
}, },
{
prevGasTip: 100, prevBasefee: 1000,
newGasTip: 101, newBasefee: 1000,
expectedTip: 200, expectedFC: 4200,
isBlobTx: true,
},
{ {
prevGasTip: 100, prevBasefee: 1000, prevGasTip: 100, prevBasefee: 1000,
newGasTip: 100, newBasefee: 1001, newGasTip: 100, newBasefee: 1001,
expectedTip: 110, expectedFC: 2310, expectedTip: 110, expectedFC: 2310,
}, },
{
prevGasTip: 100, prevBasefee: 1000,
newGasTip: 100, newBasefee: 1001,
expectedTip: 200, expectedFC: 4200,
isBlobTx: true,
},
{ {
prevGasTip: 100, prevBasefee: 1000, prevGasTip: 100, prevBasefee: 1000,
newGasTip: 101, newBasefee: 900, newGasTip: 101, newBasefee: 900,
expectedTip: 110, expectedFC: 2310, expectedTip: 110, expectedFC: 2310,
}, },
{
prevGasTip: 100, prevBasefee: 1000,
newGasTip: 101, newBasefee: 900,
expectedTip: 200, expectedFC: 4200,
isBlobTx: true,
},
{ {
prevGasTip: 100, prevBasefee: 1000, prevGasTip: 100, prevBasefee: 1000,
newGasTip: 90, newBasefee: 1010, newGasTip: 90, newBasefee: 1010,
expectedTip: 110, expectedFC: 2310, expectedTip: 110, expectedFC: 2310,
}, },
{
prevGasTip: 100, prevBasefee: 1000,
newGasTip: 90, newBasefee: 1010,
expectedTip: 200, expectedFC: 4200,
isBlobTx: true,
},
{ {
prevGasTip: 100, prevBasefee: 1000, prevGasTip: 100, prevBasefee: 1000,
newGasTip: 101, newBasefee: 2000, newGasTip: 101, newBasefee: 2000,
expectedTip: 110, expectedFC: 4110, expectedTip: 110, expectedFC: 4110,
}, },
{
prevGasTip: 100, prevBasefee: 1000,
newGasTip: 101, newBasefee: 3000,
expectedTip: 200, expectedFC: 6200,
isBlobTx: true,
},
{ {
prevGasTip: 100, prevBasefee: 1000, prevGasTip: 100, prevBasefee: 1000,
newGasTip: 120, newBasefee: 900, newGasTip: 120, newBasefee: 900,
expectedTip: 120, expectedFC: 2310, expectedTip: 120, expectedFC: 2310,
}, },
{
prevGasTip: 100, prevBasefee: 1000,
newGasTip: 220, newBasefee: 900,
expectedTip: 220, expectedFC: 4200,
isBlobTx: true,
},
{ {
prevGasTip: 100, prevBasefee: 1000, prevGasTip: 100, prevBasefee: 1000,
newGasTip: 120, newBasefee: 1100, newGasTip: 120, newBasefee: 1100,
expectedTip: 120, expectedFC: 2320, expectedTip: 120, expectedFC: 2320,
}, },
{
prevGasTip: 100, prevBasefee: 1000,
newGasTip: 220, newBasefee: 2000,
expectedTip: 220, expectedFC: 4220,
isBlobTx: true,
},
{ {
prevGasTip: 100, prevBasefee: 1000, prevGasTip: 100, prevBasefee: 1000,
newGasTip: 120, newBasefee: 1140, newGasTip: 120, newBasefee: 1140,
expectedTip: 120, expectedFC: 2400, expectedTip: 120, expectedFC: 2400,
}, },
{
prevGasTip: 100, prevBasefee: 1000,
newGasTip: 220, newBasefee: 2040,
expectedTip: 220, expectedFC: 4300,
isBlobTx: true,
},
{ {
prevGasTip: 100, prevBasefee: 1000, prevGasTip: 100, prevBasefee: 1000,
newGasTip: 120, newBasefee: 1200, newGasTip: 120, newBasefee: 1200,
expectedTip: 120, expectedFC: 2520, expectedTip: 120, expectedFC: 2520,
}, },
{
prevGasTip: 100, prevBasefee: 1000,
newGasTip: 220, newBasefee: 2100,
expectedTip: 220, expectedFC: 4420,
isBlobTx: true,
},
} }
for i, test := range tests { for i, test := range tests {
i := i i := i
......
...@@ -193,7 +193,7 @@ func TestQueue_Send(t *testing.T) { ...@@ -193,7 +193,7 @@ func TestQueue_Send(t *testing.T) {
return core.ErrNonceTooLow return core.ErrNonceTooLow
} }
txHash := tx.Hash() txHash := tx.Hash()
backend.mine(&txHash, tx.GasFeeCap()) backend.mine(&txHash, tx.GasFeeCap(), nil)
return nil return nil
} }
backend.setTxSender(sendTx) backend.setTxSender(sendTx)
......
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment