Fixes #120 Artifacts can be removed even when new ones aren't provided

This commit is contained in:
Nick Cipollo
2021-10-03 17:58:09 -04:00
parent 821cbcc349
commit 95aae1ba96
8 changed files with 164 additions and 45 deletions

View File

@@ -89,25 +89,6 @@ describe('ArtifactUploader', () => {
expect(deleteMock).toBeCalledWith(2)
})
it('removes all artifacts', async () => {
mockDeleteSuccess()
mockListWithAssets()
mockUploadArtifact()
const uploader = createUploader(false, true)
await uploader.uploadArtifacts(artifacts, releaseId, url)
expect(uploadMock).toBeCalledTimes(2)
expect(uploadMock)
.toBeCalledWith(url, contentLength, 'raw', fileContents, 'art1', releaseId)
expect(uploadMock)
.toBeCalledWith(url, contentLength, 'raw', fileContents, 'art2', releaseId)
expect(deleteMock).toBeCalledTimes(2)
expect(deleteMock).toBeCalledWith(1)
expect(deleteMock).toBeCalledWith(2)
})
it('replaces no artifacts when previous asset list empty', async () => {
mockDeleteSuccess()
mockListWithoutAssets()
@@ -148,7 +129,7 @@ describe('ArtifactUploader', () => {
it('throws upload error when replacesExistingArtifacts is true', async () => {
mockListWithoutAssets()
mockUploadError()
const uploader = createUploader(true, false, true)
const uploader = createUploader(true, true)
expect.hasAssertions()
try {
@@ -189,7 +170,7 @@ describe('ArtifactUploader', () => {
expect(deleteMock).toBeCalledTimes(0)
})
function createUploader(replaces: boolean, removes: boolean = false, throws: boolean = false): GithubArtifactUploader {
function createUploader(replaces: boolean, throws: boolean = false): GithubArtifactUploader {
const MockReleases = jest.fn<Releases, any>(() => {
return {
create: jest.fn(),
@@ -201,7 +182,7 @@ describe('ArtifactUploader', () => {
uploadArtifact: uploadMock
}
})
return new GithubArtifactUploader(new MockReleases(), replaces, removes, throws)
return new GithubArtifactUploader(new MockReleases(), replaces, throws)
}
function mockDeleteError(): any {