credentials_test.go 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. package credentials
  2. import (
  3. "io/fs"
  4. "os"
  5. "path"
  6. "testing"
  7. "github.com/stretchr/testify/require"
  8. )
  9. func TestCredentialsRead(t *testing.T) {
  10. file, err := os.ReadFile("test-cloudflare-tunnel-cert-json.pem")
  11. require.NoError(t, err)
  12. dir := t.TempDir()
  13. certPath := path.Join(dir, originCertFile)
  14. os.WriteFile(certPath, file, fs.ModePerm)
  15. user, err := Read(certPath, &nopLog)
  16. require.NoError(t, err)
  17. require.Equal(t, certPath, user.CertPath())
  18. require.Equal(t, "test-service-key", user.APIToken())
  19. require.Equal(t, "7b0a4d77dfb881c1a3b7d61ea9443e19", user.ZoneID())
  20. require.Equal(t, "abcdabcdabcdabcd1234567890abcdef", user.AccountID())
  21. }
  22. func TestCredentialsClient(t *testing.T) {
  23. user := User{
  24. certPath: "/tmp/cert.pem",
  25. cert: &OriginCert{
  26. ZoneID: "7b0a4d77dfb881c1a3b7d61ea9443e19",
  27. AccountID: "abcdabcdabcdabcd1234567890abcdef",
  28. APIToken: "test-service-key",
  29. },
  30. }
  31. client, err := user.Client("example.com", "cloudflared/test", &nopLog)
  32. require.NoError(t, err)
  33. require.NotNil(t, client)
  34. }