From 30a94a9d540a7ed2352d2cb53ff1a35a2711c7b6 Mon Sep 17 00:00:00 2001 From: Yasmin Teles Date: Tue, 9 Nov 2021 17:14:39 -0300 Subject: [PATCH] feat: add consumer and producer messages --- message/message.go | 28 ++++++++++++++++++++++------ message/message_test.go | 26 ++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 6 deletions(-) diff --git a/message/message.go b/message/message.go index ec4954f..09b2363 100644 --- a/message/message.go +++ b/message/message.go @@ -6,12 +6,14 @@ import ( ) const ( - OperationPut = "PUT" - OperationGet = "GET" - OperationEmpty = "EMP" - OperationError = "ERR" - OperationOK = "OK" - OperationMessage = "MSG" + OperationPut = "PUT" + OperationGet = "GET" + OperationEmpty = "EMP" + OperationError = "ERR" + OperationOK = "OK" + OperationMessage = "MSG" + OperationConsumer = "CON" + OperationProducer = "PRO" MessageEmpty = "" MessageError = "Operation failed!" @@ -71,6 +73,20 @@ func NewGetMessage() *Message { } } +func NewConsumerMessage() *Message { + return &Message{ + Operation: OperationConsumer, + Data: MessageEmpty, + } +} + +func NewProducerMessage() *Message { + return &Message{ + Operation: OperationProducer, + Data: MessageEmpty, + } +} + func (message *Message) ToUnpack(data string) { if err := json.Unmarshal([]byte(data), message); err != nil { log.Panicf("Some unpack error: %s.\n", err) diff --git a/message/message_test.go b/message/message_test.go index f4585ff..ea58964 100644 --- a/message/message_test.go +++ b/message/message_test.go @@ -98,6 +98,32 @@ func TestGetMessage(t *testing.T) { assert.Exactly(t, getMessage, message) } +func TestConsumerMessage(t *testing.T) { + t.Parallel() + + message := NewConsumerMessage() + + getMessage := &Message{ + Operation: OperationConsumer, + Data: MessageEmpty, + } + + assert.Exactly(t, getMessage, message) +} + +func TestProducerMessage(t *testing.T) { + t.Parallel() + + message := NewProducerMessage() + + getMessage := &Message{ + Operation: OperationProducer, + Data: MessageEmpty, + } + + assert.Exactly(t, getMessage, message) +} + func TestToUnpack(t *testing.T) { t.Parallel()