github.com/jfrog/frogbot@v1.1.1-0.20231221090046-821a26f50338/github_test.go (about)

     1  package main
     2  
     3  import (
     4  	"github.com/jfrog/frogbot/utils"
     5  	"github.com/jfrog/froggit-go/vcsclient"
     6  	"github.com/jfrog/froggit-go/vcsutils"
     7  	"github.com/stretchr/testify/assert"
     8  	"testing"
     9  )
    10  
    11  const (
    12  	githubIntegrationTokenEnv = "FROGBOT_TESTS_GITHUB_TOKEN"
    13  	githubGitCloneUrl         = "https://github.com/frogbot-test/integration.git"
    14  )
    15  
    16  func buildGitHubClient(t *testing.T, githubToken string) vcsclient.VcsClient {
    17  	githubClient, err := vcsclient.NewClientBuilder(vcsutils.GitHub).Token(githubToken).Build()
    18  	assert.NoError(t, err)
    19  	return githubClient
    20  }
    21  
    22  func buildGitHubIntegrationTestDetails(t *testing.T) *IntegrationTestDetails {
    23  	integrationRepoToken := getIntegrationToken(t, githubIntegrationTokenEnv)
    24  	return NewIntegrationTestDetails(integrationRepoToken, string(utils.GitHub), githubGitCloneUrl, "frogbot-test")
    25  }
    26  
    27  func githubTestsInit(t *testing.T) (vcsclient.VcsClient, *IntegrationTestDetails) {
    28  	testDetails := buildGitHubIntegrationTestDetails(t)
    29  	githubClient := buildGitHubClient(t, testDetails.GitToken)
    30  	return githubClient, testDetails
    31  }
    32  
    33  func TestGitHub_ScanPullRequestIntegration(t *testing.T) {
    34  	githubClient, testDetails := githubTestsInit(t)
    35  	runScanPullRequestCmd(t, githubClient, testDetails)
    36  }
    37  
    38  func TestGitHub_ScanRepositoryIntegration(t *testing.T) {
    39  	githubClient, testDetails := githubTestsInit(t)
    40  	runScanRepositoryCmd(t, githubClient, testDetails)
    41  }