Skip to content

Commit

Permalink
add benchmarks for creating sourcemaps
Browse files Browse the repository at this point in the history
  • Loading branch information
romainmenke committed Sep 16, 2023
1 parent d42036a commit e68f6f7
Show file tree
Hide file tree
Showing 2 changed files with 69 additions and 2 deletions.
4 changes: 2 additions & 2 deletions gulpfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ gulp.task('bootstrap', async () => {
})
})

for (let name of ['preprocessors', 'parsers', 'prefixers', 'tokenizers', 'linters']) {
for (let name of ['preprocessors', 'parsers', 'prefixers', 'tokenizers', 'linters', 'sourcemaps']) {
gulp.task(
name,
gulp.series('bootstrap', () => {
Expand All @@ -47,5 +47,5 @@ for (let name of ['preprocessors', 'parsers', 'prefixers', 'tokenizers', 'linter

gulp.task(
'default',
gulp.series('preprocessors', 'parsers', 'prefixers', 'tokenizers', 'linters')
gulp.series('preprocessors', 'parsers', 'prefixers', 'tokenizers', 'linters', 'sourcemaps')
)
67 changes: 67 additions & 0 deletions sourcemaps.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
/* Results on Node 20.3.1, Github Actions:
TODO
*/

let { existsSync, readFileSync } = require('fs')
let { join } = require('path')
const postcss = require('postcss')

let example = join(__dirname, 'cache', 'bootstrap.css')
let css = readFileSync(example).toString()

module.exports = {
maxTime: 15,
name: 'Sourcemaps',
tests: [
{
defer: true,
fn: done => {
{
let root = postcss.parse(css, { from: example })
root.toResult({ map: { inline: false }, to: 'dist/bootstrap.css' }).map.toJSON()
}

{
let root = postcss.parse(css, { from: example })
root.toResult({ map: { absolute: true, inline: false }, to: 'dist/bootstrap.css' }).map.toJSON()
}

{
let root = postcss.parse(css, { from: example })
root.toResult({ map: { inline: true }, to: 'dist/bootstrap.css' })
}

done.resolve()
},
name: 'PostCSS'
}
]
}

let devPath = join(__dirname, '../postcss/lib/postcss.js')
if (existsSync(devPath)) {
let devPostcss = require(devPath)
module.exports.tests.splice(1, 0, {
defer: true,
fn: done => {
{
let root = devPostcss.parse(css, { from: example })
root.toResult({ map: { inline: false }, to: 'dist/bootstrap.css' }).map.toJSON()
}

{
let root = devPostcss.parse(css, { from: example })
root.toResult({ map: { absolute: true, inline: false }, to: 'dist/bootstrap.css' }).map.toJSON()
}

{
let root = devPostcss.parse(css, { from: example })
root.toResult({ map: { inline: true }, to: 'dist/bootstrap.css' })
}

done.resolve()
},
name: 'Next PostCSS'
})
}

0 comments on commit e68f6f7

Please sign in to comment.