github.com/stakater/IngressMonitorController@v1.0.103/pkg/util/test-helpers.go (about)

     1  package util
     2  
     3  import (
     4  	"testing"
     5  
     6  	routev1 "github.com/openshift/api/route/v1"
     7  	"github.com/stakater/IngressMonitorController/pkg/config"
     8  	meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
     9  
    10  	"k8s.io/api/extensions/v1beta1"
    11  )
    12  
    13  func AssertPanic(t *testing.T, f func()) {
    14  	defer func() {
    15  		if r := recover(); r == nil {
    16  			t.Errorf("The code did not panic")
    17  		}
    18  	}()
    19  	f()
    20  }
    21  
    22  func CreateIngressObject(ingressName string, namespace string, url string) *v1beta1.Ingress {
    23  	ingress := &v1beta1.Ingress{
    24  		ObjectMeta: meta_v1.ObjectMeta{
    25  			Name:      ingressName,
    26  			Namespace: namespace,
    27  		},
    28  		Spec: v1beta1.IngressSpec{
    29  			Rules: []v1beta1.IngressRule{
    30  				v1beta1.IngressRule{
    31  					Host: url,
    32  				},
    33  			},
    34  		},
    35  	}
    36  
    37  	return ingress
    38  }
    39  
    40  // CreateRouteObject creates an openshift route object
    41  func CreateRouteObject(routeName string, namespace string, url string) *routev1.Route {
    42  	route := &routev1.Route{
    43  		ObjectMeta: meta_v1.ObjectMeta{
    44  			Name:      routeName,
    45  			Namespace: namespace,
    46  		},
    47  		Spec: routev1.RouteSpec{
    48  			Host: url,
    49  		},
    50  	}
    51  	return route
    52  }
    53  
    54  func GetProviderWithName(controllerConfig config.Config, name string) *config.Provider {
    55  	for _, provider := range controllerConfig.Providers {
    56  		if provider.Name == name {
    57  			return &provider
    58  		}
    59  	}
    60  
    61  	return nil
    62  }