var less = {
    logLevel: 4, 
    errorReporting: 'console', 
    javascriptEnabled: true,
    math: 'always'
};

// test inline less in style tags by grabbing an assortment of less files and doing `@import`s
var testFiles = ['charsets/charsets', 'color-functions/basic', 'comments/comments', 'css-3/css-3', 'strings/strings', 'media/media', 'mixins/mixins'],
    testSheets = [];

// setup style tags with less and link tags pointing to expected css output

/**
 * @todo - generate the node_modules path for this file and in templates
 */
var lessFolder = '../../node_modules/@less/test-data/tests-unit'
var cssFolder = '../../node_modules/@less/test-data/tests-unit'

for (var i = 0; i < testFiles.length; i++) {
    var file = testFiles[i],
        lessPath  = lessFolder + '/' + file + '.less',
        cssPath   = cssFolder + '/' + file + '.css',
        lessStyle = document.createElement('style'),
        cssLink   = document.createElement('link'),
        lessText  = '@import "' + lessPath + '";';

    lessStyle.type = 'text/less';
    lessStyle.id = file;
    lessStyle.href = file;

    if (lessStyle.styleSheet === undefined) {
        lessStyle.appendChild(document.createTextNode(lessText));
    }

    cssLink.rel = 'stylesheet';
    cssLink.type = 'text/css';
    cssLink.href = cssPath;
    cssLink.id = 'expected-' + file;

    var head = document.getElementsByTagName('head')[0];

    head.appendChild(lessStyle);

    if (lessStyle.styleSheet) {
        lessStyle.styleSheet.cssText = lessText;
    }

    head.appendChild(cssLink);
    testSheets[i] = lessStyle;
}
