mirror of
https://github.com/gradle/gradle-build-action.git
synced 2024-12-27 00:16:19 +08:00
31 lines
1.5 KiB
TypeScript
31 lines
1.5 KiB
TypeScript
|
import * as dependencyGraph from '../../src/dependency-graph'
|
||
|
|
||
|
describe('dependency-graph', () => {
|
||
|
describe('constructs job correlator', () => {
|
||
|
it('removes commas from workflow name', () => {
|
||
|
const id = dependencyGraph.constructJobCorrelator('Workflow, with,commas', 'jobid', '{}')
|
||
|
expect(id).toBe('workflowwithcommas-jobid')
|
||
|
})
|
||
|
it('removes non word characters', () => {
|
||
|
const id = dependencyGraph.constructJobCorrelator('Workflow!_with()characters', 'job-*id', '{"foo": "bar!@#$%^&*("}')
|
||
|
expect(id).toBe('workflow_withcharacters-job-id-bar')
|
||
|
})
|
||
|
it('without matrix', () => {
|
||
|
const id = dependencyGraph.constructJobCorrelator('workflow', 'jobid', 'null')
|
||
|
expect(id).toBe('workflow-jobid')
|
||
|
})
|
||
|
it('with dashes in values', () => {
|
||
|
const id = dependencyGraph.constructJobCorrelator('workflow-name', 'job-id', '{"os": "ubuntu-latest"}')
|
||
|
expect(id).toBe('workflow-name-job-id-ubuntu-latest')
|
||
|
})
|
||
|
it('with single matrix value', () => {
|
||
|
const id = dependencyGraph.constructJobCorrelator('workflow', 'jobid', '{"os": "windows"}')
|
||
|
expect(id).toBe('workflow-jobid-windows')
|
||
|
})
|
||
|
it('with composite matrix value', () => {
|
||
|
const id = dependencyGraph.constructJobCorrelator('workflow', 'jobid', '{"os": "windows", "java-version": "21.1", "other": "Value, with COMMA"}')
|
||
|
expect(id).toBe('workflow-jobid-windows-211-valuewithcomma')
|
||
|
})
|
||
|
})
|
||
|
})
|