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.
- 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
|