Skip to content

Commit

Permalink
Add indexer unit tests for loading watched addresses
Browse files Browse the repository at this point in the history
  • Loading branch information
prathamesh0 committed Apr 1, 2022
1 parent e752646 commit 7103123
Show file tree
Hide file tree
Showing 3 changed files with 132 additions and 24 deletions.
52 changes: 44 additions & 8 deletions statediff/indexer/database/file/indexer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -729,6 +729,18 @@ func TestFileWatchAddressMethods(t *testing.T) {
}
pgStr := "SELECT * FROM eth_meta.watched_addresses"

t.Run("Load watched addresses (empty table)", func(t *testing.T) {
expectedData := []common.Address{}

rows, err := ind.LoadWatchedAddresses()
require.NoError(t, err)

expectTrue(t, len(rows) == len(expectedData))
for idx, row := range rows {
test_helpers.ExpectEqual(t, row, expectedData[idx])
}
})

t.Run("Insert watched addresses", func(t *testing.T) {
args := []sdtypes.WatchAddressArg{
{
Expand All @@ -755,7 +767,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
},
}

ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
require.NoError(t, err)
dumpWatchedAddressesFileData(t)

rows := []res{}
Expand Down Expand Up @@ -802,7 +815,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
},
}

ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
require.NoError(t, err)
dumpWatchedAddressesFileData(t)

rows := []res{}
Expand Down Expand Up @@ -837,7 +851,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
},
}

ind.RemoveWatchedAddresses(args)
err = ind.RemoveWatchedAddresses(args)
require.NoError(t, err)
dumpWatchedAddressesFileData(t)

rows := []res{}
Expand Down Expand Up @@ -865,7 +880,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
}
expectedData := []res{}

ind.RemoveWatchedAddresses(args)
err = ind.RemoveWatchedAddresses(args)
require.NoError(t, err)
dumpWatchedAddressesFileData(t)

rows := []res{}
Expand Down Expand Up @@ -916,7 +932,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
},
}

ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
require.NoError(t, err)
dumpWatchedAddressesFileData(t)

rows := []res{}
Expand Down Expand Up @@ -967,7 +984,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
},
}

ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
require.NoError(t, err)
dumpWatchedAddressesFileData(t)

rows := []res{}
Expand All @@ -982,10 +1000,27 @@ func TestFileWatchAddressMethods(t *testing.T) {
}
})

t.Run("Load watched addresses", func(t *testing.T) {
expectedData := []common.Address{
common.HexToAddress(contract4Address),
common.HexToAddress(contract2Address),
common.HexToAddress(contract3Address),
}

rows, err := ind.LoadWatchedAddresses()
require.NoError(t, err)

expectTrue(t, len(rows) == len(expectedData))
for idx, row := range rows {
test_helpers.ExpectEqual(t, row, expectedData[idx])
}
})

t.Run("Clear watched addresses", func(t *testing.T) {
expectedData := []res{}

ind.ClearWatchedAddresses()
err = ind.ClearWatchedAddresses()
require.NoError(t, err)
dumpWatchedAddressesFileData(t)

rows := []res{}
Expand All @@ -1003,7 +1038,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
t.Run("Clear watched addresses (empty table)", func(t *testing.T) {
expectedData := []res{}

ind.ClearWatchedAddresses()
err = ind.ClearWatchedAddresses()
require.NoError(t, err)
dumpWatchedAddressesFileData(t)

rows := []res{}
Expand Down
52 changes: 44 additions & 8 deletions statediff/indexer/database/sql/pgx_indexer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -577,6 +577,18 @@ func TestPGXWatchAddressMethods(t *testing.T) {
}
pgStr := "SELECT * FROM eth_meta.watched_addresses"

t.Run("Load watched addresses (empty table)", func(t *testing.T) {
expectedData := []common.Address{}

rows, err := ind.LoadWatchedAddresses()
require.NoError(t, err)

expectTrue(t, len(rows) == len(expectedData))
for idx, row := range rows {
test_helpers.ExpectEqual(t, row, expectedData[idx])
}
})

t.Run("Insert watched addresses", func(t *testing.T) {
args := []sdtypes.WatchAddressArg{
{
Expand All @@ -603,7 +615,8 @@ func TestPGXWatchAddressMethods(t *testing.T) {
},
}

ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand Down Expand Up @@ -649,7 +662,8 @@ func TestPGXWatchAddressMethods(t *testing.T) {
},
}

ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand Down Expand Up @@ -683,7 +697,8 @@ func TestPGXWatchAddressMethods(t *testing.T) {
},
}

ind.RemoveWatchedAddresses(args)
err = ind.RemoveWatchedAddresses(args)
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand All @@ -710,7 +725,8 @@ func TestPGXWatchAddressMethods(t *testing.T) {
}
expectedData := []res{}

ind.RemoveWatchedAddresses(args)
err = ind.RemoveWatchedAddresses(args)
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand Down Expand Up @@ -760,7 +776,8 @@ func TestPGXWatchAddressMethods(t *testing.T) {
},
}

ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand Down Expand Up @@ -810,7 +827,8 @@ func TestPGXWatchAddressMethods(t *testing.T) {
},
}

ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand All @@ -824,10 +842,27 @@ func TestPGXWatchAddressMethods(t *testing.T) {
}
})

t.Run("Load watched addresses", func(t *testing.T) {
expectedData := []common.Address{
common.HexToAddress(contract4Address),
common.HexToAddress(contract2Address),
common.HexToAddress(contract3Address),
}

rows, err := ind.LoadWatchedAddresses()
require.NoError(t, err)

expectTrue(t, len(rows) == len(expectedData))
for idx, row := range rows {
test_helpers.ExpectEqual(t, row, expectedData[idx])
}
})

t.Run("Clear watched addresses", func(t *testing.T) {
expectedData := []res{}

ind.ClearWatchedAddresses()
err = ind.ClearWatchedAddresses()
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand All @@ -844,7 +879,8 @@ func TestPGXWatchAddressMethods(t *testing.T) {
t.Run("Clear watched addresses (empty table)", func(t *testing.T) {
expectedData := []res{}

ind.ClearWatchedAddresses()
err = ind.ClearWatchedAddresses()
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand Down
52 changes: 44 additions & 8 deletions statediff/indexer/database/sql/sqlx_indexer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -570,6 +570,18 @@ func TestSQLXWatchAddressMethods(t *testing.T) {
}
pgStr := "SELECT * FROM eth_meta.watched_addresses"

t.Run("Load watched addresses (empty table)", func(t *testing.T) {
expectedData := []common.Address{}

rows, err := ind.LoadWatchedAddresses()
require.NoError(t, err)

expectTrue(t, len(rows) == len(expectedData))
for idx, row := range rows {
test_helpers.ExpectEqual(t, row, expectedData[idx])
}
})

t.Run("Insert watched addresses", func(t *testing.T) {
args := []sdtypes.WatchAddressArg{
{
Expand All @@ -596,7 +608,8 @@ func TestSQLXWatchAddressMethods(t *testing.T) {
},
}

ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand Down Expand Up @@ -642,7 +655,8 @@ func TestSQLXWatchAddressMethods(t *testing.T) {
},
}

ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand Down Expand Up @@ -676,7 +690,8 @@ func TestSQLXWatchAddressMethods(t *testing.T) {
},
}

ind.RemoveWatchedAddresses(args)
err = ind.RemoveWatchedAddresses(args)
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand All @@ -703,7 +718,8 @@ func TestSQLXWatchAddressMethods(t *testing.T) {
}
expectedData := []res{}

ind.RemoveWatchedAddresses(args)
err = ind.RemoveWatchedAddresses(args)
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand Down Expand Up @@ -753,7 +769,8 @@ func TestSQLXWatchAddressMethods(t *testing.T) {
},
}

ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand Down Expand Up @@ -803,7 +820,8 @@ func TestSQLXWatchAddressMethods(t *testing.T) {
},
}

ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand All @@ -817,10 +835,27 @@ func TestSQLXWatchAddressMethods(t *testing.T) {
}
})

t.Run("Load watched addresses", func(t *testing.T) {
expectedData := []common.Address{
common.HexToAddress(contract4Address),
common.HexToAddress(contract2Address),
common.HexToAddress(contract3Address),
}

rows, err := ind.LoadWatchedAddresses()
require.NoError(t, err)

expectTrue(t, len(rows) == len(expectedData))
for idx, row := range rows {
test_helpers.ExpectEqual(t, row, expectedData[idx])
}
})

t.Run("Clear watched addresses", func(t *testing.T) {
expectedData := []res{}

ind.ClearWatchedAddresses()
err = ind.ClearWatchedAddresses()
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand All @@ -837,7 +872,8 @@ func TestSQLXWatchAddressMethods(t *testing.T) {
t.Run("Clear watched addresses (empty table)", func(t *testing.T) {
expectedData := []res{}

ind.ClearWatchedAddresses()
err = ind.ClearWatchedAddresses()
require.NoError(t, err)

rows := []res{}
err = db.Select(context.Background(), &rows, pgStr)
Expand Down

0 comments on commit 7103123

Please # to comment.