UNPKG

foldify

Version:

Import / require folder(s) of any type of files, and evaluate / curry the results.

84 lines (61 loc) 2.08 kB
var path = require('path'); var test = require('tape'); var util = require('util') var foldify = require('../'); test('whitelist - populate', function(t){ t.plan(1); var evaluate = foldify(__dirname + '/files', {whitelist: ["js/*.js", "js/jsone/jsone_file1.*"], recursive: true} ); var res = typeof evaluate["js_file1"] + typeof evaluate["jsone_file1"] + typeof evaluate["jsone_file2"] + typeof evaluate["html_a.html"]; var expected = "function" +"function" +"undefined" +"undefined"; t.equal(res, expected); }); test('whitelist - evaluate + trim', function(t){ t.plan(3); var evaluate = foldify(__dirname + '/files', {recursive: true} ); t.equal(typeof evaluate["js_file1"], "function"); var evaluated = evaluate([1,2,3], {whitelist: "jsone_file*", trim: true}); var res = ""+evaluated["js_file1"] + evaluated["jsone_file1"] + evaluated["jsone_file2"] + evaluated["jsone_file3"]; var expected = "undefined" +"jsone_file1.js"+1+2+3 +"jsone_file2.js"+1+2+3 +"jsone_file3.js"+1+2+3; t.equal(res, expected); evaluated = evaluated([], {whitelist: "*3", trim: true}); var res = ""+evaluated["js_file1"] + evaluated["jsone_file1"] + evaluated["jsone_file2"] + evaluated["jsone_file3"]; var expected = "undefined" +"undefined" +"undefined" +"jsone_file3.js"+1+2+3; t.equal(res, expected); }); test('whitelist - tree + trim', function(t){ t.plan(2); var evaluate = foldify(__dirname + '/files', {tree: true, whitelist: "js*/**"} ); t.equal(typeof evaluate.json.jsonone["jsonone_file"], "object"); var evaluated = evaluate([1,2,3], {whitelist: ["**/js_file1", "js/**/*file*"], trim: true}); var res = evaluated.js["js_file1"] + evaluated.js.jsone["jsone_file1"] + evaluated.js.jsone["jsone_file2"] + evaluated.js.jsone["jsone_file3"] + evaluated.html + evaluated.json; var expected = "undefined" +"jsone_file1.js"+1+2+3 +"jsone_file2.js"+1+2+3 +"jsone_file3.js"+1+2+3 +"undefined" +"undefined"; t.equal(res, expected); });