4ad691fa2f
The Consul API can pass through `Value: null` which does not get cast to a string by ember-data. This snowballs into problems with `atob` which then tried to decode `null`. There are 2 problems here. 1. `Value` should never be `null` - I've added a removeNull function to shallowly loop though props and remove properties that are `null`, for the moment this is only on single KV JSON responses - therefore `Value` will never be `null` which is the root of the problem 2. `atob` doesn't quite follow the `window.atob` API in that the `window.atob` API casts everything down to a string first, therefore it will try to decode `null` > `'null'` > `crazy unicode thing`. - I've commented in a fix for this, but whilst this shouldn't be causing anymore problems in our UI (now that `Value` is never `null`), I'll uncomment it in another future release. Tests are already written for it which more closely follow `window.atob` but skipped for now (next commit) |
||
---|---|---|
.. | ||
model | ||
ascend-test.js | ||
atob-test.js | ||
callable-type-test.js | ||
confirm-test.js | ||
createURL-test.js | ||
get-component-factory-test.js | ||
hasStatus-test.js | ||
injectableRequestToJQueryAjaxHash-test.js | ||
isFolder-test.js | ||
keyToArray-test.js | ||
left-trim-test.js | ||
makeAttrable-test.js | ||
promisedTimeout-test.js | ||
qsa-factory-test.js | ||
remove-null-test.js | ||
right-trim-test.js | ||
sumOfUnhealthy-test.js | ||
ucfirst-test.js |