Skip to content

Commit

Permalink
Add SetAttributesFromForm test
Browse files Browse the repository at this point in the history
  • Loading branch information
kojisaikiAtSony committed May 15, 2024
1 parent 8464892 commit a2d30b4
Showing 1 changed file with 36 additions and 0 deletions.
36 changes: 36 additions & 0 deletions app/models/models_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -254,3 +254,39 @@ func TestNewListQueuesRequest_SetAttributesFromForm_invalid_max_results(t *testi
assert.Equal(t, "next-token", lqr.NextToken)
assert.Equal(t, "queue-name-prefix", lqr.QueueNamePrefix)
}

func TestSendMessageRequest_SetAttributesFromForm_success(t *testing.T) {
form := url.Values{}
form.Add("MessageAttribute.1.Name", "Attr1")
form.Add("MessageAttribute.1.Value.DataType", "String")
form.Add("MessageAttribute.1.Value.StringValue", "Value1")
form.Add("MessageAttribute.2.Name", "Attr2")
form.Add("MessageAttribute.2.Value.DataType", "String")
form.Add("MessageAttribute.2.Value.BinaryValue", "VmFsdWUy")
form.Add("MessageAttribute.3.Name", "")
form.Add("MessageAttribute.3.Value.DataType", "String")
form.Add("MessageAttribute.3.Value.StringValue", "Value")
form.Add("MessageAttribute.4.Name", "Attr4")
form.Add("MessageAttribute.4.Value.DataType", "")
form.Add("MessageAttribute.4.Value.StringValue", "Value4")

r := &SendMessageRequest{
MessageAttributes: make(map[string]MessageAttributeValue),
MessageSystemAttributes: make(map[string]MessageAttributeValue),
}
r.SetAttributesFromForm(form)

assert.Equal(t, 2, len(r.MessageAttributes))

assert.NotNil(t, r.MessageAttributes["Attr1"])
attr1 := r.MessageAttributes["Attr1"]
assert.Equal(t, "String", attr1.DataType)
assert.Equal(t, "Value1", attr1.StringValue)
assert.Equal(t, "", attr1.BinaryValue)

assert.NotNil(t, r.MessageAttributes["Attr2"])
attr2 := r.MessageAttributes["Attr2"]
assert.Equal(t, "String", attr2.DataType)
assert.Equal(t, "", attr2.StringValue)
assert.Equal(t, "VmFsdWUy", attr2.BinaryValue)
}

0 comments on commit a2d30b4

Please sign in to comment.