mirror of
https://github.com/goreleaser/goreleaser-action
synced 2026-06-29 22:37:30 +00:00
fix: don't depend on the GitHub API to check release (#391)
* fix: don't depend on the GitHub API to check release * chore: update generated content --------- Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
This commit is contained in:
+21
-15
@@ -1,46 +1,52 @@
|
||||
import {describe, expect, it} from '@jest/globals';
|
||||
import * as github from '../src/github';
|
||||
|
||||
describe('github', () => {
|
||||
describe('getRelease', () => {
|
||||
it('returns latest GoReleaser GitHub release', async () => {
|
||||
const githubToken = process.env.GITHUB_TOKEN || '';
|
||||
const release = await github.getRelease('goreleaser', 'latest', githubToken);
|
||||
const release = await github.getRelease('goreleaser', 'latest');
|
||||
expect(release).not.toBeNull();
|
||||
expect(release?.tag_name).not.toEqual('');
|
||||
});
|
||||
|
||||
it('returns v0.182.0 GoReleaser GitHub release', async () => {
|
||||
const githubToken = process.env.GITHUB_TOKEN || '';
|
||||
const release = await github.getRelease('goreleaser', 'v0.182.0', githubToken);
|
||||
const release = await github.getRelease('goreleaser', 'v0.182.0');
|
||||
expect(release).not.toBeNull();
|
||||
expect(release?.tag_name).toEqual('v0.182.0');
|
||||
});
|
||||
|
||||
it('returns v0.182.1 GoReleaser GitHub release', async () => {
|
||||
const githubToken = process.env.GITHUB_TOKEN || '';
|
||||
const release = await github.getRelease('goreleaser', '~> 0.182', githubToken);
|
||||
const release = await github.getRelease('goreleaser', '~> 0.182');
|
||||
expect(release).not.toBeNull();
|
||||
expect(release?.tag_name).toEqual('v0.182.1');
|
||||
});
|
||||
|
||||
it('unknown GoReleaser release', async () => {
|
||||
await expect(github.getRelease('goreleaser', 'foo')).rejects.toThrowError(
|
||||
new Error('Cannot find GoReleaser release foo in https://goreleaser.com/static/releases.json')
|
||||
);
|
||||
});
|
||||
|
||||
it('returns latest GoReleaser Pro GitHub release', async () => {
|
||||
const githubToken = process.env.GITHUB_TOKEN || '';
|
||||
const release = await github.getRelease('goreleaser-pro', 'latest', githubToken);
|
||||
const release = await github.getRelease('goreleaser-pro', 'latest');
|
||||
expect(release).not.toBeNull();
|
||||
expect(release?.tag_name).not.toEqual('');
|
||||
});
|
||||
|
||||
it('returns v0.182.0-pro GoReleaser Pro GitHub release', async () => {
|
||||
const githubToken = process.env.GITHUB_TOKEN || '';
|
||||
const release = await github.getRelease('goreleaser-pro', 'v0.182.0-pro', githubToken);
|
||||
it('returns v0.182.0 GoReleaser Pro GitHub release', async () => {
|
||||
const release = await github.getRelease('goreleaser-pro', 'v0.182.0');
|
||||
expect(release).not.toBeNull();
|
||||
expect(release?.tag_name).toEqual('v0.182.0-pro');
|
||||
});
|
||||
|
||||
it('returns v0.182.1-pro GoReleaser Pro GitHub release when using semver', async () => {
|
||||
const githubToken = process.env.GITHUB_TOKEN || '';
|
||||
const release = await github.getRelease('goreleaser-pro', '~> 0.182', githubToken);
|
||||
it('returns v0.182.1 GoReleaser Pro GitHub release', async () => {
|
||||
const release = await github.getRelease('goreleaser-pro', '~> 0.182');
|
||||
expect(release).not.toBeNull();
|
||||
expect(release?.tag_name).toEqual('v0.182.1-pro');
|
||||
});
|
||||
|
||||
it('unknown GoReleaser Pro release', async () => {
|
||||
await expect(github.getRelease('goreleaser-pro', 'foo')).rejects.toThrowError(
|
||||
new Error('Cannot find GoReleaser release foo-pro in https://goreleaser.com/static/releases-pro.json')
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -4,26 +4,22 @@ import * as goreleaser from '../src/goreleaser';
|
||||
|
||||
describe('install', () => {
|
||||
it('acquires v0.182.0 version of GoReleaser', async () => {
|
||||
const githubToken = process.env.GITHUB_TOKEN || '';
|
||||
const bin = await goreleaser.install('goreleaser', 'v0.182.0', githubToken);
|
||||
const bin = await goreleaser.install('goreleaser', 'v0.182.0');
|
||||
expect(fs.existsSync(bin)).toBe(true);
|
||||
}, 100000);
|
||||
|
||||
it('acquires latest version of GoReleaser', async () => {
|
||||
const githubToken = process.env.GITHUB_TOKEN || '';
|
||||
const bin = await goreleaser.install('goreleaser', 'latest', githubToken);
|
||||
const bin = await goreleaser.install('goreleaser', 'latest');
|
||||
expect(fs.existsSync(bin)).toBe(true);
|
||||
}, 100000);
|
||||
|
||||
it('acquires v0.182.0-pro version of GoReleaser Pro', async () => {
|
||||
const githubToken = process.env.GITHUB_TOKEN || '';
|
||||
const bin = await goreleaser.install('goreleaser-pro', 'v0.182.0-pro', githubToken);
|
||||
const bin = await goreleaser.install('goreleaser-pro', 'v0.182.0-pro');
|
||||
expect(fs.existsSync(bin)).toBe(true);
|
||||
}, 100000);
|
||||
|
||||
it('acquires latest version of GoReleaser Pro', async () => {
|
||||
const githubToken = process.env.GITHUB_TOKEN || '';
|
||||
const bin = await goreleaser.install('goreleaser-pro', 'latest', githubToken);
|
||||
const bin = await goreleaser.install('goreleaser-pro', 'latest');
|
||||
expect(fs.existsSync(bin)).toBe(true);
|
||||
}, 100000);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user