Updated the files.
This commit is contained in:
parent
1553e6b971
commit
753967d4f5
23418 changed files with 3784666 additions and 0 deletions
50
my-app/node_modules/less/test/browser/generator/benchmark.config.js
generated
vendored
Executable file
50
my-app/node_modules/less/test/browser/generator/benchmark.config.js
generated
vendored
Executable file
|
@ -0,0 +1,50 @@
|
|||
|
||||
module.exports = {
|
||||
current: {
|
||||
// src is used to build list of less files to compile
|
||||
src: [
|
||||
'benchmark/benchmark.less'
|
||||
],
|
||||
options: {
|
||||
helpers: 'benchmark/browseroptions.js',
|
||||
specs: 'benchmark/browserspec.js',
|
||||
outfile: 'tmp/browser/test-runner-benchmark-current.html'
|
||||
}
|
||||
},
|
||||
v3_10_3: {
|
||||
// src is used to build list of less files to compile
|
||||
src: [
|
||||
'benchmark/benchmark.less'
|
||||
],
|
||||
options: {
|
||||
helpers: 'benchmark/browseroptions.js',
|
||||
specs: 'benchmark/browserspec.js',
|
||||
outfile: 'tmp/browser/test-runner-benchmark-v3_10_3.html',
|
||||
less: 'https://cdnjs.cloudflare.com/ajax/libs/less.js/3.10.3/less.min.js'
|
||||
}
|
||||
},
|
||||
v3_9_0: {
|
||||
// src is used to build list of less files to compile
|
||||
src: [
|
||||
'benchmark/benchmark.less'
|
||||
],
|
||||
options: {
|
||||
helpers: 'benchmark/browseroptions.js',
|
||||
specs: 'benchmark/browserspec.js',
|
||||
outfile: 'tmp/browser/test-runner-benchmark-v3_9_0.html',
|
||||
less: 'https://cdnjs.cloudflare.com/ajax/libs/less.js/3.9.0/less.min.js'
|
||||
}
|
||||
},
|
||||
v2_7_3: {
|
||||
// src is used to build list of less files to compile
|
||||
src: [
|
||||
'benchmark/benchmark.less'
|
||||
],
|
||||
options: {
|
||||
helpers: 'benchmark/browseroptions.js',
|
||||
specs: 'benchmark/browserspec.js',
|
||||
outfile: 'tmp/browser/test-runner-benchmark-v2_7_3.html',
|
||||
less: 'https://cdnjs.cloudflare.com/ajax/libs/less.js/2.7.3/less.min.js'
|
||||
}
|
||||
}
|
||||
}
|
78
my-app/node_modules/less/test/browser/generator/generate.js
generated
vendored
Executable file
78
my-app/node_modules/less/test/browser/generator/generate.js
generated
vendored
Executable file
|
@ -0,0 +1,78 @@
|
|||
const template = require('./template')
|
||||
let config
|
||||
const fs = require('fs-extra')
|
||||
const path = require('path')
|
||||
const globby = require('globby')
|
||||
const { runner } = require('mocha-headless-chrome')
|
||||
|
||||
|
||||
if (process.argv[2]) {
|
||||
config = require(`./${process.argv[2]}.config`)
|
||||
} else {
|
||||
config = require('./runner.config')
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate templates and run tests
|
||||
*/
|
||||
const tests = []
|
||||
const cwd = process.cwd()
|
||||
const tmpDir = path.join(cwd, 'tmp', 'browser')
|
||||
fs.ensureDirSync(tmpDir)
|
||||
fs.copySync(path.join(cwd, 'test', 'browser', 'common.js'), path.join(tmpDir, 'common.js'))
|
||||
|
||||
let numTests = 0
|
||||
let passedTests = 0
|
||||
let failedTests = 0
|
||||
|
||||
/** Will run the runners in a series */
|
||||
function runSerial(tasks) {
|
||||
var result = Promise.resolve()
|
||||
start = Date.now()
|
||||
tasks.forEach(task => {
|
||||
result = result.then(result => {
|
||||
if (result && result.result && result.result.stats) {
|
||||
const stats = result.result.stats
|
||||
numTests += stats.tests
|
||||
passedTests += stats.passes
|
||||
failedTests += stats.failures
|
||||
}
|
||||
return task()
|
||||
}, err => {
|
||||
console.log(err)
|
||||
failedTests += 1
|
||||
})
|
||||
})
|
||||
return result
|
||||
}
|
||||
|
||||
Object.entries(config).forEach(entry => {
|
||||
const test = entry[1]
|
||||
const paths = globby.sync(test.src)
|
||||
const templateString = template(paths, test.options.helpers, test.options.specs)
|
||||
fs.writeFileSync(path.join(cwd, test.options.outfile), templateString)
|
||||
tests.push(() => {
|
||||
const file = 'http://localhost:8081/' + test.options.outfile
|
||||
console.log(file)
|
||||
return runner({
|
||||
file,
|
||||
timeout: 3500,
|
||||
args: ['disable-web-security']
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
module.exports = () => runSerial(tests).then(() => {
|
||||
if (failedTests > 0) {
|
||||
process.stderr.write(failedTests + ' Failed, ' + passedTests + ' passed\n');
|
||||
} else {
|
||||
process.stdout.write('All Passed ' + passedTests + ' run\n');
|
||||
}
|
||||
if (failedTests) {
|
||||
process.on('exit', function() { process.reallyExit(1); });
|
||||
}
|
||||
process.exit()
|
||||
}, err => {
|
||||
process.stderr.write(err.message);
|
||||
process.exit()
|
||||
})
|
186
my-app/node_modules/less/test/browser/generator/runner.config.js
generated
vendored
Executable file
186
my-app/node_modules/less/test/browser/generator/runner.config.js
generated
vendored
Executable file
|
@ -0,0 +1,186 @@
|
|||
var path = require('path');
|
||||
var resolve = require('resolve')
|
||||
|
||||
var rootFolder = path.resolve(__dirname, '../../../');
|
||||
var testFolder = path.relative(rootFolder, path.dirname(resolve.sync('@less/test-data')))
|
||||
var lessFolder = path.join(testFolder, 'less');
|
||||
|
||||
module.exports = {
|
||||
main: {
|
||||
// src is used to build list of less files to compile
|
||||
src: [
|
||||
`${lessFolder}/_main/*.less`,
|
||||
`!${lessFolder}/_main/plugin-preeval.less`, // uses ES6 syntax
|
||||
// Don't test NPM import, obviously
|
||||
`!${lessFolder}/_main/plugin-module.less`,
|
||||
`!${lessFolder}/_main/import-module.less`,
|
||||
`!${lessFolder}/_main/javascript.less`,
|
||||
`!${lessFolder}/_main/urls.less`,
|
||||
`!${lessFolder}/_main/empty.less`
|
||||
],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-main-options.js',
|
||||
specs: 'test/browser/runner-main-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-main.html'
|
||||
}
|
||||
},
|
||||
legacy: {
|
||||
src: [`${lessFolder}/legacy/*.less`],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-legacy-options.js',
|
||||
specs: 'test/browser/runner-legacy-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-legacy.html'
|
||||
}
|
||||
},
|
||||
strictUnits: {
|
||||
src: [`${lessFolder}/strict-units/*.less`],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-strict-units-options.js',
|
||||
specs: 'test/browser/runner-strict-units-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-strict-units.html'
|
||||
}
|
||||
},
|
||||
errors: {
|
||||
src: [
|
||||
`${lessFolder}/errors/*.less`,
|
||||
`${testFolder}/errors/javascript-error.less`,
|
||||
'test/browser/less/errors/*.less'
|
||||
],
|
||||
options: {
|
||||
timeout: 20000,
|
||||
helpers: 'test/browser/runner-errors-options.js',
|
||||
specs: 'test/browser/runner-errors-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-errors.html'
|
||||
}
|
||||
},
|
||||
noJsErrors: {
|
||||
src: [`${lessFolder}/no-js-errors/*.less`],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-no-js-errors-options.js',
|
||||
specs: 'test/browser/runner-no-js-errors-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-no-js-errors.html'
|
||||
}
|
||||
},
|
||||
browser: {
|
||||
src: [
|
||||
'test/browser/less/*.less',
|
||||
'test/browser/less/plugin/*.less'
|
||||
],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-browser-options.js',
|
||||
specs: 'test/browser/runner-browser-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-browser.html'
|
||||
}
|
||||
},
|
||||
relativeUrls: {
|
||||
src: ['test/browser/less/relative-urls/*.less'],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-relative-urls-options.js',
|
||||
specs: 'test/browser/runner-relative-urls-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-relative-urls.html'
|
||||
}
|
||||
},
|
||||
rewriteUrls: {
|
||||
src: ['test/browser/less/rewrite-urls/*.less'],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-rewrite-urls-options.js',
|
||||
specs: 'test/browser/runner-rewrite-urls-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-rewrite-urls.html'
|
||||
}
|
||||
},
|
||||
rootpath: {
|
||||
src: ['test/browser/less/rootpath/*.less'],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-rootpath-options.js',
|
||||
specs: 'test/browser/runner-rootpath-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-rootpath.html'
|
||||
}
|
||||
},
|
||||
rootpathRelative: {
|
||||
src: ['test/browser/less/rootpath-relative/*.less'],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-rootpath-relative-options.js',
|
||||
specs: 'test/browser/runner-rootpath-relative-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-rootpath-relative.html'
|
||||
}
|
||||
},
|
||||
rootpathRewriteUrls: {
|
||||
src: ['test/browser/less/rootpath-rewrite-urls/*.less'],
|
||||
options: {
|
||||
helpers:
|
||||
'test/browser/runner-rootpath-rewrite-urls-options.js',
|
||||
specs: 'test/browser/runner-rootpath-rewrite-urls-spec.js',
|
||||
outfile:
|
||||
'tmp/browser/test-runner-rootpath-rewrite-urls.html'
|
||||
}
|
||||
},
|
||||
production: {
|
||||
src: ['test/browser/less/production/*.less'],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-production-options.js',
|
||||
specs: 'test/browser/runner-production-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-production.html'
|
||||
}
|
||||
},
|
||||
modifyVars: {
|
||||
src: ['test/browser/less/modify-vars/*.less'],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-modify-vars-options.js',
|
||||
specs: 'test/browser/runner-modify-vars-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-modify-vars.html'
|
||||
}
|
||||
},
|
||||
globalVars: {
|
||||
src: ['test/browser/less/global-vars/*.less'],
|
||||
options: {
|
||||
helpers: 'test/browser/runner-global-vars-options.js',
|
||||
specs: 'test/browser/runner-global-vars-spec.js',
|
||||
outfile: 'tmp/browser/test-runner-global-vars.html'
|
||||
}
|
||||
},
|
||||
postProcessorPlugin: {
|
||||
src: [`${lessFolder}/postProcessorPlugin/*.less`],
|
||||
options: {
|
||||
helpers: [
|
||||
'test/plugins/postprocess/index.js',
|
||||
'test/browser/runner-postProcessorPlugin-options.js'
|
||||
],
|
||||
specs: 'test/browser/runner-postProcessorPlugin.js',
|
||||
outfile:
|
||||
'tmp/browser/test-runner-post-processor-plugin.html'
|
||||
}
|
||||
},
|
||||
preProcessorPlugin: {
|
||||
src: [`${lessFolder}/preProcessorPlugin/*.less`],
|
||||
options: {
|
||||
helpers: [
|
||||
'test/plugins/preprocess/index.js',
|
||||
'test/browser/runner-preProcessorPlugin-options.js'
|
||||
],
|
||||
specs: 'test/browser/runner-preProcessorPlugin.js',
|
||||
outfile: 'tmp/browser/test-runner-pre-processor-plugin.html'
|
||||
}
|
||||
},
|
||||
visitorPlugin: {
|
||||
src: [`${lessFolder}/visitorPlugin/*.less`],
|
||||
options: {
|
||||
helpers: [
|
||||
'test/plugins/visitor/index.js',
|
||||
'test/browser/runner-VisitorPlugin-options.js'
|
||||
],
|
||||
specs: 'test/browser/runner-VisitorPlugin.js',
|
||||
outfile: 'tmp/browser/test-runner-visitor-plugin.html'
|
||||
}
|
||||
},
|
||||
filemanagerPlugin: {
|
||||
src: [`${lessFolder}/filemanagerPlugin/*.less`],
|
||||
options: {
|
||||
helpers: [
|
||||
'test/plugins/filemanager/index.js',
|
||||
'test/browser/runner-filemanagerPlugin-options.js'
|
||||
],
|
||||
specs: 'test/browser/runner-filemanagerPlugin.js',
|
||||
outfile: 'tmp/browser/test-runner-filemanager-plugin.html'
|
||||
}
|
||||
}
|
||||
}
|
2
my-app/node_modules/less/test/browser/generator/runner.js
generated
vendored
Executable file
2
my-app/node_modules/less/test/browser/generator/runner.js
generated
vendored
Executable file
|
@ -0,0 +1,2 @@
|
|||
const runner = require('./generate')
|
||||
runner()
|
83
my-app/node_modules/less/test/browser/generator/template.js
generated
vendored
Executable file
83
my-app/node_modules/less/test/browser/generator/template.js
generated
vendored
Executable file
|
@ -0,0 +1,83 @@
|
|||
const html = require('html-template-tag')
|
||||
|
||||
/**
|
||||
* Generates HTML templates from list of test sheets
|
||||
*/
|
||||
module.exports = (stylesheets, helpers, spec, less) => {
|
||||
if (!Array.isArray(helpers)) {
|
||||
helpers = [helpers]
|
||||
}
|
||||
return html`
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
|
||||
<title>Less.js Spec Runner</title>
|
||||
|
||||
<!-- for each test, generate CSS/LESS link tags -->
|
||||
$${stylesheets.map(function(fullLessName) {
|
||||
var pathParts = fullLessName.split('/');
|
||||
var fullCssName = fullLessName.replace(/\/less\//g, '/css/').replace(/less$/, 'css')
|
||||
var lessName = pathParts[pathParts.length - 1];
|
||||
var name = lessName.split('.')[0];
|
||||
return `
|
||||
<!-- the tags to be generated -->
|
||||
<link id="original-less:test-less-${name}" title="test-less-${name}" rel="stylesheet/less" type="text/css" href="../../${fullLessName}">
|
||||
<link id="expected-less:test-less-${name}" rel="stylesheet" type="text/css" href="../../${fullCssName}">
|
||||
` }).join('')}
|
||||
|
||||
$${helpers.map(helper => `
|
||||
<script src="../../${helper}"></script>
|
||||
`).join('')}
|
||||
|
||||
<link rel="stylesheet" href="../../node_modules/mocha/mocha.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!-- content -->
|
||||
<div id="mocha"></div>
|
||||
<script src="../../node_modules/mocha/mocha.js"></script>
|
||||
<script src="../../node_modules/mocha-teamcity-reporter/lib/teamcityBrowser.js"></script>
|
||||
<script src="../../node_modules/chai/chai.js"></script>
|
||||
<script>
|
||||
expect = chai.expect
|
||||
mocha.setup({
|
||||
ui: 'bdd',
|
||||
timeout: 2500
|
||||
});
|
||||
</script>
|
||||
<script src="common.js"></script>
|
||||
<script src="../../${spec}"></script>
|
||||
<script src="${less || 'less.min.js'}"></script>
|
||||
<script>
|
||||
/** Saucelabs config */
|
||||
onload = function() {
|
||||
var runner = mocha.run();
|
||||
|
||||
var failedTests = [];
|
||||
runner.on('end', function() {
|
||||
window.mochaResults = runner.stats;
|
||||
window.mochaResults.reports = failedTests;
|
||||
});
|
||||
|
||||
runner.on('fail', logFailure);
|
||||
|
||||
function logFailure(test, err){
|
||||
var flattenTitles = function(test){
|
||||
var titles = [];
|
||||
while (test.parent.title) {
|
||||
titles.push(test.parent.title);
|
||||
test = test.parent;
|
||||
}
|
||||
return titles.reverse();
|
||||
};
|
||||
|
||||
failedTests.push({name: test.title, result: false, message: err.message, stack: err.stack, titles: flattenTitles(test) });
|
||||
};
|
||||
};
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
`
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue