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 }