@@ -69,6 +69,8 @@ func TestTransactionPayloadEventDecode(t *testing.T) {
69
69
}
70
70
err := e .decodePayload ()
71
71
require .NoError (t , err )
72
+
73
+ // Check raw events
72
74
require .Len (t , e .Events , 8 )
73
75
require .Equal (t , QUERY_EVENT , e .Events [0 ].Header .EventType )
74
76
require .Equal (t , TABLE_MAP_EVENT , e .Events [1 ].Header .EventType )
@@ -78,4 +80,17 @@ func TestTransactionPayloadEventDecode(t *testing.T) {
78
80
require .Equal (t , TABLE_MAP_EVENT , e .Events [5 ].Header .EventType )
79
81
require .Equal (t , DELETE_ROWS_EVENTv2 , e .Events [6 ].Header .EventType )
80
82
require .Equal (t , XID_EVENT , e .Events [7 ].Header .EventType )
83
+
84
+ // Check insert/update/delete rows events casting
85
+ ievent , ok := e .Events [2 ].Event .(* RowsEvent )
86
+ require .True (t , ok )
87
+ require .Equal (t , ievent .Type (), EnumRowsEventTypeInsert )
88
+
89
+ uevent , ok := e .Events [4 ].Event .(* RowsEvent )
90
+ require .True (t , ok )
91
+ require .Equal (t , uevent .Type (), EnumRowsEventTypeUpdate )
92
+
93
+ devent , ok := e .Events [6 ].Event .(* RowsEvent )
94
+ require .True (t , ok )
95
+ require .Equal (t , devent .Type (), EnumRowsEventTypeDelete )
81
96
}
0 commit comments