diff options
Diffstat (limited to 'alphabetlearning/static/scss/tests/sass-true')
-rw-r--r-- | alphabetlearning/static/scss/tests/sass-true/register.js | 14 | ||||
-rw-r--r-- | alphabetlearning/static/scss/tests/sass-true/runner.js | 17 |
2 files changed, 31 insertions, 0 deletions
diff --git a/alphabetlearning/static/scss/tests/sass-true/register.js b/alphabetlearning/static/scss/tests/sass-true/register.js new file mode 100644 index 0000000..d93e414 --- /dev/null +++ b/alphabetlearning/static/scss/tests/sass-true/register.js @@ -0,0 +1,14 @@ +'use strict' + +const path = require('node:path') + +const runnerPath = path.join(__dirname, 'runner').replace(/\\/g, '/') + +require.extensions['.scss'] = (module, filename) => { + const normalizedFilename = filename.replace(/\\/g, '/') + + return module._compile(` + const runner = require('${runnerPath}') + runner('${normalizedFilename}', { describe, it }) + `, filename) +} diff --git a/alphabetlearning/static/scss/tests/sass-true/runner.js b/alphabetlearning/static/scss/tests/sass-true/runner.js new file mode 100644 index 0000000..bef870a --- /dev/null +++ b/alphabetlearning/static/scss/tests/sass-true/runner.js @@ -0,0 +1,17 @@ +'use strict' + +const fs = require('node:fs') +const path = require('node:path') +const { runSass } = require('sass-true') + +module.exports = (filename, { describe, it }) => { + const data = fs.readFileSync(filename, 'utf8') + const TRUE_SETUP = '$true-terminal-output: false; @import "true";' + const sassString = TRUE_SETUP + data + + runSass( + { describe, it, sourceType: 'string' }, + sassString, + { loadPaths: [path.dirname(filename)] } + ) +} |