refactor: move fs util into template.js

This commit is contained in:
Jun Yang
2018-10-01 22:06:03 +08:00
parent 5412c5a39f
commit 8a629980d9
3 changed files with 9 additions and 18 deletions
+6 -2
View File
@@ -1,7 +1,11 @@
import * as _ from './util/underscore.js'
import path from 'path'
import {anySeries} from './util/promise.js'
import {statFileAsync, readFileAsync} from './util/fs.js'
import fs from 'fs'
import {promisify} from 'util'
const statFileAsync = promisify(fs.stat)
const readFileAsync = promisify(fs.readFile)
export async function resolve (filepath, root, options) {
if (!path.extname(filepath)) {
@@ -22,5 +26,5 @@ export async function resolve (filepath, root, options) {
}
export async function read (filepath) {
return readFileAsync(filepath)
return readFileAsync(filepath, 'utf8')
}
-15
View File
@@ -1,15 +0,0 @@
import fs from 'fs'
export function readFileAsync (filepath) {
return new Promise(function (resolve, reject) {
fs.readFile(filepath, 'utf8', function (err, content) {
err ? reject(err) : resolve(content)
})
})
};
export function statFileAsync (path) {
return new Promise(function (resolve, reject) {
fs.stat(path, (err, stat) => err ? reject(err) : resolve(stat))
})
};
+3 -1
View File
@@ -1,6 +1,7 @@
import {resolve} from '../../src/template.js'
import mock from 'mock-fs'
import chai from 'chai'
import path from 'path'
import chaiAsPromised from 'chai-as-promised'
const expect = chai.expect
@@ -15,7 +16,8 @@ describe('template', function () {
describe('#resolve()', function () {
it('should resolve based on root', function () {
const filepath = resolve('bar.html', '/foo', {root: []})
return expect(filepath).to.eventually.equal('/foo/bar.html')
const expected = path.resolve('/foo/bar.html')
return expect(filepath).to.eventually.equal(expected)
})
it('should resolve based on root', function () {
return expect(resolve('foo.html', '/foo', {root: []}))