Skip to content

Commit

Permalink
Refactor test (#630)
Browse files Browse the repository at this point in the history
  • Loading branch information
int128 authored Apr 2, 2023
1 parent 2498ea5 commit c7b18a0
Showing 1 changed file with 13 additions and 17 deletions.
30 changes: 13 additions & 17 deletions tests/run.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,16 +24,12 @@ const getOctokit = github.getOctokit as jest.Mock
getOctokit.mockReturnValue(octokitMock)

jest.mock('@datadog/datadog-api-client')
const metricsApiMock = {
submitMetrics: jest.fn<Promise<v1.IntakePayloadAccepted>, [v1.MetricsApiSubmitMetricsRequest]>(),
}
const metricsApiConstructor = v1.MetricsApi as jest.Mock
metricsApiConstructor.mockReturnValue(metricsApiMock)
const submitMetrics = jest.spyOn(v1.MetricsApi.prototype, 'submitMetrics')

test('workflow_run with collectJobMetrics', async () => {
octokitMock.graphql.mockResolvedValue(exampleCompletedCheckSuite)
octokitMock.rest.rateLimit.get.mockResolvedValue(exampleRateLimitResponse)
metricsApiMock.submitMetrics.mockResolvedValue({ status: 'ok' })
submitMetrics.mockResolvedValue({ status: 'ok' })

await run(
{
Expand All @@ -51,13 +47,13 @@ test('workflow_run with collectJobMetrics', async () => {
}
)
expect(getOctokit).toHaveBeenCalledWith('GITHUB_TOKEN')
expect(metricsApiMock.submitMetrics).toHaveBeenCalledTimes(4)
expect(metricsApiMock.submitMetrics.mock.calls).toMatchSnapshot()
expect(submitMetrics).toHaveBeenCalledTimes(4)
expect(submitMetrics.mock.calls).toMatchSnapshot()
})

test('workflow_run', async () => {
octokitMock.rest.rateLimit.get.mockResolvedValue(exampleRateLimitResponse)
metricsApiMock.submitMetrics.mockResolvedValue({ status: 'ok' })
submitMetrics.mockResolvedValue({ status: 'ok' })

await run(
{
Expand All @@ -75,13 +71,13 @@ test('workflow_run', async () => {
}
)
expect(getOctokit).toHaveBeenCalledWith('GITHUB_TOKEN')
expect(metricsApiMock.submitMetrics).toHaveBeenCalledTimes(2)
expect(metricsApiMock.submitMetrics.mock.calls).toMatchSnapshot()
expect(submitMetrics).toHaveBeenCalledTimes(2)
expect(submitMetrics.mock.calls).toMatchSnapshot()
})

test('pull_request_opened', async () => {
octokitMock.rest.rateLimit.get.mockResolvedValue(exampleRateLimitResponse)
metricsApiMock.submitMetrics.mockResolvedValue({ status: 'ok' })
submitMetrics.mockResolvedValue({ status: 'ok' })

await run(
{
Expand All @@ -99,14 +95,14 @@ test('pull_request_opened', async () => {
}
)
expect(getOctokit).toHaveBeenCalledWith('GITHUB_TOKEN')
expect(metricsApiMock.submitMetrics).toHaveBeenCalledTimes(2)
expect(metricsApiMock.submitMetrics.mock.calls).toMatchSnapshot()
expect(submitMetrics).toHaveBeenCalledTimes(2)
expect(submitMetrics.mock.calls).toMatchSnapshot()
})

test('pull_request_closed', async () => {
octokitMock.graphql.mockResolvedValue(exampleClosedPullRequestQuery)
octokitMock.rest.rateLimit.get.mockResolvedValue(exampleRateLimitResponse)
metricsApiMock.submitMetrics.mockResolvedValue({ status: 'ok' })
submitMetrics.mockResolvedValue({ status: 'ok' })

await run(
{
Expand All @@ -124,6 +120,6 @@ test('pull_request_closed', async () => {
}
)
expect(getOctokit).toHaveBeenCalledWith('GITHUB_TOKEN')
expect(metricsApiMock.submitMetrics).toHaveBeenCalledTimes(2)
expect(metricsApiMock.submitMetrics.mock.calls).toMatchSnapshot()
expect(submitMetrics).toHaveBeenCalledTimes(2)
expect(submitMetrics.mock.calls).toMatchSnapshot()
})

0 comments on commit c7b18a0

Please sign in to comment.