Skip to content

Commit 7103123

Browse files
committed
Add indexer unit tests for loading watched addresses
1 parent e752646 commit 7103123

File tree

3 files changed

+132
-24
lines changed

3 files changed

+132
-24
lines changed

statediff/indexer/database/file/indexer_test.go

Lines changed: 44 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -729,6 +729,18 @@ func TestFileWatchAddressMethods(t *testing.T) {
729729
}
730730
pgStr := "SELECT * FROM eth_meta.watched_addresses"
731731

732+
t.Run("Load watched addresses (empty table)", func(t *testing.T) {
733+
expectedData := []common.Address{}
734+
735+
rows, err := ind.LoadWatchedAddresses()
736+
require.NoError(t, err)
737+
738+
expectTrue(t, len(rows) == len(expectedData))
739+
for idx, row := range rows {
740+
test_helpers.ExpectEqual(t, row, expectedData[idx])
741+
}
742+
})
743+
732744
t.Run("Insert watched addresses", func(t *testing.T) {
733745
args := []sdtypes.WatchAddressArg{
734746
{
@@ -755,7 +767,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
755767
},
756768
}
757769

758-
ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
770+
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
771+
require.NoError(t, err)
759772
dumpWatchedAddressesFileData(t)
760773

761774
rows := []res{}
@@ -802,7 +815,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
802815
},
803816
}
804817

805-
ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
818+
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
819+
require.NoError(t, err)
806820
dumpWatchedAddressesFileData(t)
807821

808822
rows := []res{}
@@ -837,7 +851,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
837851
},
838852
}
839853

840-
ind.RemoveWatchedAddresses(args)
854+
err = ind.RemoveWatchedAddresses(args)
855+
require.NoError(t, err)
841856
dumpWatchedAddressesFileData(t)
842857

843858
rows := []res{}
@@ -865,7 +880,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
865880
}
866881
expectedData := []res{}
867882

868-
ind.RemoveWatchedAddresses(args)
883+
err = ind.RemoveWatchedAddresses(args)
884+
require.NoError(t, err)
869885
dumpWatchedAddressesFileData(t)
870886

871887
rows := []res{}
@@ -916,7 +932,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
916932
},
917933
}
918934

919-
ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
935+
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
936+
require.NoError(t, err)
920937
dumpWatchedAddressesFileData(t)
921938

922939
rows := []res{}
@@ -967,7 +984,8 @@ func TestFileWatchAddressMethods(t *testing.T) {
967984
},
968985
}
969986

970-
ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
987+
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
988+
require.NoError(t, err)
971989
dumpWatchedAddressesFileData(t)
972990

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

1003+
t.Run("Load watched addresses", func(t *testing.T) {
1004+
expectedData := []common.Address{
1005+
common.HexToAddress(contract4Address),
1006+
common.HexToAddress(contract2Address),
1007+
common.HexToAddress(contract3Address),
1008+
}
1009+
1010+
rows, err := ind.LoadWatchedAddresses()
1011+
require.NoError(t, err)
1012+
1013+
expectTrue(t, len(rows) == len(expectedData))
1014+
for idx, row := range rows {
1015+
test_helpers.ExpectEqual(t, row, expectedData[idx])
1016+
}
1017+
})
1018+
9851019
t.Run("Clear watched addresses", func(t *testing.T) {
9861020
expectedData := []res{}
9871021

988-
ind.ClearWatchedAddresses()
1022+
err = ind.ClearWatchedAddresses()
1023+
require.NoError(t, err)
9891024
dumpWatchedAddressesFileData(t)
9901025

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

1006-
ind.ClearWatchedAddresses()
1041+
err = ind.ClearWatchedAddresses()
1042+
require.NoError(t, err)
10071043
dumpWatchedAddressesFileData(t)
10081044

10091045
rows := []res{}

statediff/indexer/database/sql/pgx_indexer_test.go

Lines changed: 44 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -577,6 +577,18 @@ func TestPGXWatchAddressMethods(t *testing.T) {
577577
}
578578
pgStr := "SELECT * FROM eth_meta.watched_addresses"
579579

580+
t.Run("Load watched addresses (empty table)", func(t *testing.T) {
581+
expectedData := []common.Address{}
582+
583+
rows, err := ind.LoadWatchedAddresses()
584+
require.NoError(t, err)
585+
586+
expectTrue(t, len(rows) == len(expectedData))
587+
for idx, row := range rows {
588+
test_helpers.ExpectEqual(t, row, expectedData[idx])
589+
}
590+
})
591+
580592
t.Run("Insert watched addresses", func(t *testing.T) {
581593
args := []sdtypes.WatchAddressArg{
582594
{
@@ -603,7 +615,8 @@ func TestPGXWatchAddressMethods(t *testing.T) {
603615
},
604616
}
605617

606-
ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
618+
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
619+
require.NoError(t, err)
607620

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

652-
ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
665+
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
666+
require.NoError(t, err)
653667

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

686-
ind.RemoveWatchedAddresses(args)
700+
err = ind.RemoveWatchedAddresses(args)
701+
require.NoError(t, err)
687702

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

713-
ind.RemoveWatchedAddresses(args)
728+
err = ind.RemoveWatchedAddresses(args)
729+
require.NoError(t, err)
714730

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

763-
ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
779+
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
780+
require.NoError(t, err)
764781

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

813-
ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
830+
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
831+
require.NoError(t, err)
814832

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

845+
t.Run("Load watched addresses", func(t *testing.T) {
846+
expectedData := []common.Address{
847+
common.HexToAddress(contract4Address),
848+
common.HexToAddress(contract2Address),
849+
common.HexToAddress(contract3Address),
850+
}
851+
852+
rows, err := ind.LoadWatchedAddresses()
853+
require.NoError(t, err)
854+
855+
expectTrue(t, len(rows) == len(expectedData))
856+
for idx, row := range rows {
857+
test_helpers.ExpectEqual(t, row, expectedData[idx])
858+
}
859+
})
860+
827861
t.Run("Clear watched addresses", func(t *testing.T) {
828862
expectedData := []res{}
829863

830-
ind.ClearWatchedAddresses()
864+
err = ind.ClearWatchedAddresses()
865+
require.NoError(t, err)
831866

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

847-
ind.ClearWatchedAddresses()
882+
err = ind.ClearWatchedAddresses()
883+
require.NoError(t, err)
848884

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

statediff/indexer/database/sql/sqlx_indexer_test.go

Lines changed: 44 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -570,6 +570,18 @@ func TestSQLXWatchAddressMethods(t *testing.T) {
570570
}
571571
pgStr := "SELECT * FROM eth_meta.watched_addresses"
572572

573+
t.Run("Load watched addresses (empty table)", func(t *testing.T) {
574+
expectedData := []common.Address{}
575+
576+
rows, err := ind.LoadWatchedAddresses()
577+
require.NoError(t, err)
578+
579+
expectTrue(t, len(rows) == len(expectedData))
580+
for idx, row := range rows {
581+
test_helpers.ExpectEqual(t, row, expectedData[idx])
582+
}
583+
})
584+
573585
t.Run("Insert watched addresses", func(t *testing.T) {
574586
args := []sdtypes.WatchAddressArg{
575587
{
@@ -596,7 +608,8 @@ func TestSQLXWatchAddressMethods(t *testing.T) {
596608
},
597609
}
598610

599-
ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
611+
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt1)))
612+
require.NoError(t, err)
600613

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

645-
ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
658+
err = ind.InsertWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
659+
require.NoError(t, err)
646660

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

679-
ind.RemoveWatchedAddresses(args)
693+
err = ind.RemoveWatchedAddresses(args)
694+
require.NoError(t, err)
680695

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

706-
ind.RemoveWatchedAddresses(args)
721+
err = ind.RemoveWatchedAddresses(args)
722+
require.NoError(t, err)
707723

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

756-
ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
772+
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt2)))
773+
require.NoError(t, err)
757774

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

806-
ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
823+
err = ind.SetWatchedAddresses(args, big.NewInt(int64(watchedAt3)))
824+
require.NoError(t, err)
807825

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

838+
t.Run("Load watched addresses", func(t *testing.T) {
839+
expectedData := []common.Address{
840+
common.HexToAddress(contract4Address),
841+
common.HexToAddress(contract2Address),
842+
common.HexToAddress(contract3Address),
843+
}
844+
845+
rows, err := ind.LoadWatchedAddresses()
846+
require.NoError(t, err)
847+
848+
expectTrue(t, len(rows) == len(expectedData))
849+
for idx, row := range rows {
850+
test_helpers.ExpectEqual(t, row, expectedData[idx])
851+
}
852+
})
853+
820854
t.Run("Clear watched addresses", func(t *testing.T) {
821855
expectedData := []res{}
822856

823-
ind.ClearWatchedAddresses()
857+
err = ind.ClearWatchedAddresses()
858+
require.NoError(t, err)
824859

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

840-
ind.ClearWatchedAddresses()
875+
err = ind.ClearWatchedAddresses()
876+
require.NoError(t, err)
841877

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

0 commit comments

Comments
 (0)