test: add test on StringifyEvents (#11972)

This commit is contained in:
Julien Robert 2022-05-16 18:16:08 +02:00 committed by GitHub
parent 542e9f07cd
commit 7a915880ac
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 37 additions and 14 deletions

View File

@ -211,7 +211,7 @@ func (e Events) ToABCIEvents() []abci.Event {
}
// Common event types and attribute keys
var (
const (
EventTypeTx = "tx"
AttributeKeyAccountSequence = "acc_seq"

View File

@ -103,20 +103,43 @@ func (s *eventsTestSuite) TestEventManagerTypedEvents() {
}
func (s *eventsTestSuite) TestStringifyEvents() {
e := sdk.Events{
sdk.NewEvent("message", sdk.NewAttribute("sender", "foo")),
sdk.NewEvent("message", sdk.NewAttribute("module", "bank")),
cases := []struct {
name string
events sdk.Events
expTxtStr string
expJSONStr string
}{
{
name: "default",
events: sdk.Events{
sdk.NewEvent("message", sdk.NewAttribute(sdk.AttributeKeySender, "foo")),
sdk.NewEvent("message", sdk.NewAttribute(sdk.AttributeKeyModule, "bank")),
},
expTxtStr: "\t\t- message\n\t\t\t- sender: foo\n\t\t\t- module: bank",
expJSONStr: "[{\"type\":\"message\",\"attributes\":[{\"key\":\"sender\",\"value\":\"foo\"},{\"key\":\"module\",\"value\":\"bank\"}]}]",
},
{
name: "multiple events with same attributes",
events: sdk.Events{
sdk.NewEvent(
"message",
sdk.NewAttribute(sdk.AttributeKeyModule, "staking"),
sdk.NewAttribute(sdk.AttributeKeySender, "cosmos1foo"),
),
sdk.NewEvent("message", sdk.NewAttribute(sdk.AttributeKeySender, "foo")),
},
expTxtStr: "\t\t- message\n\t\t\t- module: staking\n\t\t\t- sender: cosmos1foo\n\t\t\t- sender: foo",
expJSONStr: `[{"type":"message","attributes":[{"key":"module","value":"staking"},{"key":"sender","value":"cosmos1foo"},{"key":"sender","value":"foo"}]}]`,
},
}
se := sdk.StringifyEvents(e.ToABCIEvents())
expectedTxtStr := "\t\t- message\n\t\t\t- sender: foo\n\t\t\t- module: bank"
s.Require().Equal(expectedTxtStr, se.String())
bz, err := json.Marshal(se)
s.Require().NoError(err)
expectedJSONStr := "[{\"type\":\"message\",\"attributes\":[{\"key\":\"sender\",\"value\":\"foo\"},{\"key\":\"module\",\"value\":\"bank\"}]}]"
s.Require().Equal(expectedJSONStr, string(bz))
for _, test := range cases {
se := sdk.StringifyEvents(test.events.ToABCIEvents())
s.Require().Equal(test.expTxtStr, se.String())
bz, err := json.Marshal(se)
s.Require().NoError(err)
s.Require().Equal(test.expJSONStr, string(bz))
}
}
func (s *eventsTestSuite) TestMarkEventsToIndex() {

View File

@ -9,7 +9,7 @@ const (
EventTypeTransfer = "transfer"
AttributeKeyRecipient = "recipient"
AttributeKeySender = "sender"
AttributeKeySender = sdk.AttributeKeySender
AttributeValueCategory = ModuleName