ember-data-factory-guy 0.3.9 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -390,9 +390,10 @@ DS.Store.reopen({
390
390
  @returns {Object|DS.Model} json or record depending on the adapter type
391
391
  */
392
392
  makeFixture: function (name, options) {
393
+ var store = this;
393
394
  var modelName = FactoryGuy.lookupModelForFixtureName(name);
394
395
  var fixture = FactoryGuy.build(name, options);
395
- var modelType = this.modelFor(modelName);
396
+ var modelType = store.modelFor(modelName);
396
397
 
397
398
  if (this.usingFixtureAdapter()) {
398
399
  this.setAssociationsForFixtureAdapter(modelType, modelName, fixture);
@@ -406,6 +407,7 @@ DS.Store.reopen({
406
407
  // assuming its polymorphic if there is a type attribute
407
408
  // is this too bold an assumption?
408
409
  modelName = fixture.type.underscore();
410
+ modelType = store.modelFor(modelName);
409
411
  }
410
412
  model = store.push(modelName, fixture);
411
413
  store.setAssociationsForRESTAdapter(modelType, modelName, model);
@@ -543,12 +545,16 @@ DS.Store.reopen({
543
545
  var self = this;
544
546
  Ember.get(modelType, 'relationshipsByName').forEach(function (name, relationship) {
545
547
  if (relationship.kind == 'hasMany') {
546
- var belongsToName = modelName;
547
- if (relationship.options && relationship.options.inverse) {
548
- belongsToName = relationship.options.inverse;
549
- }
550
548
  var children = model.get(name) || [];
551
549
  children.forEach(function (child) {
550
+ var belongsToName = self.findRelationshipName(
551
+ 'belongsTo',
552
+ child.constructor,
553
+ model
554
+ );
555
+ if (relationship.options && relationship.options.inverse) {
556
+ belongsToName = relationship.options.inverse;
557
+ }
552
558
  child.set(belongsToName, model);
553
559
  })
554
560
  }
@@ -769,11 +775,10 @@ FactoryGuyTestMixin = Em.Mixin.create({
769
775
  */
770
776
  handleCreate: function (name, opts) {
771
777
  var model = FactoryGuy.lookupModelForFixtureName(name);
772
- this.stubEndpointForHttpRequest(
773
- "/" + Em.String.pluralize(model),
774
- this.buildAjaxCreateResponse(name, opts),
775
- {type: 'POST'}
776
- )
778
+ var responseJson = this.buildAjaxCreateResponse(name, opts);
779
+ var url = "/" + Em.String.pluralize(model);
780
+ this.stubEndpointForHttpRequest(url, responseJson, {type: 'POST'})
781
+ return responseJson;
777
782
  },
778
783
 
779
784
  /**
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ember-data-factory-guy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.9
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Sudol
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-06-05 00:00:00.000000000 Z
12
+ date: 2014-06-13 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: Easily create Fixtures for Ember Data
15
15
  email:
@@ -44,12 +44,15 @@ files:
44
44
  - tests/store_test.js
45
45
  - tests/support/factories/company_factory.js
46
46
  - tests/support/factories/hat_factory.js
47
+ - tests/support/factories/material_factory.js
47
48
  - tests/support/factories/profile_factory.js
48
49
  - tests/support/factories/project_factory.js
49
50
  - tests/support/factories/user_factory.js
51
+ - tests/support/libs/mockjax.js
50
52
  - tests/support/libs/sinon.js
51
53
  - tests/support/models/company.js
52
54
  - tests/support/models/hat.js
55
+ - tests/support/models/material.js
53
56
  - tests/support/models/profile.js
54
57
  - tests/support/models/project.js
55
58
  - tests/support/models/user.js
@@ -77,7 +80,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
77
80
  version: 1.3.6
78
81
  requirements: []
79
82
  rubyforge_project: ember-data-factory-guy
80
- rubygems_version: 2.0.3
83
+ rubygems_version: 2.0.14
81
84
  signing_key:
82
85
  specification_version: 4
83
86
  summary: Easily create Fixtures for Ember Data