marko/test/markoc/index.test.js
Michael Rawlings 92c448f639 Autotest refactor (#1023)
* update autotest api and first few test suites

* refactor components-browser to use the new autotest api

* minor changes to update adjustIndent and components-pages to new autotest api

* refactor and combine async-render, deprecated-async-fragments, and render suites

* migrate compiler tests to new autotest runner

* migrate components-compilation tests to use new autotest api

* migrate most remaining test runners to new autotest api

* update adjustIndent

* migrate express tests to new autotest api

* switch from compare to snapshot

* move versions into directory

* remove snapshot sequences, prefix to name, suffix to ext

* refactor autotest

* keep node 4 happy: don't use destructured parameters

* use strict

* update contributing document to reflect new autotest api

* better snapshot errors with clickable path

* remove old vdomSkip property, fix some normalization in the render test runner, skip only tests that need to be skipped

* for generated vdom expectations use expected.html instead of rerendering the html template, update expected files that had editor added newlines at the end

* remove half-finished test that was intended to replace another test (render/fixtures/preserveWhitespace-load-option) - we'll keep the original
2018-03-23 11:27:52 -07:00

47 lines
1.2 KiB
JavaScript

"use strict";
require("../__util__/test-init");
var chai = require("chai");
chai.config.includeStack = true;
require("../../compiler");
var autotest = require("../autotest");
var markocPath = require.resolve("../../bin/markoc");
var childProcess = require("child_process");
var fs = require("fs");
autotest("fixtures", fixture => {
let test = fixture.test;
let dir = fixture.dir;
let resolve = fixture.resolve;
test(
done => {
const testModule = require(resolve("test.js"));
const helpers = {};
helpers.existsSync = function(filename) {
return fs.existsSync(resolve(filename));
};
helpers.readSync = function(filename) {
return fs.readFileSync(resolve(filename));
};
helpers.spawnSync = function(args, options) {
options = options || {};
if (!options.cwd) {
options.cwd = dir;
}
return childProcess.spawnSync(markocPath, args, options);
};
helpers.spawnSync([".", "--clean"]);
testModule.test(helpers);
done();
},
{ timeout: 20000 }
);
});