mirror of
https://github.com/harttle/liquidjs.git
synced 2026-09-29 15:15:23 -07:00
refactor: move fs util into template.js
This commit is contained in:
+6
-2
@@ -1,7 +1,11 @@
|
|||||||
import * as _ from './util/underscore.js'
|
import * as _ from './util/underscore.js'
|
||||||
import path from 'path'
|
import path from 'path'
|
||||||
import {anySeries} from './util/promise.js'
|
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) {
|
export async function resolve (filepath, root, options) {
|
||||||
if (!path.extname(filepath)) {
|
if (!path.extname(filepath)) {
|
||||||
@@ -22,5 +26,5 @@ export async function resolve (filepath, root, options) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export async function read (filepath) {
|
export async function read (filepath) {
|
||||||
return readFileAsync(filepath)
|
return readFileAsync(filepath, 'utf8')
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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))
|
|
||||||
})
|
|
||||||
};
|
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
import {resolve} from '../../src/template.js'
|
import {resolve} from '../../src/template.js'
|
||||||
import mock from 'mock-fs'
|
import mock from 'mock-fs'
|
||||||
import chai from 'chai'
|
import chai from 'chai'
|
||||||
|
import path from 'path'
|
||||||
import chaiAsPromised from 'chai-as-promised'
|
import chaiAsPromised from 'chai-as-promised'
|
||||||
|
|
||||||
const expect = chai.expect
|
const expect = chai.expect
|
||||||
@@ -15,7 +16,8 @@ describe('template', function () {
|
|||||||
describe('#resolve()', function () {
|
describe('#resolve()', function () {
|
||||||
it('should resolve based on root', function () {
|
it('should resolve based on root', function () {
|
||||||
const filepath = resolve('bar.html', '/foo', {root: []})
|
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 () {
|
it('should resolve based on root', function () {
|
||||||
return expect(resolve('foo.html', '/foo', {root: []}))
|
return expect(resolve('foo.html', '/foo', {root: []}))
|
||||||
|
|||||||
Reference in New Issue
Block a user