ember-data-factory-guy 0.3.9 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +2 -1
- data/bower.json +1 -1
- data/dist/ember-data-factory-guy.js +15 -10
- data/dist/ember-data-factory-guy.min.js +1 -1
- data/ember-data-factory-guy.gemspec +1 -1
- data/package.json +8 -7
- data/src/factory_guy_test_mixin.js +4 -5
- data/src/store.js +11 -5
- data/tests/active_model_adapter_factory_test.js +27 -0
- data/tests/factory_guy_test.js +2 -2
- data/tests/rest_adapter_factory_test.js +14 -0
- data/tests/support/factories/material_factory.js +8 -0
- data/tests/support/factories/profile_factory.js +3 -1
- data/tests/support/libs/mockjax.js +600 -0
- data/tests/support/models/hat.js +4 -1
- data/tests/support/models/material.js +4 -0
- data/tests/support/models/profile.js +4 -2
- data/tests/support/test_helper.js +4 -0
- data/tests/test_setup.js +624 -4
- data/vendor/assets/javascripts/ember_data_factory_guy.js +15 -10
- metadata +6 -3
@@ -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 =
|
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.
|
773
|
-
|
774
|
-
|
775
|
-
|
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.
|
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-
|
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.
|
83
|
+
rubygems_version: 2.0.14
|
81
84
|
signing_key:
|
82
85
|
specification_version: 4
|
83
86
|
summary: Easily create Fixtures for Ember Data
|