Exemplo n.º 1
0
// ==========================================================================
// Project:   Spade - CommonJS Runtime
// Copyright: ©2010 Strobe Inc. All rights reserved.
// License:   Licened under MIT license (see __preamble__.js)
// ==========================================================================

var Ct = require('core-test/sync'),
    Spade = require('spade').Spade;

// ..........................................................
// BASIC REQUIRE
// 

Ct.module('spade: normalize');

Ct.setup(function(t) {
  t.spade = new Spade(); 
});

Ct.teardown(function(t) { 
  delete t.spade;
});

Ct.test('normalize', function(t) {
  var spade = t.spade;
  t.equal(spade.normalize('foo/bar'), 'foo/bar');
  t.equal(spade.normalize('./foo', 'bar/baz'), 'bar/foo');
  t.equal(spade.normalize('../foo', 'bar/baz'), 'foo/main');
  t.equal(spade.normalize('foo/../bar//foo/./baz', 'bar/baz'), 'bar/foo/baz');

  t.equal(spade.normalize('/foo/./bar'), 'foo/bar');
Exemplo n.º 2
0
// ==========================================================================
// Project:   Spade - CommonJS Runtime
// Copyright: ©2010 Strobe Inc. All rights reserved.
// License:   Licened under MIT license (see __preamble__.js)
// ==========================================================================

var Ct = require('core-test/sync'),
    Spade = require('spade').Spade;

Ct.module('spade: packages');

Ct.setup(function(t) {
  t.spade = new Spade(); 
});

Ct.teardown(function(t) { 
  delete t.spade;
});

Ct.test('should find registered package', function(t) {
  
  var spade = t.spade;
  spade.register('PKG', { name: 'PKG' });
  
  t.equal(spade.package('PKG').name, 'PKG');
  t.equal(spade.package('PKG/foo/bar').name, 'PKG');
  
});

Ct.test('should respect mappings', function(t) {
  
Exemplo n.º 3
0
// ==========================================================================
// Project:   Spade - CommonJS Runtime
// Copyright: ©2010 Strobe Inc. All rights reserved.
// License:   Licened under MIT license (see __preamble__.js)
// ==========================================================================

var Ct = require('core-test/sync'),
    Spade = require('spade').Spade;

// ..........................................................
// BASIC REQUIRE
// 

Ct.module('spade: relative require');

Ct.setup(function(t) {
  t.spade = new Spade(); 
  
  ['foo', 'bar'].forEach(function(id) {
    t.spade.register(id, { "name": id });
  });
  
  // register some dummy modules.  These will just set an 'id' prop on exports
  ['foo/bar', 'bar/main', 'foo/bar/baz'].forEach(function(id) {
    t.spade.register(id, function(r, e) { e.id = id; });
  });
  
});

Ct.teardown(function(t) { 
  delete t.spade;
Exemplo n.º 4
0
// ==========================================================================
// Project:   Spade - CommonJS Runtime
// Copyright: ©2011 Strobe Inc. All rights reserved.
// License:   Licened under MIT license (see __preamble__.js)
// ==========================================================================

var Ct = require('core-test/sync'),
    Spade = require('spade').Spade,
    Sandbox = require('spade').Sandbox;

Ct.module('spade: Sandbox preprocessor compilation');

Ct.setup(function(t) {
  t.sandbox = new Sandbox(new Spade());

  t.sandbox.spade.register('commenter', {
    'name': 'commenter',
    'plugin:preprocessors': ['commenter/preprocessor']
  });
  t.sandbox.spade.register('commenter/preprocessor',
    "exports.compilePreprocessor = function(code, _, filename){ "+
      "return '// From '+filename+'\\n'+code; "+
    "};");
});

Ct.teardown(function(t) { 
  delete t.sandbox;
});

Ct.test('normal', function(t){
  var pkg = t.sandbox.spade.package('commenter');
Exemplo n.º 5
0
// ==========================================================================
// Project:   Spade - CommonJS Runtime
// Copyright: ©2011 Strobe Inc. All rights reserved.
// License:   Licened under MIT license (see __preamble__.js)
// ==========================================================================

var Ct = require('core-test/sync'),
    Spade = require('spade').Spade,
    Sandbox = require('spade').Sandbox;

Ct.module('spade: Sandbox Miscellaneous');

Ct.setup(function(t){
  t.sandbox = new Sandbox(new Spade(), 'Test Sandbox');
});

Ct.teardown(function(t){
  delete t.sandbox;
});

Ct.test('toString', function(t){
  t.equal(t.sandbox.toString(), '[Sandbox Test Sandbox]');
});

Ct.test("exists", function(t){
  t.sandbox.spade.register('test', { name: 'test' });
  t.sandbox.spade.register('test/main', '');

  t.ok(t.sandbox.exists('test'), "test should exist");
  t.ok(!t.sandbox.exists('missing'), "missing should not exist");
});