@@ -2,7 +2,6 @@ package cyberark_test
22
33import (
44 "crypto/x509"
5- "errors"
65 "testing"
76
87 "github.com/jetstack/venafi-connection-lib/http_client"
@@ -13,6 +12,7 @@ import (
1312 "github.com/jetstack/preflight/internal/cyberark"
1413 "github.com/jetstack/preflight/internal/cyberark/dataupload"
1514 "github.com/jetstack/preflight/internal/cyberark/servicediscovery"
15+ arktesting "github.com/jetstack/preflight/internal/cyberark/testing"
1616 "github.com/jetstack/preflight/pkg/testutil"
1717 "github.com/jetstack/preflight/pkg/version"
1818
@@ -32,13 +32,21 @@ func TestCyberArkClient_PutSnapshot_MockAPI(t *testing.T) {
3232 Secret : "somepassword" ,
3333 }
3434
35- cl , err := cyberark .NewDatauploadClient (ctx , httpClient , cfg )
35+ discoveryClient := servicediscovery .New (httpClient )
36+
37+ serviceMap , err := discoveryClient .DiscoverServices (t .Context (), cfg .Subdomain )
38+ if err != nil {
39+ t .Fatalf ("failed to discover mock services: %v" , err )
40+ }
41+
42+ cl , err := cyberark .NewDatauploadClient (ctx , httpClient , serviceMap , cfg )
3643 require .NoError (t , err )
3744
3845 err = cl .PutSnapshot (ctx , dataupload.Snapshot {
3946 ClusterID : "ffffffff-ffff-ffff-ffff-ffffffffffff" ,
4047 AgentVersion : version .PreflightVersion ,
4148 })
49+
4250 require .NoError (t , err )
4351}
4452
@@ -55,26 +63,33 @@ func TestCyberArkClient_PutSnapshot_MockAPI(t *testing.T) {
5563// go test ./internal/cyberark \
5664// -v -count 1 -run TestCyberArkClient_PutSnapshot_RealAPI -args -testing.v 6
5765func TestCyberArkClient_PutSnapshot_RealAPI (t * testing.T ) {
66+ arktesting .SkipIfNoEnv (t )
67+
68+ t .Log ("This test runs against a live service and has been known to flake. If you see timeout issues it's possible that the test is flaking and it could be unrelated to your changes." )
69+
5870 logger := ktesting .NewLogger (t , ktesting .DefaultConfig )
5971 ctx := klog .NewContext (t .Context (), logger )
6072
6173 var rootCAs * x509.CertPool
6274 httpClient := http_client .NewDefaultClient (version .UserAgent (), rootCAs )
6375
6476 cfg , err := cyberark .LoadClientConfigFromEnvironment ()
77+ require .NoError (t , err )
78+
79+ discoveryClient := servicediscovery .New (httpClient )
80+
81+ serviceMap , err := discoveryClient .DiscoverServices (t .Context (), cfg .Subdomain )
6582 if err != nil {
66- if errors .Is (err , cyberark .ErrMissingEnvironmentVariables ) {
67- t .Skipf ("Skipping: %s" , err )
68- }
69- require .NoError (t , err )
83+ t .Fatalf ("failed to discover services: %v" , err )
7084 }
7185
72- cl , err := cyberark .NewDatauploadClient (ctx , httpClient , cfg )
86+ cl , err := cyberark .NewDatauploadClient (ctx , httpClient , serviceMap , cfg )
7387 require .NoError (t , err )
7488
7589 err = cl .PutSnapshot (ctx , dataupload.Snapshot {
7690 ClusterID : "ffffffff-ffff-ffff-ffff-ffffffffffff" ,
7791 AgentVersion : version .PreflightVersion ,
7892 })
93+
7994 require .NoError (t , err )
8095}
0 commit comments