| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243 | 
							- process.env.NODESASS_COV ? require('../lib-cov') : require('../lib');
 
- var assert = require('assert'),
 
-   sass = require('../lib/extensions'),
 
-   binding = require(sass.getBinaryPath());
 
- describe('lowlevel', function() {
 
-   it('fail with options not an object', function(done) {
 
-     var options =  2;
 
-     assert.throws(function() {
 
-       binding.renderSync(options);
 
-     }, /"result" element is not an object/);
 
-     done();
 
-   });
 
-   it('data context with options.data not provided', function(done) {
 
-     var options =  {
 
-       /* data: */
 
-       sourceComments: false,
 
-       file: null,
 
-       outFile: null,
 
-       includePaths: '',
 
-       precision: 5,
 
-       sourceMap: null,
 
-       style: 0,
 
-       indentWidth: 2,
 
-       indentType: 0,
 
-       linefeed: '\n',
 
-       result: { stats: {} } };
 
-     binding.renderSync(options);
 
-     assert(/Data context created without a source string/.test(options.result.error),
 
-           'Should fail with error message "Data context created without a source string"');
 
-     done();
 
-   });
 
-   it('data context with both options.data and options.file not provided', function(done) {
 
-     var options =  {
 
-       /* data: */
 
-       sourceComments: false,
 
-       /* file: null, */
 
-       outFile: null,
 
-       includePaths: '',
 
-       precision: 5,
 
-       sourceMap: null,
 
-       style: 0,
 
-       indentWidth: 2,
 
-       indentType: 0,
 
-       linefeed: '\n',
 
-       result: { stats: {} } };
 
-     binding.renderSync(options);
 
-     assert(/Data context created without a source string/.test(options.result.error),
 
-           'Should fail with error message "Data context created without a source string"');
 
-     done();
 
-   });
 
-   it('file context with both options.data and options.file not provided', function(done) {
 
-     var options =  {
 
-       /* data: */
 
-       sourceComments: false,
 
-       /* file: null, */
 
-       outFile: null,
 
-       includePaths: '',
 
-       precision: 5,
 
-       sourceMap: null,
 
-       style: 0,
 
-       indentWidth: 2,
 
-       indentType: 0,
 
-       linefeed: '\n',
 
-       result: { stats: {} } };
 
-     binding.renderFileSync(options);
 
-     assert(/File context created without an input path/.test(options.result.error),
 
-           'Should fail with error message "File context created without an input path"');
 
-     done();
 
-   });
 
-   it('file context with options.file not provided, options.data given', function(done) {
 
-     var options =  {
 
-       data: 'div { width: 10px; } ',
 
-       sourceComments: false,
 
-       /* file: null, */
 
-       outFile: null,
 
-       includePaths: '',
 
-       precision: 5,
 
-       sourceMap: null,
 
-       style: 0,
 
-       indentWidth: 2,
 
-       indentType: 0,
 
-       linefeed: '\n',
 
-       result: { stats: {} } };
 
-     binding.renderFileSync(options);
 
-     assert(/File context created without an input path/.test(options.result.error),
 
-           'Should fail with error message "File context created without an input path"');
 
-     done();
 
-   });
 
-   it('fail with options.result not provided', function(done) {
 
-     var options =  { data: 'div { width: 10px; } ',
 
-       sourceComments: false,
 
-       file: null,
 
-       outFile: null,
 
-       includePaths: '',
 
-       precision: 5,
 
-       sourceMap: null,
 
-       style: 0,
 
-       indentWidth: 2,
 
-       indentType: 0,
 
-       linefeed: '\n' };
 
-     assert.throws(function() {
 
-       binding.renderSync(options);
 
-     }, /"result" element is not an object/);
 
-     done();
 
-   });
 
-   it('fail with options.result not an object', function(done) {
 
-     var options =  { data: 'div { width: 10px; } ',
 
-       sourceComments: false,
 
-       file: null,
 
-       outFile: null,
 
-       includePaths: '',
 
-       precision: 5,
 
-       sourceMap: null,
 
-       style: 0,
 
-       indentWidth: 2,
 
-       indentType: 0,
 
-       linefeed: '\n',
 
-       result: 2 };
 
-     assert.throws(function() {
 
-       binding.renderSync(options);
 
-     }, /"result" element is not an object/);
 
-     done();
 
-   });
 
-   it('fail with options.result.stats not provided', function(done) {
 
-     var options =  { data: 'div { width: 10px; } ',
 
-       sourceComments: false,
 
-       file: null,
 
-       outFile: null,
 
-       includePaths: '',
 
-       precision: 5,
 
-       sourceMap: null,
 
-       style: 0,
 
-       indentWidth: 2,
 
-       indentType: 0,
 
-       linefeed: '\n',
 
-       result: {} };
 
-     assert.throws(function() {
 
-       binding.renderSync(options);
 
-     }, /"result.stats" element is not an object/);
 
-     done();
 
-   });
 
-   it('fail with options.result.stats not an object', function(done) {
 
-     var options =  { data: 'div { width: 10px; } ',
 
-       sourceComments: false,
 
-       file: null,
 
-       outFile: null,
 
-       includePaths: '',
 
-       precision: 5,
 
-       sourceMap: null,
 
-       style: 0,
 
-       indentWidth: 2,
 
-       indentType: 0,
 
-       linefeed: '\n',
 
-       result: { stats: 2 } };
 
-     assert.throws(function() {
 
-       binding.renderSync(options);
 
-     }, /"result.stats" element is not an object/);
 
-     done();
 
-   });
 
-   it('options.indentWidth not provided', function(done) {
 
-     var options =  { data: 'div { width: 10px; }',
 
-       sourceComments: false,
 
-       file: null,
 
-       outFile: null,
 
-       includePaths: '',
 
-       precision: 5,
 
-       sourceMap: null,
 
-       style: 0,
 
-       /* indentWidth */
 
-       indentType: 0,
 
-       linefeed: '\n',
 
-       result: { stats: {} } };
 
-     binding.renderSync(options);
 
-     assert(options.result.css);
 
-     done();
 
-   });
 
-   it('empty data string', function(done) {
 
-     var options =  { data: '',
 
-       sourceComments: false,
 
-       file: null,
 
-       outFile: null,
 
-       includePaths: '',
 
-       precision: 5,
 
-       sourceMap: null,
 
-       style: 0,
 
-       /* indentWidth */
 
-       indentType: 0,
 
-       linefeed: '\n',
 
-       result: { stats: {} } };
 
-     binding.renderSync(options);
 
-     assert(/empty source string/.test(options.result.error),
 
-           'Should fail with error message "Data context created with empty source string"');
 
-     done();
 
-   });
 
-   it('empty file string', function(done) {
 
-     var options =  {
 
-       sourceComments: false,
 
-       file: '',
 
-       outFile: null,
 
-       includePaths: '',
 
-       precision: 5,
 
-       sourceMap: null,
 
-       style: 0,
 
-       /* indentWidth */
 
-       indentType: 0,
 
-       linefeed: '\n',
 
-       result: { stats: {} } };
 
-     binding.renderFileSync(options);
 
-     assert(/empty input path/.test(options.result.error),
 
-           'Should fail with error message "File context created with empty input path"');
 
-     done();
 
-   });
 
- }); // lowlevel
 
 
  |