refactor for cross platform use
This commit is contained in:
30
__tests__/github.test.ts
Normal file
30
__tests__/github.test.ts
Normal file
@ -0,0 +1,30 @@
|
||||
//import * as assert from "assert";
|
||||
//const assert = require('assert');
|
||||
import * as assert from 'assert';
|
||||
import { mimeOrDefault, asset } from '../src/github';
|
||||
|
||||
describe('github', () => {
|
||||
describe('mimeOrDefault', () => {
|
||||
it('returns a specific mime for common path', async () => {
|
||||
assert.equal(mimeOrDefault('foo.tar.gz'), 'application/gzip')
|
||||
});
|
||||
it('returns default mime for uncommon path', async () => {
|
||||
assert.equal(mimeOrDefault('foo.uncommon'), 'application/octet-stream')
|
||||
});
|
||||
});
|
||||
|
||||
describe('asset', () => {
|
||||
it('derives asset info from a path', async () => {
|
||||
const {
|
||||
name,
|
||||
mime,
|
||||
size,
|
||||
file
|
||||
} = asset('tests/data/foo/bar.txt');
|
||||
assert.equal(name, 'bar.txt');
|
||||
assert.equal(mime, 'text/plain');
|
||||
assert.equal(size, 10);
|
||||
assert.equal(file.toString(), 'release me')
|
||||
});
|
||||
})
|
||||
});
|
19
__tests__/util.test.ts
Normal file
19
__tests__/util.test.ts
Normal file
@ -0,0 +1,19 @@
|
||||
import { isTag, paths } from '../src/util';
|
||||
import * as assert from 'assert';
|
||||
|
||||
describe('util', () => {
|
||||
describe('isTag', () => {
|
||||
it('returns true for tags', async () => {
|
||||
assert.equal(isTag('refs/tags/foo'), true)
|
||||
});
|
||||
it ('returns false for other kinds of refs', async () => {
|
||||
assert.equal(isTag('refs/heads/master'), false)
|
||||
})
|
||||
})
|
||||
|
||||
describe('paths', () => {
|
||||
it('resolves files given a set of paths', async () => {
|
||||
assert.deepStrictEqual(paths(["tests/data/**/*"]), ['tests/data/foo/bar.txt'])
|
||||
});
|
||||
})
|
||||
});
|
Reference in New Issue
Block a user