ember-source 1.8.0.beta.1 → 1.8.0.beta.2
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/VERSION +1 -1
- data/dist/ember-runtime.js +413 -284
- data/dist/ember-tests.js +216 -79
- data/dist/ember-tests.prod.js +59094 -0
- data/dist/ember.js +454 -322
- data/dist/ember.min.js +12 -12
- data/dist/ember.prod.js +367 -321
- metadata +3 -2
data/dist/ember-tests.js
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
* Portions Copyright 2008-2011 Apple Inc. All rights reserved.
|
6
6
|
* @license Licensed under MIT license
|
7
7
|
* See https://raw.github.com/emberjs/ember.js/master/LICENSE
|
8
|
-
* @version 1.8.0-beta.
|
8
|
+
* @version 1.8.0-beta.2
|
9
9
|
*/
|
10
10
|
|
11
11
|
(function() {
|
@@ -5221,6 +5221,29 @@ define("ember-handlebars/tests/controls/text_field_test",
|
|
5221
5221
|
equal(textField.$('input').attr('tabindex'), "5", "renders text field with the tabindex");
|
5222
5222
|
});
|
5223
5223
|
|
5224
|
+
QUnit.module("{{input type='text'}} - dynamic type", {
|
5225
|
+
setup: function() {
|
5226
|
+
controller = {
|
5227
|
+
someProperty: 'password'
|
5228
|
+
};
|
5229
|
+
|
5230
|
+
textField = View.extend({
|
5231
|
+
controller: controller,
|
5232
|
+
template: compile('{{input type=someProperty}}')
|
5233
|
+
}).create();
|
5234
|
+
|
5235
|
+
append();
|
5236
|
+
},
|
5237
|
+
|
5238
|
+
teardown: function() {
|
5239
|
+
destroy(textField);
|
5240
|
+
}
|
5241
|
+
});
|
5242
|
+
|
5243
|
+
test("should insert a text field into DOM", function() {
|
5244
|
+
equal(textField.$('input').attr('type'), 'password', "a bound property can be used to determine type.");
|
5245
|
+
});
|
5246
|
+
|
5224
5247
|
QUnit.module("{{input}} - default type", {
|
5225
5248
|
setup: function() {
|
5226
5249
|
controller = {};
|
@@ -13681,6 +13704,15 @@ define("ember-metal/dependent_keys.jshint",
|
|
13681
13704
|
ok(true, 'ember-metal/dependent_keys.js should pass jshint.');
|
13682
13705
|
});
|
13683
13706
|
});
|
13707
|
+
define("ember-metal/deprecate_property.jshint",
|
13708
|
+
[],
|
13709
|
+
function() {
|
13710
|
+
"use strict";
|
13711
|
+
module('JSHint - ember-metal');
|
13712
|
+
test('ember-metal/deprecate_property.js should pass jshint', function() {
|
13713
|
+
ok(true, 'ember-metal/deprecate_property.js should pass jshint.');
|
13714
|
+
});
|
13715
|
+
});
|
13684
13716
|
define("ember-metal/dictionary.jshint",
|
13685
13717
|
[],
|
13686
13718
|
function() {
|
@@ -16269,11 +16301,13 @@ define("ember-metal/tests/computed_test.jshint",
|
|
16269
16301
|
});
|
16270
16302
|
});
|
16271
16303
|
define("ember-metal/tests/core/inspect_test",
|
16272
|
-
["ember-metal/utils","ember-metal/core"],
|
16273
|
-
function(__dependency1__, __dependency2__) {
|
16304
|
+
["ember-metal/utils","ember-metal/platform","ember-metal/core"],
|
16305
|
+
function(__dependency1__, __dependency2__, __dependency3__) {
|
16274
16306
|
"use strict";
|
16275
16307
|
var inspect = __dependency1__.inspect;
|
16276
|
-
var
|
16308
|
+
var create = __dependency2__.create;
|
16309
|
+
|
16310
|
+
var Ember = __dependency3__["default"];
|
16277
16311
|
|
16278
16312
|
QUnit.module("Ember.inspect");
|
16279
16313
|
|
@@ -16307,6 +16341,11 @@ define("ember-metal/tests/core/inspect_test",
|
|
16307
16341
|
equal(inspect({ foo: Ember.K }), "{foo: function() { ... }}");
|
16308
16342
|
});
|
16309
16343
|
|
16344
|
+
test("objects without a prototype", function() {
|
16345
|
+
var prototypelessObj = create(null);
|
16346
|
+
equal(inspect({ foo: prototypelessObj }), "{foo: [object Object]}");
|
16347
|
+
});
|
16348
|
+
|
16310
16349
|
test("array", function() {
|
16311
16350
|
equal(inspect([1,2,3]), "[1,2,3]");
|
16312
16351
|
});
|
@@ -16878,6 +16917,13 @@ define("ember-metal/tests/instrumentation_test",
|
|
16878
16917
|
}
|
16879
16918
|
});
|
16880
16919
|
|
16920
|
+
test("execute block even if no listeners", function() {
|
16921
|
+
var result = instrument("render", {}, function() {
|
16922
|
+
return "hello";
|
16923
|
+
});
|
16924
|
+
equal(result, "hello", 'called block');
|
16925
|
+
});
|
16926
|
+
|
16881
16927
|
test("subscribing to a simple path receives the listener", function() {
|
16882
16928
|
expect(12);
|
16883
16929
|
|
@@ -17168,13 +17214,15 @@ define("ember-metal/tests/is_present_test.jshint",
|
|
17168
17214
|
});
|
17169
17215
|
});
|
17170
17216
|
define("ember-metal/tests/keys_test",
|
17171
|
-
["ember-metal/property_set","ember-metal/keys","ember-metal/observer"],
|
17172
|
-
function(__dependency1__, __dependency2__, __dependency3__) {
|
17217
|
+
["ember-metal/core","ember-metal/property_set","ember-metal/keys","ember-metal/observer"],
|
17218
|
+
function(__dependency1__, __dependency2__, __dependency3__, __dependency4__) {
|
17173
17219
|
"use strict";
|
17174
|
-
var
|
17175
|
-
|
17176
|
-
var
|
17177
|
-
var
|
17220
|
+
var Ember = __dependency1__["default"];
|
17221
|
+
// Ember.K
|
17222
|
+
var set = __dependency2__.set;
|
17223
|
+
var keys = __dependency3__["default"];
|
17224
|
+
var addObserver = __dependency4__.addObserver;
|
17225
|
+
var removeObserver = __dependency4__.removeObserver;
|
17178
17226
|
|
17179
17227
|
QUnit.module("Fetch Keys ");
|
17180
17228
|
|
@@ -17200,6 +17248,93 @@ define("ember-metal/tests/keys_test",
|
|
17200
17248
|
|
17201
17249
|
deepEqual(object2, ['toString']);
|
17202
17250
|
});
|
17251
|
+
|
17252
|
+
test('should not contain properties declared in the prototype', function () {
|
17253
|
+
function Beer() { }
|
17254
|
+
Beer.prototype.type = 'ipa';
|
17255
|
+
|
17256
|
+
var beer = new Beer();
|
17257
|
+
|
17258
|
+
deepEqual(keys(beer), []);
|
17259
|
+
});
|
17260
|
+
|
17261
|
+
test('should return properties that were set after object creation', function () {
|
17262
|
+
function Beer() { }
|
17263
|
+
Beer.prototype.type = 'ipa';
|
17264
|
+
|
17265
|
+
var beer = new Beer();
|
17266
|
+
|
17267
|
+
set(beer, 'brand', 'big daddy');
|
17268
|
+
|
17269
|
+
deepEqual(keys(beer), ['brand']);
|
17270
|
+
});
|
17271
|
+
|
17272
|
+
QUnit.module('Keys behavior with observers');
|
17273
|
+
|
17274
|
+
test('should not leak properties on the prototype', function () {
|
17275
|
+
function Beer() { }
|
17276
|
+
Beer.prototype.type = 'ipa';
|
17277
|
+
|
17278
|
+
var beer = new Beer();
|
17279
|
+
|
17280
|
+
addObserver(beer, 'type', Ember.K);
|
17281
|
+
deepEqual(keys(beer), []);
|
17282
|
+
removeObserver(beer, 'type', Ember.K);
|
17283
|
+
});
|
17284
|
+
|
17285
|
+
test('observing a non existent property', function () {
|
17286
|
+
function Beer() { }
|
17287
|
+
Beer.prototype.type = 'ipa';
|
17288
|
+
|
17289
|
+
var beer = new Beer();
|
17290
|
+
|
17291
|
+
addObserver(beer, 'brand', Ember.K);
|
17292
|
+
|
17293
|
+
deepEqual(keys(beer), []);
|
17294
|
+
|
17295
|
+
set(beer, 'brand', 'Corona');
|
17296
|
+
deepEqual(keys(beer), ['brand']);
|
17297
|
+
|
17298
|
+
removeObserver(beer, 'brand', Ember.K);
|
17299
|
+
});
|
17300
|
+
|
17301
|
+
test('with observers switched on and off', function () {
|
17302
|
+
function Beer() { }
|
17303
|
+
Beer.prototype.type = 'ipa';
|
17304
|
+
|
17305
|
+
var beer = new Beer();
|
17306
|
+
|
17307
|
+
addObserver(beer, 'type', Ember.K);
|
17308
|
+
removeObserver(beer, 'type', Ember.K);
|
17309
|
+
|
17310
|
+
deepEqual(keys(beer), []);
|
17311
|
+
});
|
17312
|
+
|
17313
|
+
test('observers switched on and off with setter in between', function () {
|
17314
|
+
function Beer() { }
|
17315
|
+
Beer.prototype.type = 'ipa';
|
17316
|
+
|
17317
|
+
var beer = new Beer();
|
17318
|
+
|
17319
|
+
addObserver(beer, 'type', Ember.K);
|
17320
|
+
set(beer, 'type', 'ale');
|
17321
|
+
removeObserver(beer, 'type', Ember.K);
|
17322
|
+
|
17323
|
+
deepEqual(keys(beer), ['type']);
|
17324
|
+
});
|
17325
|
+
|
17326
|
+
test('observer switched on and off and then setter', function () {
|
17327
|
+
function Beer() { }
|
17328
|
+
Beer.prototype.type = 'ipa';
|
17329
|
+
|
17330
|
+
var beer = new Beer();
|
17331
|
+
|
17332
|
+
addObserver(beer, 'type', Ember.K);
|
17333
|
+
removeObserver(beer, 'type', Ember.K);
|
17334
|
+
set(beer, 'type', 'ale');
|
17335
|
+
|
17336
|
+
deepEqual(keys(beer), ['type']);
|
17337
|
+
});
|
17203
17338
|
});
|
17204
17339
|
define("ember-metal/tests/keys_test.jshint",
|
17205
17340
|
[],
|
@@ -20126,7 +20261,9 @@ define("ember-metal/tests/platform/defineProperty_test",
|
|
20126
20261
|
["ember-metal/platform","ember-metal/enumerable_utils"],
|
20127
20262
|
function(__dependency1__, __dependency2__) {
|
20128
20263
|
"use strict";
|
20129
|
-
var
|
20264
|
+
var defineProperty = __dependency1__.defineProperty;
|
20265
|
+
var hasPropertyAccessors = __dependency1__.hasPropertyAccessors;
|
20266
|
+
var canDefineNonEnumerableProperties = __dependency1__.canDefineNonEnumerableProperties;
|
20130
20267
|
var EnumerableUtils = __dependency2__["default"];
|
20131
20268
|
|
20132
20269
|
function isEnumerable(obj, keyName) {
|
@@ -20137,11 +20274,11 @@ define("ember-metal/tests/platform/defineProperty_test",
|
|
20137
20274
|
return EnumerableUtils.indexOf(keys, keyName)>=0;
|
20138
20275
|
}
|
20139
20276
|
|
20140
|
-
QUnit.module("
|
20277
|
+
QUnit.module("defineProperty()");
|
20141
20278
|
|
20142
20279
|
test("defining a simple property", function() {
|
20143
20280
|
var obj = {};
|
20144
|
-
|
20281
|
+
defineProperty(obj, 'foo', {
|
20145
20282
|
enumerable: true,
|
20146
20283
|
writable: true,
|
20147
20284
|
value: 'FOO'
|
@@ -20156,7 +20293,7 @@ define("ember-metal/tests/platform/defineProperty_test",
|
|
20156
20293
|
|
20157
20294
|
test('defining a read only property', function() {
|
20158
20295
|
var obj = {};
|
20159
|
-
|
20296
|
+
defineProperty(obj, 'foo', {
|
20160
20297
|
enumerable: true,
|
20161
20298
|
writable: false,
|
20162
20299
|
value: 'FOO'
|
@@ -20164,10 +20301,7 @@ define("ember-metal/tests/platform/defineProperty_test",
|
|
20164
20301
|
|
20165
20302
|
equal(obj.foo, 'FOO', 'should have added property');
|
20166
20303
|
|
20167
|
-
if (
|
20168
|
-
obj.foo = "BAR";
|
20169
|
-
equal(obj.foo, 'BAR', 'simulated defineProperty should silently work');
|
20170
|
-
} else {
|
20304
|
+
if (hasPropertyAccessors) {
|
20171
20305
|
// cannot set read-only property in strict-mode
|
20172
20306
|
try {
|
20173
20307
|
obj.foo = "BAR";
|
@@ -20176,28 +20310,30 @@ define("ember-metal/tests/platform/defineProperty_test",
|
|
20176
20310
|
}finally {
|
20177
20311
|
equal(obj.foo, 'FOO', 'real defined property should not be writable');
|
20178
20312
|
}
|
20313
|
+
} else {
|
20314
|
+
obj.foo = "BAR";
|
20315
|
+
equal(obj.foo, 'BAR', 'simulated defineProperty should silently work');
|
20179
20316
|
}
|
20180
|
-
|
20181
20317
|
});
|
20182
20318
|
|
20183
20319
|
test('defining a non enumerable property', function() {
|
20184
20320
|
var obj = {};
|
20185
|
-
|
20321
|
+
defineProperty(obj, 'foo', {
|
20186
20322
|
enumerable: false,
|
20187
20323
|
writable: true,
|
20188
20324
|
value: 'FOO'
|
20189
20325
|
});
|
20190
20326
|
|
20191
|
-
if (
|
20192
|
-
equal(isEnumerable(obj, 'foo'), true, 'simulated defineProperty will leave properties enumerable');
|
20193
|
-
} else {
|
20327
|
+
if (canDefineNonEnumerableProperties) {
|
20194
20328
|
equal(isEnumerable(obj, 'foo'), false, 'real defineProperty will make property not-enumerable');
|
20329
|
+
} else {
|
20330
|
+
equal(isEnumerable(obj, 'foo'), true, 'simulated defineProperty will leave properties enumerable');
|
20195
20331
|
}
|
20196
20332
|
});
|
20197
20333
|
|
20198
20334
|
// If accessors don't exist, behavior that relies on getters
|
20199
20335
|
// and setters don't do anything
|
20200
|
-
if (
|
20336
|
+
if (hasPropertyAccessors) {
|
20201
20337
|
test('defining a getter/setter', function() {
|
20202
20338
|
var obj = {};
|
20203
20339
|
var getCnt = 0;
|
@@ -20210,23 +20346,19 @@ define("ember-metal/tests/platform/defineProperty_test",
|
|
20210
20346
|
set: function(val) { setCnt++; v = val; }
|
20211
20347
|
};
|
20212
20348
|
|
20213
|
-
|
20214
|
-
|
20215
|
-
|
20216
|
-
equal(getCnt, 1, 'should have invoked getter');
|
20217
|
-
|
20218
|
-
obj.foo = 'BAR';
|
20219
|
-
equal(obj.foo, 'BAR', 'setter should have worked');
|
20220
|
-
equal(setCnt, 1, 'should have invoked setter');
|
20221
|
-
|
20222
|
-
}
|
20349
|
+
defineProperty(obj, 'foo', desc);
|
20350
|
+
equal(obj.foo, 'FOO', 'should return getter');
|
20351
|
+
equal(getCnt, 1, 'should have invoked getter');
|
20223
20352
|
|
20353
|
+
obj.foo = 'BAR';
|
20354
|
+
equal(obj.foo, 'BAR', 'setter should have worked');
|
20355
|
+
equal(setCnt, 1, 'should have invoked setter');
|
20224
20356
|
});
|
20225
20357
|
|
20226
20358
|
test('defining getter/setter along with writable', function() {
|
20227
20359
|
var obj ={};
|
20228
20360
|
raises(function() {
|
20229
|
-
|
20361
|
+
defineProperty(obj, 'foo', {
|
20230
20362
|
enumerable: true,
|
20231
20363
|
get: function() {},
|
20232
20364
|
set: function() {},
|
@@ -20238,7 +20370,7 @@ define("ember-metal/tests/platform/defineProperty_test",
|
|
20238
20370
|
test('defining getter/setter along with value', function() {
|
20239
20371
|
var obj ={};
|
20240
20372
|
raises(function() {
|
20241
|
-
|
20373
|
+
defineProperty(obj, 'foo', {
|
20242
20374
|
enumerable: true,
|
20243
20375
|
get: function() {},
|
20244
20376
|
set: function() {},
|
@@ -20258,16 +20390,14 @@ define("ember-metal/tests/platform/defineProperty_test.jshint",
|
|
20258
20390
|
});
|
20259
20391
|
});
|
20260
20392
|
define("ember-metal/tests/properties_test",
|
20261
|
-
["ember-metal/core","ember-metal/platform","ember-metal/
|
20262
|
-
function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__
|
20393
|
+
["ember-metal/core","ember-metal/platform","ember-metal/computed","ember-metal/properties","ember-metal/deprecate_property"],
|
20394
|
+
function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__) {
|
20263
20395
|
"use strict";
|
20264
20396
|
var Ember = __dependency1__["default"];
|
20265
|
-
var
|
20266
|
-
var
|
20267
|
-
var
|
20268
|
-
var
|
20269
|
-
var defineProperty = __dependency6__.defineProperty;
|
20270
|
-
var deprecateProperty = __dependency6__.deprecateProperty;
|
20397
|
+
var hasPropertyAccessors = __dependency2__.hasPropertyAccessors;
|
20398
|
+
var computed = __dependency3__.computed;
|
20399
|
+
var defineProperty = __dependency4__.defineProperty;
|
20400
|
+
var deprecateProperty = __dependency5__.deprecateProperty;
|
20271
20401
|
|
20272
20402
|
QUnit.module('Ember.defineProperty');
|
20273
20403
|
|
@@ -20306,7 +20436,7 @@ define("ember-metal/tests/properties_test",
|
|
20306
20436
|
defineProperty(obj, 'foo', computedProperty);
|
20307
20437
|
});
|
20308
20438
|
|
20309
|
-
if (
|
20439
|
+
if (hasPropertyAccessors) {
|
20310
20440
|
|
20311
20441
|
QUnit.module('Ember.deprecateProperty');
|
20312
20442
|
|
@@ -21453,7 +21583,7 @@ define("ember-metal/tests/utils/meta_test",
|
|
21453
21583
|
/*global jQuery*/
|
21454
21584
|
var Ember = __dependency1__["default"];
|
21455
21585
|
var create = __dependency2__.create;
|
21456
|
-
var
|
21586
|
+
var canDefineNonEnumerableProperties = __dependency2__.canDefineNonEnumerableProperties;
|
21457
21587
|
var getMeta = __dependency3__.getMeta;
|
21458
21588
|
var setMeta = __dependency3__.setMeta;
|
21459
21589
|
var meta = __dependency3__.meta;
|
@@ -21503,7 +21633,7 @@ define("ember-metal/tests/utils/meta_test",
|
|
21503
21633
|
QUnit.module("Ember.meta enumerable");
|
21504
21634
|
// Tests fix for https://github.com/emberjs/ember.js/issues/344
|
21505
21635
|
// This is primarily for older browsers such as IE8
|
21506
|
-
if (
|
21636
|
+
if (canDefineNonEnumerableProperties) {
|
21507
21637
|
if (Ember.imports.jQuery) {
|
21508
21638
|
test("meta is not jQuery.isPlainObject", function () {
|
21509
21639
|
var proto, obj;
|
@@ -23977,7 +24107,7 @@ define("ember-routing-handlebars/tests/helpers/render_test",
|
|
23977
24107
|
var get = __dependency2__.get;
|
23978
24108
|
var emberSet = __dependency3__.set;
|
23979
24109
|
var run = __dependency4__["default"];
|
23980
|
-
var
|
24110
|
+
var canDefineNonEnumerableProperties = __dependency5__.canDefineNonEnumerableProperties;
|
23981
24111
|
var observer = __dependency6__.observer;
|
23982
24112
|
|
23983
24113
|
var Container = __dependency7__["default"];
|
@@ -24190,10 +24320,10 @@ define("ember-routing-handlebars/tests/helpers/render_test",
|
|
24190
24320
|
set(controller, 'post', { title: "Rails is unagi" });
|
24191
24321
|
|
24192
24322
|
equal(view.$().text(), 'HIRails is unagi');
|
24193
|
-
if (
|
24194
|
-
equal(postController.get('model').title, "Rails is unagi");
|
24195
|
-
} else {
|
24323
|
+
if (canDefineNonEnumerableProperties) {
|
24196
24324
|
deepEqual(postController.get('model'), { title: "Rails is unagi" });
|
24325
|
+
} else {
|
24326
|
+
equal(postController.get('model').title, "Rails is unagi");
|
24197
24327
|
}
|
24198
24328
|
});
|
24199
24329
|
|
@@ -24314,10 +24444,10 @@ define("ember-routing-handlebars/tests/helpers/render_test",
|
|
24314
24444
|
set(controller, 'post1', { title: "I am new" });
|
24315
24445
|
|
24316
24446
|
ok(view.$().text().match(/^HI ?I am new ?Then me$/));
|
24317
|
-
if (
|
24318
|
-
equal(postController1.get('model').title, "I am new");
|
24319
|
-
} else {
|
24447
|
+
if (canDefineNonEnumerableProperties) {
|
24320
24448
|
deepEqual(postController1.get('model'), { title: "I am new" });
|
24449
|
+
} else {
|
24450
|
+
equal(postController1.get('model').title, "I am new");
|
24321
24451
|
}
|
24322
24452
|
});
|
24323
24453
|
|
@@ -24414,10 +24544,10 @@ define("ember-routing-handlebars/tests/helpers/render_test",
|
|
24414
24544
|
set(controller, 'post', { title: "Rails is unagi" });
|
24415
24545
|
|
24416
24546
|
ok(view.$().text().match(/^HI ?Title: ?Title:Rails is unagi$/));
|
24417
|
-
if (
|
24418
|
-
equal(postController2.get('model').title, "Rails is unagi");
|
24419
|
-
} else {
|
24547
|
+
if (canDefineNonEnumerableProperties) {
|
24420
24548
|
deepEqual(postController2.get('model'), { title: "Rails is unagi" });
|
24549
|
+
} else {
|
24550
|
+
equal(postController2.get('model').title, "Rails is unagi");
|
24421
24551
|
}
|
24422
24552
|
});
|
24423
24553
|
|
@@ -40235,7 +40365,7 @@ define("ember-runtime/tests/system/object/create_test",
|
|
40235
40365
|
equal(o.get('foo'), 'bar');
|
40236
40366
|
});
|
40237
40367
|
|
40238
|
-
|
40368
|
+
|
40239
40369
|
test("sets up mandatory setters for watched simple properties", function() {
|
40240
40370
|
|
40241
40371
|
var MyClass = EmberObject.extend({
|
@@ -40260,7 +40390,7 @@ define("ember-runtime/tests/system/object/create_test",
|
|
40260
40390
|
descriptor = Object.getOwnPropertyDescriptor(o, 'bar');
|
40261
40391
|
ok(!descriptor.set, 'Mandatory setter was not setup');
|
40262
40392
|
});
|
40263
|
-
|
40393
|
+
|
40264
40394
|
|
40265
40395
|
test("allows bindings to be defined", function() {
|
40266
40396
|
var obj = EmberObject.create({
|
@@ -40548,7 +40678,7 @@ define("ember-runtime/tests/system/object/destroy_test",
|
|
40548
40678
|
"use strict";
|
40549
40679
|
var Ember = __dependency1__["default"];
|
40550
40680
|
var run = __dependency2__["default"];
|
40551
|
-
var
|
40681
|
+
var hasPropertyAccessors = __dependency3__.hasPropertyAccessors;
|
40552
40682
|
var observer = __dependency4__.observer;
|
40553
40683
|
var set = __dependency5__.set;
|
40554
40684
|
var bind = __dependency6__.bind;
|
@@ -40577,8 +40707,11 @@ define("ember-runtime/tests/system/object/destroy_test",
|
|
40577
40707
|
ok(get(obj, 'isDestroyed'), "object is destroyed after run loop finishes");
|
40578
40708
|
});
|
40579
40709
|
|
40580
|
-
|
40581
|
-
|
40710
|
+
if (hasPropertyAccessors) {
|
40711
|
+
// MANDATORY_SETTER moves value to meta.values
|
40712
|
+
// a destroyed object removes meta but leaves the accessor
|
40713
|
+
// that looks it up
|
40714
|
+
test("should raise an exception when modifying watched properties on a destroyed object", function() {
|
40582
40715
|
var obj = EmberObject.createWithMixins({
|
40583
40716
|
foo: "bar",
|
40584
40717
|
fooDidChange: observer('foo', function() { })
|
@@ -40591,10 +40724,8 @@ define("ember-runtime/tests/system/object/destroy_test",
|
|
40591
40724
|
raises(function() {
|
40592
40725
|
set(obj, 'foo', 'baz');
|
40593
40726
|
}, Error, "raises an exception");
|
40594
|
-
}
|
40595
|
-
|
40596
|
-
}
|
40597
|
-
});
|
40727
|
+
});
|
40728
|
+
}
|
40598
40729
|
|
40599
40730
|
test("observers should not fire after an object has been destroyed", function() {
|
40600
40731
|
var count = 0;
|
@@ -45385,7 +45516,16 @@ define("ember-views/tests/system/render_buffer_test",
|
|
45385
45516
|
buffer.generateElement();
|
45386
45517
|
|
45387
45518
|
var el = buffer.element();
|
45388
|
-
|
45519
|
+
var div = document.createElement('div');
|
45520
|
+
|
45521
|
+
// some browsers have different escaping strageties
|
45522
|
+
// we should ensure the outcome is consistent. Ultimately we now use
|
45523
|
+
// setAttribute under the hood, so we should always do the right thing. But
|
45524
|
+
// this test should be kept to ensure we do. Also, I believe/hope it is
|
45525
|
+
// alright to assume the browser escapes setAttribute correctly...
|
45526
|
+
div.setAttribute('style', 'color:blue;" xss="true" style="color:red;');
|
45527
|
+
|
45528
|
+
equal(el.getAttribute('style'), div.getAttribute('style'));
|
45389
45529
|
});
|
45390
45530
|
|
45391
45531
|
test("prevents XSS injection via `tagName`", function() {
|
@@ -50169,7 +50309,7 @@ define("ember-views/tests/views/view/state_deprecation_test",
|
|
50169
50309
|
["ember-metal/platform","ember-metal/run_loop","ember-views/views/view"],
|
50170
50310
|
function(__dependency1__, __dependency2__, __dependency3__) {
|
50171
50311
|
"use strict";
|
50172
|
-
var
|
50312
|
+
var hasPropertyAccessors = __dependency1__.hasPropertyAccessors;
|
50173
50313
|
var run = __dependency2__["default"];
|
50174
50314
|
var EmberView = __dependency3__["default"];
|
50175
50315
|
|
@@ -50183,7 +50323,7 @@ define("ember-views/tests/views/view/state_deprecation_test",
|
|
50183
50323
|
}
|
50184
50324
|
});
|
50185
50325
|
|
50186
|
-
if (
|
50326
|
+
if (hasPropertyAccessors) {
|
50187
50327
|
test("view.state should be an alias of view._state with a deprecation", function() {
|
50188
50328
|
expect(2);
|
50189
50329
|
view = EmberView.create();
|
@@ -55308,7 +55448,7 @@ define("ember/tests/routing/basic_test",
|
|
55308
55448
|
handleURL("/posts/3/shares/3");
|
55309
55449
|
});
|
55310
55450
|
|
55311
|
-
test("Resource
|
55451
|
+
test("Resource inherits model from parent resource", function() {
|
55312
55452
|
expect(6);
|
55313
55453
|
|
55314
55454
|
Router.map(function() {
|
@@ -55336,7 +55476,7 @@ define("ember/tests/routing/basic_test",
|
|
55336
55476
|
afterModel: function(post, transition) {
|
55337
55477
|
var parent_model = this.modelFor('thePost');
|
55338
55478
|
|
55339
|
-
|
55479
|
+
equal(post, parent_model);
|
55340
55480
|
}
|
55341
55481
|
});
|
55342
55482
|
|
@@ -56927,7 +57067,7 @@ define("ember/tests/routing/query_params_test",
|
|
56927
57067
|
var forEach = __dependency2__.forEach;
|
56928
57068
|
var map = __dependency2__.map;
|
56929
57069
|
var computed = __dependency3__.computed;
|
56930
|
-
var
|
57070
|
+
var canDefineNonEnumerableProperties = __dependency4__.canDefineNonEnumerableProperties;
|
56931
57071
|
var capitalize = __dependency5__.capitalize;
|
56932
57072
|
|
56933
57073
|
var Router, App, AppView, templates, router, container;
|
@@ -56936,15 +57076,12 @@ define("ember/tests/routing/query_params_test",
|
|
56936
57076
|
var compile = Ember.Handlebars.compile;
|
56937
57077
|
|
56938
57078
|
function withoutMeta(object) {
|
56939
|
-
if (
|
56940
|
-
var newObject = Ember.$.extend(true, {}, object);
|
56941
|
-
|
56942
|
-
delete newObject['__ember_meta__'];
|
56943
|
-
|
56944
|
-
return newObject;
|
56945
|
-
} else {
|
57079
|
+
if (canDefineNonEnumerableProperties) {
|
56946
57080
|
return object;
|
56947
57081
|
}
|
57082
|
+
var newObject = Ember.$.extend(true, {}, object);
|
57083
|
+
delete newObject['__ember_meta__'];
|
57084
|
+
return newObject;
|
56948
57085
|
}
|
56949
57086
|
|
56950
57087
|
function bootApplication() {
|