code.vegaprotocol.io/vega@v0.79.0/core/events/node_signature_test.go (about)

     1  // Copyright (C) 2023 Gobalsky Labs Limited
     2  //
     3  // This program is free software: you can redistribute it and/or modify
     4  // it under the terms of the GNU Affero General Public License as
     5  // published by the Free Software Foundation, either version 3 of the
     6  // License, or (at your option) any later version.
     7  //
     8  // This program is distributed in the hope that it will be useful,
     9  // but WITHOUT ANY WARRANTY; without even the implied warranty of
    10  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    11  // GNU Affero General Public License for more details.
    12  //
    13  // You should have received a copy of the GNU Affero General Public License
    14  // along with this program.  If not, see <http://www.gnu.org/licenses/>.
    15  
    16  package events_test
    17  
    18  import (
    19  	"context"
    20  	"testing"
    21  
    22  	"code.vegaprotocol.io/vega/core/events"
    23  	commandspb "code.vegaprotocol.io/vega/protos/vega/commands/v1"
    24  
    25  	"github.com/stretchr/testify/assert"
    26  )
    27  
    28  func TestNodeSignatureDeepClone(t *testing.T) {
    29  	ctx := context.Background()
    30  
    31  	ns := &commandspb.NodeSignature{
    32  		Id:   "Id",
    33  		Kind: commandspb.NodeSignatureKind_NODE_SIGNATURE_KIND_ASSET_NEW,
    34  		Sig:  []byte{'A', 'B', 'C'},
    35  	}
    36  
    37  	nsEvent := events.NewNodeSignatureEvent(ctx, *ns)
    38  	ns2 := nsEvent.NodeSignature()
    39  
    40  	// Change the original values
    41  	ns.Id = "Changed"
    42  	ns.Kind = commandspb.NodeSignatureKind_NODE_SIGNATURE_KIND_UNSPECIFIED
    43  	ns.Sig[0] = 'X'
    44  	ns.Sig[1] = 'Y'
    45  	ns.Sig[2] = 'Z'
    46  
    47  	// Check things have changed
    48  	assert.NotEqual(t, ns.Id, ns2.Id)
    49  	assert.NotEqual(t, ns.Kind, ns2.Kind)
    50  	for i := 0; i < len(ns.Sig); i++ {
    51  		assert.NotEqual(t, ns.Sig[i], ns2.Sig[i])
    52  	}
    53  }