Skip to content

Commit 13864a6

Browse files
authored
ci: windows (less#4213)
* chore: try run scripts directly * chore: only trigger windows ci * chore: remove resolve-bin * fix: windows ci * fix: windows path * chore: try path * chore: print gen * chore: remove linux test * chore: debug windows path * chore: compare unix system * chore: try change path * chore: noramlize path * chore: switch windows * fix: bug * chore: windows ci * chore: up timeout * chore: up timeout * chore: match more tests * chore: clean code * use path.posix.normalize * ci: debug path * chore: test utils * chore: update logic * chore: reduce diff content
1 parent 1b6dba1 commit 13864a6

File tree

7 files changed

+28
-51
lines changed

7 files changed

+28
-51
lines changed

.github/workflows/ci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
strategy:
3939
matrix:
4040
os: [ubuntu-latest]
41-
node: [10, 12, 14, 16, 19]
41+
node: [10, 12, 14, 16, 20]
4242
runs-on: ${{ matrix.os }}
4343
steps:
4444
- uses: actions/checkout@v2

package-lock.json

+1-26
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+1-2
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
"devDependencies": {
2929
"github-changes": "^1.1.2",
3030
"lerna": "^3.22.1",
31-
"npm-run-all": "^4.1.5",
32-
"resolve-bin": "~1.0.1"
31+
"npm-run-all": "^4.1.5"
3332
}
3433
}

packages/less/Gruntfile.js

+1-13
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
var resolve = require('resolve');
44
var path = require('path');
5-
var resolveBin = require('resolve-bin')
65

76
var testFolder = path.relative(process.cwd(), path.dirname(resolve.sync('@less/test-data')));
87
var lessFolder = path.join(testFolder, 'less');
@@ -184,12 +183,6 @@ module.exports = function(grunt) {
184183
// Make the SauceLabs jobs
185184
["all"].concat(browserTests).map(makeJob);
186185

187-
var path = require('path');
188-
189-
// Handle async / await in Rollup build for tests
190-
const tsNodeRuntime = resolveBin.sync('ts-node');
191-
const crossEnv = resolveBin.sync('cross-env');
192-
193186
// Project configuration.
194187
grunt.initConfig({
195188
shell: {
@@ -223,12 +216,7 @@ module.exports = function(grunt) {
223216
command: "node build/rollup.js --browser --out=./tmp/browser/less.min.js"
224217
},
225218
test: {
226-
command: [
227-
// https://github.com/TypeStrong/ts-node/issues/693#issuecomment-848907036
228-
crossEnv + " TS_NODE_SCOPE=true",
229-
tsNodeRuntime + " test/test-es6.ts",
230-
"node test/index.js"
231-
].join(' && ')
219+
command: 'ts-node test/test-es6.ts && node test/index.js'
232220
},
233221
generatebrowser: {
234222
command: 'node test/browser/generator/generate.js'

packages/less/test/browser/generator/runner.config.js

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
var path = require('path');
22
var resolve = require('resolve')
3+
var { forceCovertToBrowserPath } = require('./utils');
34

45
/** Root of repo */
5-
var rootFolder = path.resolve(__dirname, '../../../../../');
6-
var testFolder = path.dirname(resolve.sync('@less/test-data'))
7-
var lessFolder = path.join(testFolder, 'less');
8-
var localTests = path.resolve(__dirname, '..');
6+
var testFolder = forceCovertToBrowserPath(path.dirname(resolve.sync('@less/test-data')));
7+
var lessFolder = forceCovertToBrowserPath(path.join(testFolder, 'less'));
8+
var localTests = forceCovertToBrowserPath(path.resolve(__dirname, '..'));
99

1010
module.exports = {
1111
main: {
@@ -35,7 +35,7 @@ module.exports = {
3535
}
3636
},
3737
strictUnits: {
38-
src: [`${lessFolder}/strict-units/*.less`],
38+
src: [`${lessFolder}/units/strict/*.less`],
3939
options: {
4040
helpers: 'test/browser/runner-strict-units-options.js',
4141
specs: 'test/browser/runner-strict-units-spec.js',
@@ -185,4 +185,4 @@ module.exports = {
185185
outfile: 'tmp/browser/test-runner-filemanager-plugin.html'
186186
}
187187
}
188-
}
188+
}

packages/less/test/browser/generator/template.js

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
const html = require('html-template-tag')
22
const path = require('path')
3+
const { forceCovertToBrowserPath } = require('./utils')
34

45
const webRoot = path.resolve(__dirname, '../../../../../');
5-
const mochaDir = path.relative(webRoot, path.dirname(require.resolve('mocha')))
6-
const chaiDir = path.relative(webRoot, path.dirname(require.resolve('chai')))
7-
const mochaTeamCityDir = path.relative(webRoot, path.dirname(require.resolve('mocha-teamcity-reporter')))
6+
const mochaDir = forceCovertToBrowserPath(path.relative(webRoot, path.dirname(require.resolve('mocha'))))
7+
const chaiDir = forceCovertToBrowserPath(path.relative(webRoot, path.dirname(require.resolve('chai'))))
8+
const mochaTeamCityDir = forceCovertToBrowserPath(path.relative(webRoot, path.dirname(require.resolve('mocha-teamcity-reporter'))))
89

910
/**
1011
* Generates HTML templates from list of test sheets
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/**
2+
* utils for covert browser paths,
3+
* fix https://github.com/less/less.js/pull/4213
4+
*
5+
* @param {string} path
6+
* @returns {string}
7+
*/
8+
function forceCovertToBrowserPath (path) {
9+
return (path || '').replace(/\\/g, '/');
10+
}
11+
12+
module.exports = {
13+
forceCovertToBrowserPath
14+
}

0 commit comments

Comments
 (0)