-
Notifications
You must be signed in to change notification settings - Fork 34
Description
Bug
eject is currently treated as a command rather than an operation on commands, and as such any given command's eject method is passed a unique Helper rather than that associated with the command. As a result, it is not possible to access the command's options in the dojorc, as the helper's configuration uses eject as its internal key, so helper.configuration.get() actually reads from the non-existent eject key. This also means that calling helper.configuration.set() from within eject methods across commands results in multiple writes to the same object.
Package Version:
Code
// dojorc
{
"my-command": {
"hello": "world"
}
}
```typescript
eject(helper: Helper) {
console.log(helper.configuration.get());
helper.configuration.set({ "hello": "dojo 2 world" });
}
Expected behavior:
{ "hello": "world" } is logged to the console and the dojorc is updated to:
{
"my-command": { "hello": "dojo 2 world" }
}
Actual behavior:
{} is logged to the console as there is no eject key, and the dojorc is updated to:
{
"my-command": { "hello": "world" },
"eject": { "hello": "dojo 2 world" }
}