...

Source file src/edge-infra.dev/pkg/sds/emergencyaccess/msgdata/msgdata_test.go

Documentation: edge-infra.dev/pkg/sds/emergencyaccess/msgdata

     1  package msgdata
     2  
     3  import (
     4  	"errors"
     5  	"fmt"
     6  	"testing"
     7  
     8  	"github.com/stretchr/testify/assert"
     9  )
    10  
    11  var (
    12  	defaultCommand     = "echo hello"
    13  	defaultComID       = "efgh"
    14  	defaultRequestData = RequestData{
    15  		Command: defaultCommand,
    16  	}
    17  	defaultRequestAttr = RequestAttributes{
    18  		GeneralAttributes: defaultAttr,
    19  		CommandID:         defaultComID,
    20  	}
    21  )
    22  
    23  func TestSuccessNewCommandRequest(t *testing.T) {
    24  	expected := &commandRequest{
    25  		data:       defaultRequestData,
    26  		attributes: defaultRequestAttr,
    27  	}
    28  	req, err := NewCommandRequest(defaultCommand, defaultAttrMap)
    29  	assert.NoError(t, err)
    30  	assert.Equal(t, expected, req)
    31  }
    32  
    33  func TestFailNewCommandRequest(t *testing.T) {
    34  	req, err := NewCommandRequest(defaultCommand, nil)
    35  	assert.Error(t, err)
    36  	assert.Nil(t, req)
    37  
    38  	req, err = NewCommandRequest("", defaultAttrMap)
    39  	assert.Error(t, err)
    40  	assert.Nil(t, req)
    41  
    42  	req, err = NewCommandRequest("", nil)
    43  	assert.Error(t, err)
    44  	assert.Nil(t, req)
    45  }
    46  
    47  func TestCommandRequestValidate(t *testing.T) {
    48  	req := commandRequest{
    49  		data:       defaultRequestData,
    50  		attributes: defaultRequestAttr,
    51  	}
    52  	assert.NoError(t, req.validate())
    53  
    54  	badReq := commandRequest{}
    55  	assert.Len(t, badReq.validate(), 7)
    56  }
    57  
    58  func TestError(t *testing.T) {
    59  	errmsg1, errmsg2, errmsg3 := "error 1", "error 2", "error 3"
    60  	expectedErrMsg := fmt.Sprintf("%s, %s, %s", errmsg1, errmsg2, errmsg3)
    61  
    62  	err1, err2 := CommandRequestErr{}, CommandResponseErr{}
    63  	err1 = append(err1, errors.New(errmsg1), errors.New(errmsg2), errors.New(errmsg3))
    64  	err2 = append(err2, errors.New(errmsg1), errors.New(errmsg2), errors.New(errmsg3))
    65  
    66  	assert.Equal(t, expectedErrMsg, err1.Error())
    67  	assert.Equal(t, expectedErrMsg, err2.Error())
    68  }
    69  

View as plain text