felixge / felixge/node-sandboxed-module

locals does not appear to set variable inside the module

Open
#45 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
343
Forks
41
PR merge metrics
No merged PRs in 30d

Description

I'm trying to get locals working and suspect I'm doing something wrong as my scenario feels like it should be very basic.

In this simplified scenario, I have a test that should inject a local variable into my module which should override an existing variable. I then have an assertion that verifies the value was set.

mod.js looks like this

```
var foo = 'bar';

exports.getFoo = function(key){
return foo;
};
```

and modTests.js looks like this

```
var SandboxedModule = require('sandboxed-module');

var mod = SandboxedModule.require('../lib/mod', {
locals: { foo: 'baz' }
});

describe('mod', function(){
it('should have value bar', function(){
mod.getFoo().should.eql('baz');
});
});
```

When I run the tests, I get an error that the function returns undefined. Not sure whether I'm doing something wrong here (I suspect so, as this seems like a really basic scenario) or if there's an issue in the code (I did step into it a bit, but it appeared that the local was at least collected from the options).

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.