mirror of
https://github.com/arnaucube/hermez-node.git
synced 2026-02-07 11:26:44 +01:00
TxSel integrated with L2DB, Add L1CoordTx creation
- GetL2TxSelection & GetL1L2TxSelection integrated with dbs - Create L1CoordinatorTx of type CreateAccountDeposit when a L2 requires it (and the AccountCreationAuth exists)
This commit is contained in:
@@ -1,29 +1,58 @@
|
||||
package txselector
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/hermeznetwork/hermez-node/common"
|
||||
"github.com/hermeznetwork/hermez-node/db/l2db"
|
||||
"github.com/hermeznetwork/hermez-node/db/statedb"
|
||||
"github.com/hermeznetwork/hermez-node/test"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestGetL2TxSelection(t *testing.T) {
|
||||
func initTest(t *testing.T, testSet string) *TxSelector {
|
||||
pass := os.Getenv("POSTGRES_PASS")
|
||||
l2DB, err := l2db.NewL2DB(5432, "localhost", "hermez", pass, "l2", 10, 512, 24*time.Hour)
|
||||
require.Nil(t, err)
|
||||
|
||||
dir, err := ioutil.TempDir("", "tmpdb")
|
||||
require.Nil(t, err)
|
||||
sdb, err := statedb.NewStateDB(dir, false, 0)
|
||||
assert.Nil(t, err)
|
||||
testL2DB := &l2db.L2DB{}
|
||||
// initTestDB(testL2DB, sdb)
|
||||
require.Nil(t, err)
|
||||
|
||||
txselDir, err := ioutil.TempDir("", "tmpTxSelDB")
|
||||
require.Nil(t, err)
|
||||
txsel, err := NewTxSelector(txselDir, sdb, testL2DB, 3, 3, 3)
|
||||
txsel, err := NewTxSelector(txselDir, sdb, l2DB, 100, 100, 1000)
|
||||
require.Nil(t, err)
|
||||
|
||||
return txsel
|
||||
}
|
||||
func addL2Txs(t *testing.T, txsel *TxSelector, poolL2Txs []*common.PoolL2Tx) {
|
||||
for i := 0; i < len(poolL2Txs); i++ {
|
||||
err := txsel.l2db.AddTx(poolL2Txs[i])
|
||||
require.Nil(t, err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGetL2TxSelection(t *testing.T) {
|
||||
txsel := initTest(t, test.SetTest0)
|
||||
test.CleanL2DB(txsel.l2db.DB())
|
||||
|
||||
// generate test transactions
|
||||
l1Txs, _, poolL2Txs := test.GenerateTestTxsFromSet(t, test.SetTest0)
|
||||
|
||||
// add the first batch of transactions to the TxSelector
|
||||
addL2Txs(t, txsel, poolL2Txs[0])
|
||||
|
||||
_, err := txsel.GetL2TxSelection(0)
|
||||
assert.Nil(t, err)
|
||||
|
||||
_, _, _, err = txsel.GetL1L2TxSelection(0, l1Txs[0])
|
||||
assert.Nil(t, err)
|
||||
fmt.Println(txsel)
|
||||
|
||||
// txs, err := txsel.GetL2TxSelection(0)
|
||||
// assert.Nil(t, err)
|
||||
|
||||
Reference in New Issue
Block a user