48 lines
1.4 KiB
JavaScript
48 lines
1.4 KiB
JavaScript
// Copyright IBM Corp. 2016. All Rights Reserved.
|
|
// Node module: loopback-datasource-juggler
|
|
// This file is licensed under the MIT License.
|
|
// License text available at https://opensource.org/licenses/MIT
|
|
'use strict';
|
|
|
|
var should = require('./init.js');
|
|
var DataSource = require('../lib/datasource.js').DataSource;
|
|
|
|
describe('DataSource', function() {
|
|
it('reports helpful error when connector init throws', function() {
|
|
var throwingConnector = {
|
|
name: 'loopback-connector-throwing',
|
|
initialize: function(ds, cb) {
|
|
throw new Error('expected test error');
|
|
},
|
|
};
|
|
|
|
(function() {
|
|
// this is what LoopBack does
|
|
return new DataSource({
|
|
name: 'dsname',
|
|
connector: throwingConnector,
|
|
});
|
|
}).should.throw(/loopback-connector-throwing/);
|
|
});
|
|
|
|
it('reports helpful error when connector init via short name throws', function() {
|
|
(function() {
|
|
// this is what LoopBack does
|
|
return new DataSource({
|
|
name: 'dsname',
|
|
connector: 'throwing',
|
|
});
|
|
}).should.throw(/expected test error/);
|
|
});
|
|
|
|
it('reports helpful error when connector init via long name throws', function() {
|
|
(function() {
|
|
// this is what LoopBack does
|
|
return new DataSource({
|
|
name: 'dsname',
|
|
connector: 'loopback-connector-throwing',
|
|
});
|
|
}).should.throw(/expected test error/);
|
|
});
|
|
});
|