github.com/cilium/cilium@v1.16.2/operator/pkg/ciliumendpointslice/testutils/test_utils.go (about)

     1  // SPDX-License-Identifier: Apache-2.0
     2  // Copyright Authors of Cilium
     3  package testutils
     4  
     5  import (
     6  	meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
     7  
     8  	v2 "github.com/cilium/cilium/pkg/k8s/apis/cilium.io/v2"
     9  	capi_v2a1 "github.com/cilium/cilium/pkg/k8s/apis/cilium.io/v2alpha1"
    10  )
    11  
    12  func CreateManagerEndpoint(name string, identity int64) capi_v2a1.CoreCiliumEndpoint {
    13  	return capi_v2a1.CoreCiliumEndpoint{
    14  		Name:       name,
    15  		IdentityID: identity,
    16  	}
    17  }
    18  
    19  func CreateStoreEndpoint(name string, namespace string, identity int64) *v2.CiliumEndpoint {
    20  	return &v2.CiliumEndpoint{
    21  		ObjectMeta: meta_v1.ObjectMeta{
    22  			Name:      name,
    23  			Namespace: namespace,
    24  		},
    25  		Status: v2.EndpointStatus{
    26  			Identity: &v2.EndpointIdentity{
    27  				ID: identity,
    28  			},
    29  			Networking: &v2.EndpointNetworking{},
    30  		},
    31  	}
    32  }
    33  
    34  func CreateStoreEndpointSlice(name string, namespace string, endpoints []capi_v2a1.CoreCiliumEndpoint) *capi_v2a1.CiliumEndpointSlice {
    35  	return &capi_v2a1.CiliumEndpointSlice{
    36  		ObjectMeta: meta_v1.ObjectMeta{
    37  			Name: name,
    38  		},
    39  		Namespace: namespace,
    40  		Endpoints: endpoints,
    41  	}
    42  }
    43  
    44  func CreateCESWithIDs(cesName string, ids []int64) *capi_v2a1.CiliumEndpointSlice {
    45  	ces := &capi_v2a1.CiliumEndpointSlice{ObjectMeta: meta_v1.ObjectMeta{Name: cesName}}
    46  	for _, id := range ids {
    47  		cep := capi_v2a1.CoreCiliumEndpoint{IdentityID: id}
    48  		ces.Endpoints = append(ces.Endpoints, cep)
    49  	}
    50  	return ces
    51  }