Skip to content

Commit

Permalink
chore(require): Testing the use of require-namespace
Browse files Browse the repository at this point in the history
Change-Id: I59729f494f62ada9a38594e99aa6dfe34ea91c7e
  • Loading branch information
rafinskipg committed Jun 5, 2015
1 parent 6dad0f4 commit 4ef6504
Show file tree
Hide file tree
Showing 15 changed files with 102 additions and 47 deletions.
8 changes: 8 additions & 0 deletions bin/composer
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
#!/usr/bin/env node
var debug = require('debug')('expressapp');

var namespace = require('require-namespace');

namespace.createSync(__dirname + '/../src/lib/', 'lib');
namespace.createSync(__dirname + '/../src/utils/', 'utils');
namespace.createSync(__dirname + '/../src/config/', 'config');
namespace.createSync(__dirname + '/../src/routes/', 'routes');

var app = require('../src/app');

app.set('port', process.env.PORT || 3000);
Expand Down
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@
"q": "^1.2.0",
"raml-parser": "~0.8.10",
"raml2html": "~1.6.0",
"require-namespace": "^0.3.44",
"response-time": "^2.3.0",
"serve-favicon": "^2.2.0",
"syntax-error": "~1.1.3",
Expand Down
10 changes: 7 additions & 3 deletions src/app.js
Original file line number Diff line number Diff line change
@@ -1,21 +1,25 @@
'use strict';

//External modules
var express = require('express'),
path = require('path'),
favicon = require('serve-favicon'),
morgan = require('morgan'),
cookieParser = require('cookie-parser'),
bodyParser = require('body-parser'),
engine = require('./lib/engine'),
ComposerError = require('./lib/composerError'),
config = require('./lib/config'),
timeout = require('connect-timeout'),
responseTime = require('response-time'),
cors = require('cors'),
corbel = require('corbel-js'),
fs = require('fs'),
namespace = require('require-namespace'),
app = express();

//CompoSR modules
var engine = namespace.lib.engine,
ComposerError = namespace.lib.composerError,
config = namespace.lib.config;

var ERROR_CODE_SERVER_TIMEOUT = 503;
var DEFAULT_TIMEOUT = 10000;

Expand Down
9 changes: 6 additions & 3 deletions src/lib/auth.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
'use strict';

var validator = require('./validate'),
ComposerError = require('./composerError');
var namespace = require('require-namespace');

//CompoSR modules
var validator = namespace.lib.validate,
ComposerError = namespace.lib.composerError;

var getAuth = function(req) {
validator.isValue(req, 'undefined:req');
Expand All @@ -10,7 +13,7 @@ var getAuth = function(req) {

if (!auth) {
throw new ComposerError('missing:header:authorization', 'Authorization header not found', 401);
}
}

return auth;
};
Expand Down
13 changes: 8 additions & 5 deletions src/lib/bootstrap.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,15 @@

var express = require('express'),
router = express.Router(),
phraseManager = require('./phraseManager'),
ComposerError = require('./composerError'),
connection = require('./corbelConnection'),
q = require('q'),
config = require('./config'),
logger = require('../utils/logger');
namespace = require('require-namespace');

//CompoSR modules
var phraseManager = namespace.lib.phraseManager,
connection = namespace.lib.corbelConnection,
ComposerError = namespace.lib.composerError,
config = namespace.lib.config,
logger = namespace.utils.logger;

var PAGE_SIZE = 10;

Expand Down
12 changes: 9 additions & 3 deletions src/lib/compoSRBuilder.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
'use strict';

var snippetsBundler = require('./snippetsBundler');
var namespace = require('require-namespace');

//CompoSR modules
var snippetsBundler = namespace.lib.snippetsBundler;
/**
Returns the snippets runner for being embebed into the phrases executions
**/
Expand All @@ -24,12 +26,16 @@ function getCompoSR(domain){
name : 'json',
code: 'params.res.send({ hello2 : params.message})'
}
]
],

'composr' : {

}
};

return snippetsBundler.getRunner(domain, snippets);
}

module.exports = {
getCompoSR : getCompoSR
};
};
5 changes: 4 additions & 1 deletion src/lib/config.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@

var _ = require('lodash'),
fs = require('fs'),
ComposerError = require('./composerError');
namespace = require('require-namespace');

//CompoSR modules
var ComposerError = namespace.lib.composerError;

var env = process.env.NODE_ENV || 'development';
var config = require('../config/config.json');
Expand Down
11 changes: 8 additions & 3 deletions src/lib/corbelConnection.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
'use strict';

var corbel = require('corbel-js'),
config = require('./config'),
_ = require('lodash'),
ComposerError = require('./composerError'),
logger = require('../utils/logger');
namespace = require('require-namespace');

//CompoSR modules
var ComposerError = namespace.lib.composerError,
config = namespace.lib.config,
logger = namespace.utils.logger;

var PHRASES_COLLECTION = 'composr:Phrase';

Expand All @@ -21,6 +24,8 @@ var onConnectPromise = corbelDriver.iam.token().create().then(function() {
throw new ComposerError('error:composer:corbel:token', '', 401);
});



var extractDomain = function(accessToken) {
var atob = require('atob');
var decoded = accessToken.replace('Bearer ', '').split('.');
Expand Down
11 changes: 7 additions & 4 deletions src/lib/docBuilder.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
'use strict';

var config = require('./config'),
raml = require('raml-parser'),
var raml = require('raml-parser'),
YAML = require('yamljs'),
validate = require('./validate'),
_ = require('lodash');
_ = require('lodash'),
namespace = require('require-namespace');

//CompoSR modules
var config = namespace.lib.config,
validate = namespace.lib.validate;

var buildPhraseDefinition = function(phrase) {
var doc = {};
Expand Down
9 changes: 6 additions & 3 deletions src/lib/engine.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
'use strict';

var bootstrap = require('./bootstrap'),
worker = require('./worker'),
routes = require('../routes');
var namespace = require('require-namespace');

//CompoSR modules
var worker = namespace.lib.worker,
bootstrap = namespace.lib.bootstrap,
routes = namespace.routes;

//Add necesary middlewares to express
function middlewares(app){
Expand Down
21 changes: 13 additions & 8 deletions src/lib/phraseManager.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,21 @@
'use strict';


var validate = require('./validate'),
corbel = require('corbel-js'),
config = require('./config'),
phrases = require('./phrasesData'),
ComposerError = require('./composerError'),
compoSRBuilder = require('./compoSRBuilder'),
var corbel = require('corbel-js'),
tripwire = require('tripwire'),
logger = require('../utils/logger'),
_ = require('lodash'),
q = require('q');
q = require('q'),
namespace = require('require-namespace');

//CompoSR modules
var config = namespace.lib.config,
ComposerError = namespace.lib.composerError,
compoSRBuilder = namespace.lib.compoSRBuilder,
logger = namespace.utils.logger,
validate = namespace.lib.validate,
phrases = namespace.lib.phrasesData;



var executePhrase = function executePhrase(context, compoSR, phraseBody){
var domain = require('domain').create();
Expand Down
11 changes: 7 additions & 4 deletions src/lib/phraseValidator.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,13 @@

/* jshint evil:true */

var validator = require('./validate'),
check = require('syntax-error'),
docBuilder = require('./docBuilder'),
ComposerError = require('./composerError');
var check = require('syntax-error'),
namespace = require('require-namespace');

//CompoSR modules
var docBuilder = namespace.lib.docBuilder,
ComposerError = namespace.lib.composerError,
validator = namespace.lib.validate;

/**
* Validates if a phrase is well formed
Expand Down
8 changes: 6 additions & 2 deletions src/lib/validate.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
'use strict';

var ComposerError = require('../lib/composerError');
var namespace = require('require-namespace');

//CompoSR modules
var ComposerError = namespace.lib.composerError;

/**
* Checks if some value is not undefined
* @param {Mixed} value
Expand Down Expand Up @@ -99,4 +103,4 @@ module.exports.failIfIsDefined = failIfIsDefined;
module.exports.isNotNull = isNotNull;
module.exports.isValue = isValue;
module.exports.isGreaterThan = isGreaterThan;
module.exports.isGreaterThanOrEqual = isGreaterThanOrEqual;
module.exports.isGreaterThanOrEqual = isGreaterThanOrEqual;
15 changes: 9 additions & 6 deletions src/lib/worker.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
'use strict';

var phraseManager = require('./phraseManager'),
connection = require('./corbelConnection'),
express = require('express'),
var express = require('express'),
router = express.Router(),
amqp = require('amqplib'),
uuid = require('uuid'),
ComposerError = require('./composerError'),
config = require('./config'),
logger = require('../utils/logger');
namespace = require('require-namespace');

//CompoSR modules
var config = namespace.lib.config,
ComposerError = namespace.lib.composerError,
connection = namespace.lib.corbelConnection,
phraseManager = namespace.lib.phraseManager,
logger = namespace.utils.logger;

var worker = function() {

Expand Down
5 changes: 3 additions & 2 deletions test/runner.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
'use strict';

// Unit
require('./unit/test-suite.js');

var app = require('../bin/composer');

// Unit
require('./unit/test-suite.js');
// Integration
require('./integration/test-suite.js')(app);

0 comments on commit 4ef6504

Please sign in to comment.