conditional
Version:
A preconditions package based on Google's Preconditions library
66 lines (61 loc) • 1.9 kB
JavaScript
(function() {
var IllegalValueError, checkNotNull, checkNull;
require('./helpers/test_helper');
checkNull = preconditions.checkNull, checkNotNull = preconditions.checkNotNull, IllegalValueError = preconditions.IllegalValueError;
describe('not null precondition test', function() {
it('undefined is null', function() {
var wrapper;
wrapper = function() {
return checkNotNull({}.x, 'not expecting null');
};
assert.throws(wrapper, IllegalValueError, 'not expecting null');
wrapper = function() {
return checkNull({}.x, 'null expected');
};
return assert.doesNotThrow(wrapper);
});
it('empty string is not null', function() {
var wrapper;
wrapper = function() {
return checkNotNull('');
};
return assert.doesNotThrow(wrapper);
});
it('empty array is not null', function() {
var wrapper;
wrapper = function() {
return checkNotNull([]);
};
return assert.doesNotThrow(wrapper);
});
it('empty object is not null', function() {
var wrapper;
wrapper = function() {
return checkNotNull({});
};
return assert.doesNotThrow(wrapper);
});
it('boolean is not null', function() {
var wrapper;
wrapper = function() {
return checkNotNull(false);
};
assert.doesNotThrow(wrapper);
wrapper = function() {
return checkNull(true);
};
return assert.throws(wrapper, IllegalValueError, "'true' is not null");
});
return it('0 (zero) is not null', function() {
var wrapper;
wrapper = function() {
return checkNotNull(0);
};
assert.doesNotThrow(wrapper);
wrapper = function() {
return checkNull(0);
};
return assert.throws(wrapper, IllegalValueError, "'0' is not null");
});
});
}).call(this);