Skip to content

Commit

Permalink
filter out shared from yaml anchor output
Browse files Browse the repository at this point in the history
  • Loading branch information
lucasyarid committed May 17, 2024
1 parent de90cc6 commit 9f68be0
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 2 deletions.
13 changes: 13 additions & 0 deletions __tests__/filter.test.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
import * as core from '@actions/core'
import {Filter, FilterConfig, PredicateQuantifier} from '../src/filter'
import {File, ChangeStatus} from '../src/file'
import {exportResults} from '../src/main'

jest.mock('@actions/core', () => ({
info: jest.fn(),
setFailed: jest.fn(),
startGroup: jest.fn(),
setOutput: jest.fn(),
endGroup: jest.fn()
}))

describe('yaml filter parsing tests', () => {
test('throws if yaml is not a dictionary', () => {
Expand Down Expand Up @@ -160,6 +170,9 @@ describe('matching tests', () => {
const filter = new Filter(yaml)
const files = modified(['config/settings.yml'])
const match = filter.match(files)
exportResults(match, 'none')

expect(core.setOutput).toHaveBeenCalledWith('changes', '["src"]')
expect(match.src).toEqual(files)
})
})
Expand Down
5 changes: 3 additions & 2 deletions src/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -228,7 +228,7 @@ async function getChangedFilesFromApi(token: string, pullRequest: PullRequestEve
}
}

function exportResults(results: FilterResults, format: ExportFormat): void {
export function exportResults(results: FilterResults, format: ExportFormat): void {
core.info('Results:')
const changes = []
for (const [key, files] of Object.entries(results)) {
Expand All @@ -254,7 +254,8 @@ function exportResults(results: FilterResults, format: ExportFormat): void {
}

if (results['changes'] === undefined) {
const changesJson = JSON.stringify(changes)
const filteredShared = changes.filter(change => change !== 'shared')
const changesJson = JSON.stringify(filteredShared)
core.info(`Changes output set to ${changesJson}`)
core.setOutput('changes', changesJson)
} else {
Expand Down

0 comments on commit 9f68be0

Please sign in to comment.