github.com/mweagle/Sparta@v1.15.0/aws/cloudwatch/logs/cloudwatchlogs_test.go (about) 1 package cloudwatchlogs 2 3 import ( 4 "encoding/json" 5 "testing" 6 7 awsLambdaEvents "github.com/aws/aws-lambda-go/events" 8 ) 9 10 const logMessageTestData = ` 11 { 12 "awslogs": 13 { 14 "data": "H4sIAAAAAAAAAK2TW2/TQBCF/8rK4jFOZu+7fnOVUHFJQbEBiTqq1va6smTHwXbShqr/nUlTBEiAWoH27ZzR2W+OvXdB64fBXfv0sPVBFMzjNL5aLpIkPl8Ek6C72fgeZWCaSitAGi5Qbrrr877bbdGZuZth1rg2L91s7/uh7jbDaSIZe+9aHGFA1QzYjMHs8sXbOF0k6Vr6KldVwU3FqKiMNUwzarjSnrKc6xwjhl0+FH29HTHyZd2MGB5El0Gydf3o4u22qQt39K6Wh5NdUCcKK50Q0ueVBOFYSZ21FZNeVRUvhbTe2SpYP/At9n4zHiPvgrpETM6EMhIscKMRWRoQRnIhNafKgBaaa6zBMqMQVwvFKSipABB1rLHF0bVYCBVSWm6YtVyqyfd2MT5J41VKVv7LDkdflRGxqrLGKR6W2kBIqZehy7UJlcXLfc7Kwufk46nSiDwWl22C+8lvgI0GBcwIyrFsCVwLBBCCYq9CKS6stFRYAGWE/TOw/Rn4+NlCYCGDFHhETUTtlEvzORufQp6NF13pXydkP93DlMKUqwmJPyUkmb9BjeHh7N+3kX+p/5dtFhfz55b/H+joE+lWi/fvnv93ZON81z+8gYjAVDLSDtl4VjeNL8kPhwKgQbJx6duuP5Ck/upRZYYsz1B0t+TR+DB4vJjyB/24/Pr+G81LpuMfBAAA" 15 } 16 } 17 ` 18 19 func TestUnmarshal(t *testing.T) { 20 var event awsLambdaEvents.CloudwatchLogsEvent 21 err := json.Unmarshal([]byte(logMessageTestData), &event) 22 if nil != err { 23 t.Errorf("Failed to unmarshal log event message") 24 } 25 data, err := event.AWSLogs.Parse() 26 if nil != err { 27 t.Error("Failed to decode event data: " + err.Error()) 28 } 29 if len(data.LogEvents) != 4 { 30 t.Error("Failed to unmarshal 4 LogEvent entries") 31 } 32 }