Merge pull request #1310 from strongloop/fix/regression-in-loopback-props
Add back loopback properties like modelBuilder
This commit is contained in:
commit
7e99912669
|
@ -49,19 +49,21 @@ loopback.version = require('../package.json').version;
|
||||||
|
|
||||||
loopback.mime = express.mime;
|
loopback.mime = express.mime;
|
||||||
|
|
||||||
Object.defineProperty(loopback, 'registry', {
|
Object.defineProperties(loopback, {
|
||||||
get: getGlobalRegistry
|
registry: {
|
||||||
});
|
get: getGlobalRegistry
|
||||||
|
},
|
||||||
Object.defineProperty(loopback, 'Model', {
|
Model: {
|
||||||
get: function() {
|
get: function() { return this.registry.getModel('Model'); }
|
||||||
return this.registry.getModel('Model');
|
},
|
||||||
}
|
PersistedModel: {
|
||||||
});
|
get: function() { return this.registry.getModel('PersistedModel'); }
|
||||||
|
},
|
||||||
Object.defineProperty(loopback, 'PersistedModel', {
|
defaultDataSources: {
|
||||||
get: function() {
|
get: function() { return this.registry.defaultDataSources; }
|
||||||
return this.registry.getModel('PersistedModel');
|
},
|
||||||
|
modelBuilder: {
|
||||||
|
get: function() { return this.registry.modelBuilder; }
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -399,6 +401,7 @@ loopback.autoAttachModel = function(ModelCtor) {
|
||||||
};
|
};
|
||||||
|
|
||||||
// temporary alias to simplify migration of code based on <=2.0.0-beta3
|
// temporary alias to simplify migration of code based on <=2.0.0-beta3
|
||||||
|
// TODO(bajtos) Remove this in v3.0
|
||||||
Object.defineProperty(loopback, 'DataModel', {
|
Object.defineProperty(loopback, 'DataModel', {
|
||||||
get: function() {
|
get: function() {
|
||||||
return this.registry.DataModel;
|
return this.registry.DataModel;
|
||||||
|
|
|
@ -27,6 +27,92 @@ describe('loopback', function() {
|
||||||
it.onServer('has `getCurrentContext` method', function() {
|
it.onServer('has `getCurrentContext` method', function() {
|
||||||
expect(loopback.getCurrentContext).to.be.a('function');
|
expect(loopback.getCurrentContext).to.be.a('function');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it.onServer('exports all expected properties', function() {
|
||||||
|
var EXPECTED = [
|
||||||
|
'ACL',
|
||||||
|
'AccessToken',
|
||||||
|
'Application',
|
||||||
|
'Change',
|
||||||
|
'Checkpoint',
|
||||||
|
'Connector',
|
||||||
|
'DataModel',
|
||||||
|
'DataSource',
|
||||||
|
'Email',
|
||||||
|
'GeoPoint',
|
||||||
|
'Mail',
|
||||||
|
'Memory',
|
||||||
|
'Model',
|
||||||
|
'PersistedModel',
|
||||||
|
'Remote',
|
||||||
|
'Role',
|
||||||
|
'RoleMapping',
|
||||||
|
'Route',
|
||||||
|
'Router',
|
||||||
|
'Scope',
|
||||||
|
'User',
|
||||||
|
'ValidationError',
|
||||||
|
'application',
|
||||||
|
'arguments',
|
||||||
|
'autoAttach',
|
||||||
|
'autoAttachModel',
|
||||||
|
'bodyParser',
|
||||||
|
'caller',
|
||||||
|
'compress',
|
||||||
|
'configureModel',
|
||||||
|
'context',
|
||||||
|
'cookieParser',
|
||||||
|
'cookieSession',
|
||||||
|
'createContext',
|
||||||
|
'createDataSource',
|
||||||
|
'createModel',
|
||||||
|
'csrf',
|
||||||
|
'defaultDataSources',
|
||||||
|
'directory',
|
||||||
|
'errorHandler',
|
||||||
|
'favicon',
|
||||||
|
'faviconFile',
|
||||||
|
'findModel',
|
||||||
|
'getCurrentContext',
|
||||||
|
'getDefaultDataSourceForType',
|
||||||
|
'getModel',
|
||||||
|
'getModelByType',
|
||||||
|
'isBrowser',
|
||||||
|
'isServer',
|
||||||
|
'json',
|
||||||
|
'length',
|
||||||
|
'logger',
|
||||||
|
'memory',
|
||||||
|
'methodOverride',
|
||||||
|
'mime',
|
||||||
|
'modelBuilder',
|
||||||
|
'name',
|
||||||
|
'prototype',
|
||||||
|
'query',
|
||||||
|
'registry',
|
||||||
|
'remoteMethod',
|
||||||
|
'request',
|
||||||
|
'response',
|
||||||
|
'responseTime',
|
||||||
|
'rest',
|
||||||
|
'runInContext',
|
||||||
|
'session',
|
||||||
|
'setDefaultDataSourceForType',
|
||||||
|
'static',
|
||||||
|
'status',
|
||||||
|
'template',
|
||||||
|
'timeout',
|
||||||
|
'token',
|
||||||
|
'urlNotFound',
|
||||||
|
'urlencoded',
|
||||||
|
'version',
|
||||||
|
'vhost'
|
||||||
|
];
|
||||||
|
|
||||||
|
var actual = Object.getOwnPropertyNames(loopback);
|
||||||
|
actual.sort();
|
||||||
|
expect(actual).to.eql(EXPECTED);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('loopback.createDataSource(options)', function() {
|
describe('loopback.createDataSource(options)', function() {
|
||||||
|
|
Loading…
Reference in New Issue