From a99dfa98ff9776c67fd7fc8fd7ac1c32c752f6c9 Mon Sep 17 00:00:00 2001 From: bmac Date: Thu, 11 Jun 2015 16:27:30 -0400 Subject: [PATCH] Set the currentState when a record is created, not only when the state changes --- packages/ember-data/lib/system/model/internal-model.js | 3 ++- packages/ember-data/tests/unit/model-test.js | 10 ++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/ember-data/lib/system/model/internal-model.js b/packages/ember-data/lib/system/model/internal-model.js index dc6276c879d..94329d08f41 100644 --- a/packages/ember-data/lib/system/model/internal-model.js +++ b/packages/ember-data/lib/system/model/internal-model.js @@ -113,7 +113,8 @@ InternalModel.prototype = { id: this.id, store: this.store, container: this.container, - _internalModel: this + _internalModel: this, + currentState: get(this, 'currentState') }); this._triggerDeferredTriggers(); }, diff --git a/packages/ember-data/tests/unit/model-test.js b/packages/ember-data/tests/unit/model-test.js index 58aa5d8a949..48890115191 100644 --- a/packages/ember-data/tests/unit/model-test.js +++ b/packages/ember-data/tests/unit/model-test.js @@ -299,6 +299,16 @@ test("supports pushedData in root.deleted.uncommitted", function() { }); }); +test("currentState is accessible when the record is created", function() { + var record; + var hash = { id: 1 }; + run(function() { + record = store.push('person', hash); + equal(get(record, 'currentState.stateName'), 'root.loaded.saved', + 'records pushed into the store start in the loaded state'); + }); +}); + module("unit/model - DS.Model updating", { setup: function() {