Skip to content

Commit 21bae25

Browse files
pangratzbmac
authored andcommitted
[BUGFIX beta] Ensure null is returned for Reference#value()
The documentation states that `null` is returned for `Reference#value()`, when it is not yet loaded. This commit fixes the bug where `undefined` has been returned for `BelongsToReference#value()`. (cherry picked from commit 88a80da)
1 parent 0f7df93 commit 21bae25

File tree

3 files changed

+8
-3
lines changed

3 files changed

+8
-3
lines changed

addon/-private/system/references/belongs-to.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,12 @@ BelongsToReference.prototype.push = function(objectOrPromise) {
5858

5959
BelongsToReference.prototype.value = function() {
6060
var inverseRecord = this.belongsToRelationship.inverseRecord;
61-
return inverseRecord && inverseRecord.record;
61+
62+
if (inverseRecord && inverseRecord.record) {
63+
return inverseRecord.record;
64+
}
65+
66+
return null;
6267
};
6368

6469
BelongsToReference.prototype.load = function() {

tests/integration/references/belongs-to-test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -331,7 +331,7 @@ if (isEnabled("ds-references")) {
331331
});
332332

333333
var familyReference = person.belongsTo('family');
334-
assert.equal(familyReference.value(), null);
334+
assert.strictEqual(familyReference.value(), null);
335335
});
336336

337337
test("value() returns the referenced record when loaded", function(assert) {

tests/integration/references/has-many-test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -337,7 +337,7 @@ if (isEnabled("ds-references")) {
337337
});
338338

339339
var personsReference = family.hasMany('persons');
340-
assert.equal(personsReference.value(), null);
340+
assert.strictEqual(personsReference.value(), null);
341341
});
342342

343343
test("value() returns the referenced records when all records are loaded", function(assert) {

0 commit comments

Comments
 (0)