node package manager

location

location

A mock location object for unit tests and such and to maintain compatibility between Ender.JS and Node.JS

For best results, create a location.config.js in the working directory of your app that returns a location object that should be used.

Current Implementation

var fs = require('fs')
  , location
  , defaultLocation
  ;

defaultLocation = {
  "origin": "http://localhost:3000",
  "pathname": "/",
  "host": "localhost:3000",
  "hostname": "localhost",
  "port": "3000",
  "search": "",
  "hash": "#home",
  "href": "http://localhost:3000/#home",
  "protocol": "http:"
};

try {
  // TODO try all from `__dirname` to `/` before giving up
  location = fs.readFileSync('./location.config.js');
} catch(e) {
  location = defaultLocation;
}

module.exports = location;

TODO

Look for __dirname + "location.config.js" and then look up one directory at each failure before finally giving up and using the default object.