ember-source 1.8.0.beta.4 → 1.8.0.beta.5
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 +31 -41
- data/dist/ember-tests.js +56 -81
- data/dist/ember-tests.prod.js +56 -81
- data/dist/ember.js +42 -57
- data/dist/ember.min.js +7 -7
- data/dist/ember.prod.js +42 -57
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f30bc696893c2069707688aabc68af377e5ee6a0
|
4
|
+
data.tar.gz: ba5e80a8ef7488147776338c8b12fc23d6abf958
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b8d4d2db19c645fd03e9060125e94f290ef54184d4f88132226a46fb4bcd3e77852e8ea17f905c174ac823be8d228909e573c71487c589c64625279568211771
|
7
|
+
data.tar.gz: 99ca05ee6df42a141f1a2b7c48142d8ab0d2c68c107019fb022fded5ec9f07bbb06b98ed48b02a2e9f7b24e6e6e1eb22d2a78a2ebc74334db00594049365e46c
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.8.0-beta.
|
1
|
+
1.8.0-beta.5
|
data/dist/ember-runtime.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.5
|
9
9
|
*/
|
10
10
|
|
11
11
|
(function() {
|
@@ -2508,8 +2508,8 @@ define("ember-metal/array",
|
|
2508
2508
|
__exports__.lastIndexOf = lastIndexOf;
|
2509
2509
|
});
|
2510
2510
|
define("ember-metal/binding",
|
2511
|
-
["ember-metal/core","ember-metal/property_get","ember-metal/property_set","ember-metal/utils","ember-metal/
|
2512
|
-
function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__,
|
2511
|
+
["ember-metal/core","ember-metal/property_get","ember-metal/property_set","ember-metal/utils","ember-metal/observer","ember-metal/run_loop","ember-metal/path_cache","exports"],
|
2512
|
+
function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __exports__) {
|
2513
2513
|
"use strict";
|
2514
2514
|
var Ember = __dependency1__["default"];
|
2515
2515
|
// Ember.Logger, Ember.LOG_BINDINGS, assert
|
@@ -2517,12 +2517,11 @@ define("ember-metal/binding",
|
|
2517
2517
|
var set = __dependency3__.set;
|
2518
2518
|
var trySet = __dependency3__.trySet;
|
2519
2519
|
var guidFor = __dependency4__.guidFor;
|
2520
|
-
var
|
2521
|
-
var
|
2522
|
-
var
|
2523
|
-
var
|
2524
|
-
var
|
2525
|
-
var isGlobalPath = __dependency8__.isGlobal;
|
2520
|
+
var addObserver = __dependency5__.addObserver;
|
2521
|
+
var removeObserver = __dependency5__.removeObserver;
|
2522
|
+
var _suspendObserver = __dependency5__._suspendObserver;
|
2523
|
+
var run = __dependency6__["default"];
|
2524
|
+
var isGlobalPath = __dependency7__.isGlobal;
|
2526
2525
|
|
2527
2526
|
|
2528
2527
|
// ES6TODO: where is Ember.lookup defined?
|
@@ -2566,10 +2565,9 @@ define("ember-metal/binding",
|
|
2566
2565
|
//
|
2567
2566
|
|
2568
2567
|
function Binding(toPath, fromPath) {
|
2569
|
-
this._direction =
|
2568
|
+
this._direction = undefined;
|
2570
2569
|
this._from = fromPath;
|
2571
2570
|
this._to = toPath;
|
2572
|
-
this._directionMap = new Map();
|
2573
2571
|
this._readyToSync = undefined;
|
2574
2572
|
this._oneWay = undefined;
|
2575
2573
|
}
|
@@ -2725,19 +2723,18 @@ define("ember-metal/binding",
|
|
2725
2723
|
},
|
2726
2724
|
|
2727
2725
|
_scheduleSync: function(obj, dir) {
|
2728
|
-
var
|
2729
|
-
var existingDir = directionMap.get(obj);
|
2726
|
+
var existingDir = this._direction;
|
2730
2727
|
|
2731
2728
|
// if we haven't scheduled the binding yet, schedule it
|
2732
|
-
if (
|
2729
|
+
if (existingDir === undefined) {
|
2733
2730
|
run.schedule('sync', this, this._sync, obj);
|
2734
|
-
|
2731
|
+
this._direction = dir;
|
2735
2732
|
}
|
2736
2733
|
|
2737
2734
|
// If both a 'back' and 'fwd' sync have been scheduled on the same object,
|
2738
2735
|
// default to a 'fwd' sync so that it remains deterministic.
|
2739
2736
|
if (existingDir === 'back' && dir === 'fwd') {
|
2740
|
-
|
2737
|
+
this._direction = 'fwd';
|
2741
2738
|
}
|
2742
2739
|
},
|
2743
2740
|
|
@@ -2749,13 +2746,12 @@ define("ember-metal/binding",
|
|
2749
2746
|
|
2750
2747
|
// get the direction of the binding for the object we are
|
2751
2748
|
// synchronizing from
|
2752
|
-
var
|
2753
|
-
var direction = directionMap.get(obj);
|
2749
|
+
var direction = this._direction;
|
2754
2750
|
|
2755
2751
|
var fromPath = this._from;
|
2756
2752
|
var toPath = this._to;
|
2757
2753
|
|
2758
|
-
|
2754
|
+
this._direction = undefined;
|
2759
2755
|
|
2760
2756
|
// if we're synchronizing from the remote object...
|
2761
2757
|
if (direction === 'fwd') {
|
@@ -2800,10 +2796,9 @@ define("ember-metal/binding",
|
|
2800
2796
|
@method from
|
2801
2797
|
@static
|
2802
2798
|
*/
|
2803
|
-
from: function() {
|
2799
|
+
from: function(from) {
|
2804
2800
|
var C = this;
|
2805
|
-
|
2806
|
-
return binding.from.apply(binding, arguments);
|
2801
|
+
return new C(undefined, from);
|
2807
2802
|
},
|
2808
2803
|
|
2809
2804
|
/*
|
@@ -2812,10 +2807,9 @@ define("ember-metal/binding",
|
|
2812
2807
|
@method to
|
2813
2808
|
@static
|
2814
2809
|
*/
|
2815
|
-
to: function() {
|
2810
|
+
to: function(to) {
|
2816
2811
|
var C = this;
|
2817
|
-
|
2818
|
-
return binding.to.apply(binding, arguments);
|
2812
|
+
return new C(to, undefined);
|
2819
2813
|
},
|
2820
2814
|
|
2821
2815
|
/**
|
@@ -2836,8 +2830,7 @@ define("ember-metal/binding",
|
|
2836
2830
|
*/
|
2837
2831
|
oneWay: function(from, flag) {
|
2838
2832
|
var C = this;
|
2839
|
-
|
2840
|
-
return binding.oneWay(flag);
|
2833
|
+
return new C(undefined, from).oneWay(flag);
|
2841
2834
|
}
|
2842
2835
|
|
2843
2836
|
});
|
@@ -4769,7 +4762,7 @@ define("ember-metal/core",
|
|
4769
4762
|
|
4770
4763
|
@class Ember
|
4771
4764
|
@static
|
4772
|
-
@version 1.8.0-beta.
|
4765
|
+
@version 1.8.0-beta.5
|
4773
4766
|
*/
|
4774
4767
|
|
4775
4768
|
if ('undefined' === typeof Ember) {
|
@@ -4796,10 +4789,10 @@ define("ember-metal/core",
|
|
4796
4789
|
/**
|
4797
4790
|
@property VERSION
|
4798
4791
|
@type String
|
4799
|
-
@default '1.8.0-beta.
|
4792
|
+
@default '1.8.0-beta.5'
|
4800
4793
|
@static
|
4801
4794
|
*/
|
4802
|
-
Ember.VERSION = '1.8.0-beta.
|
4795
|
+
Ember.VERSION = '1.8.0-beta.5';
|
4803
4796
|
|
4804
4797
|
/**
|
4805
4798
|
Standard environmental variables. You can define these in a global `EmberENV`
|
@@ -6698,13 +6691,12 @@ define("ember-metal/map",
|
|
6698
6691
|
var presenceSet = this.presenceSet;
|
6699
6692
|
var list = this.list;
|
6700
6693
|
|
6701
|
-
if (presenceSet[guid]) {
|
6694
|
+
if (presenceSet[guid] === true) {
|
6702
6695
|
return;
|
6703
6696
|
}
|
6704
6697
|
|
6705
6698
|
presenceSet[guid] = true;
|
6706
|
-
list.push(obj);
|
6707
|
-
this.size++;
|
6699
|
+
this.size = list.push(obj);
|
6708
6700
|
|
6709
6701
|
return this;
|
6710
6702
|
},
|
@@ -6734,13 +6726,13 @@ define("ember-metal/map",
|
|
6734
6726
|
var presenceSet = this.presenceSet;
|
6735
6727
|
var list = this.list;
|
6736
6728
|
|
6737
|
-
if (presenceSet[guid]
|
6729
|
+
if (presenceSet[guid] === true) {
|
6738
6730
|
delete presenceSet[guid];
|
6739
6731
|
var index = indexOf.call(list, obj);
|
6740
6732
|
if (index > -1) {
|
6741
6733
|
list.splice(index, 1);
|
6742
6734
|
}
|
6743
|
-
this.size
|
6735
|
+
this.size = list.length;
|
6744
6736
|
return true;
|
6745
6737
|
} else {
|
6746
6738
|
return false;
|
@@ -6766,7 +6758,7 @@ define("ember-metal/map",
|
|
6766
6758
|
var guid = guidFor(obj);
|
6767
6759
|
var presenceSet = this.presenceSet;
|
6768
6760
|
|
6769
|
-
return
|
6761
|
+
return presenceSet[guid] === true;
|
6770
6762
|
},
|
6771
6763
|
|
6772
6764
|
/**
|
@@ -6948,8 +6940,7 @@ define("ember-metal/map",
|
|
6948
6940
|
var values = this.values;
|
6949
6941
|
var guid = guidFor(key);
|
6950
6942
|
|
6951
|
-
if (
|
6952
|
-
keys.delete(key, guid);
|
6943
|
+
if (keys.delete(key, guid)) {
|
6953
6944
|
delete values[guid];
|
6954
6945
|
this.size = keys.size;
|
6955
6946
|
return true;
|
@@ -6966,7 +6957,6 @@ define("ember-metal/map",
|
|
6966
6957
|
@return {Boolean} true if the item was present, false otherwise
|
6967
6958
|
*/
|
6968
6959
|
has: function(key) {
|
6969
|
-
if (this.size === 0) { return false; }
|
6970
6960
|
return this.keys.has(key);
|
6971
6961
|
},
|
6972
6962
|
|
@@ -16788,7 +16778,7 @@ define("ember-runtime/mixins/mutable_array",
|
|
16788
16778
|
},
|
16789
16779
|
|
16790
16780
|
/**
|
16791
|
-
Replace all the
|
16781
|
+
Replace all the receiver's content with content of the argument.
|
16792
16782
|
If argument is an empty array receiver will be cleared.
|
16793
16783
|
|
16794
16784
|
```javascript
|
@@ -19790,7 +19780,7 @@ define("ember-runtime/system/namespace",
|
|
19790
19780
|
},
|
19791
19781
|
|
19792
19782
|
toString: function() {
|
19793
|
-
var name = get(this, 'name');
|
19783
|
+
var name = get(this, 'name') || get(this, 'modulePrefix');
|
19794
19784
|
if (name) { return name; }
|
19795
19785
|
|
19796
19786
|
findNamespaces();
|
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.5
|
9
9
|
*/
|
10
10
|
|
11
11
|
(function() {
|
@@ -14991,19 +14991,17 @@ define("ember-metal/tests/binding/oneWay_test.jshint",
|
|
14991
14991
|
});
|
14992
14992
|
});
|
14993
14993
|
define("ember-metal/tests/binding/sync_test",
|
14994
|
-
["ember-metal/tests/props_helper","ember-metal/run_loop","ember-metal/observer","ember-metal/
|
14995
|
-
function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__
|
14994
|
+
["ember-metal/tests/props_helper","ember-metal/run_loop","ember-metal/observer","ember-metal/binding","ember-metal/computed","ember-metal/properties"],
|
14995
|
+
function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__) {
|
14996
14996
|
"use strict";
|
14997
14997
|
var testBoth = __dependency1__["default"];
|
14998
14998
|
var run = __dependency2__["default"];
|
14999
14999
|
var addObserver = __dependency3__.addObserver;
|
15000
15000
|
var removeObserver = __dependency3__.removeObserver;
|
15001
15001
|
var _suspendObserver = __dependency3__._suspendObserver;
|
15002
|
-
var
|
15003
|
-
var
|
15004
|
-
var
|
15005
|
-
var computed = __dependency7__.computed;
|
15006
|
-
var defineProperty = __dependency8__.defineProperty;
|
15002
|
+
var bind = __dependency4__.bind;
|
15003
|
+
var computed = __dependency5__.computed;
|
15004
|
+
var defineProperty = __dependency6__.defineProperty;
|
15007
15005
|
|
15008
15006
|
QUnit.module("system/binding/sync_test.js");
|
15009
15007
|
|
@@ -15099,49 +15097,6 @@ define("ember-metal/tests/binding/sync_test",
|
|
15099
15097
|
equal(get(a, 'foo'), "what is going on");
|
15100
15098
|
});
|
15101
15099
|
|
15102
|
-
testBoth("bindings should do the right thing when binding is in prototype", function(get, set) {
|
15103
|
-
var obj, proto, a, b, selectionChanged;
|
15104
|
-
run(function() {
|
15105
|
-
obj = {
|
15106
|
-
selection: null
|
15107
|
-
};
|
15108
|
-
|
15109
|
-
selectionChanged = 0;
|
15110
|
-
|
15111
|
-
addObserver(obj, 'selection', function () {
|
15112
|
-
selectionChanged++;
|
15113
|
-
});
|
15114
|
-
|
15115
|
-
proto = {
|
15116
|
-
obj: obj,
|
15117
|
-
changeSelection: function (value) {
|
15118
|
-
set(this, 'selection', value);
|
15119
|
-
}
|
15120
|
-
};
|
15121
|
-
bind(proto, 'selection', 'obj.selection');
|
15122
|
-
|
15123
|
-
a = create(proto);
|
15124
|
-
b = create(proto);
|
15125
|
-
rewatch(a);
|
15126
|
-
rewatch(b);
|
15127
|
-
});
|
15128
|
-
|
15129
|
-
run(function () {
|
15130
|
-
set(a, 'selection', 'a');
|
15131
|
-
});
|
15132
|
-
|
15133
|
-
run(function () {
|
15134
|
-
set(b, 'selection', 'b');
|
15135
|
-
});
|
15136
|
-
|
15137
|
-
run(function () {
|
15138
|
-
set(a, 'selection', 'a');
|
15139
|
-
});
|
15140
|
-
|
15141
|
-
equal(selectionChanged, 3);
|
15142
|
-
equal(get(obj, 'selection'), 'a');
|
15143
|
-
});
|
15144
|
-
|
15145
15100
|
testBoth("bindings should not try to sync destroyed objects", function(get, set) {
|
15146
15101
|
var a, b;
|
15147
15102
|
|
@@ -17550,13 +17505,15 @@ define("ember-metal/tests/libraries_test.jshint",
|
|
17550
17505
|
});
|
17551
17506
|
});
|
17552
17507
|
define("ember-metal/tests/map_test",
|
17553
|
-
["ember-metal/map"],
|
17554
|
-
function(__dependency1__) {
|
17508
|
+
["ember-metal/map","ember-metal/platform"],
|
17509
|
+
function(__dependency1__, __dependency2__) {
|
17555
17510
|
"use strict";
|
17556
17511
|
var OrderedSet = __dependency1__.OrderedSet;
|
17557
17512
|
var Map = __dependency1__.Map;
|
17558
17513
|
var MapWithDefault = __dependency1__.MapWithDefault;
|
17559
17514
|
|
17515
|
+
var hasPropertyAccessors = __dependency2__.hasPropertyAccessors;
|
17516
|
+
|
17560
17517
|
var object, number, string, map, variety;
|
17561
17518
|
var varieties = [['Map', Map], ['MapWithDefault', MapWithDefault]];
|
17562
17519
|
|
@@ -17756,40 +17713,42 @@ define("ember-metal/tests/map_test",
|
|
17756
17713
|
mapHasEntries([ ], map2);
|
17757
17714
|
});
|
17758
17715
|
|
17759
|
-
|
17760
|
-
|
17716
|
+
if (hasPropertyAccessors) {
|
17717
|
+
test("length", function() {
|
17718
|
+
expectDeprecation('Usage of `length` is deprecated, use `size` instead.');
|
17761
17719
|
|
17762
|
-
|
17763
|
-
|
17764
|
-
|
17765
|
-
|
17766
|
-
|
17767
|
-
|
17720
|
+
//Add a key twice
|
17721
|
+
equal(map.length, 0);
|
17722
|
+
map.set(string, "a string");
|
17723
|
+
equal(map.length, 1);
|
17724
|
+
map.set(string, "the same string");
|
17725
|
+
equal(map.length, 1);
|
17768
17726
|
|
17769
|
-
|
17770
|
-
|
17771
|
-
|
17727
|
+
//Add another
|
17728
|
+
map.set(number, "a number");
|
17729
|
+
equal(map.length, 2);
|
17772
17730
|
|
17773
|
-
|
17774
|
-
|
17775
|
-
|
17731
|
+
//Remove one that doesn't exist
|
17732
|
+
map["delete"]('does not exist');
|
17733
|
+
equal(map.length, 2);
|
17776
17734
|
|
17777
|
-
|
17778
|
-
|
17779
|
-
|
17735
|
+
//Check copy
|
17736
|
+
var copy = map.copy();
|
17737
|
+
equal(copy.length, 2);
|
17780
17738
|
|
17781
|
-
|
17782
|
-
|
17783
|
-
|
17784
|
-
|
17785
|
-
|
17739
|
+
//Remove a key twice
|
17740
|
+
map["delete"](number);
|
17741
|
+
equal(map.length, 1);
|
17742
|
+
map["delete"](number);
|
17743
|
+
equal(map.length, 1);
|
17786
17744
|
|
17787
|
-
|
17788
|
-
|
17789
|
-
|
17790
|
-
|
17791
|
-
|
17792
|
-
|
17745
|
+
//Remove the last key
|
17746
|
+
map["delete"](string);
|
17747
|
+
equal(map.length, 0);
|
17748
|
+
map["delete"](string);
|
17749
|
+
equal(map.length, 0);
|
17750
|
+
});
|
17751
|
+
}
|
17793
17752
|
|
17794
17753
|
test("size", function() {
|
17795
17754
|
//Add a key twice
|
@@ -18031,6 +17990,22 @@ define("ember-metal/tests/map_test",
|
|
18031
17990
|
equal(map.get(boxed), 'not-a-number');
|
18032
17991
|
});
|
18033
17992
|
|
17993
|
+
test("0 value", function() {
|
17994
|
+
var obj = {};
|
17995
|
+
equal(map.has(obj), false);
|
17996
|
+
|
17997
|
+
equal(map.size, 0);
|
17998
|
+
map.set(obj, 0);
|
17999
|
+
equal(map.size, 1);
|
18000
|
+
|
18001
|
+
equal(map.has(obj), true);
|
18002
|
+
equal(map.get(obj), 0);
|
18003
|
+
|
18004
|
+
map["delete"](obj);
|
18005
|
+
equal(map.has(obj), false);
|
18006
|
+
equal(map.get(obj), undefined);
|
18007
|
+
equal(map.size, 0);
|
18008
|
+
});
|
18034
18009
|
}
|
18035
18010
|
|
18036
18011
|
for (var i = 0; i < varieties.length; i++) {
|
data/dist/ember-tests.prod.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.5
|
9
9
|
*/
|
10
10
|
|
11
11
|
(function() {
|
@@ -14991,19 +14991,17 @@ define("ember-metal/tests/binding/oneWay_test.jshint",
|
|
14991
14991
|
});
|
14992
14992
|
});
|
14993
14993
|
define("ember-metal/tests/binding/sync_test",
|
14994
|
-
["ember-metal/tests/props_helper","ember-metal/run_loop","ember-metal/observer","ember-metal/
|
14995
|
-
function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__
|
14994
|
+
["ember-metal/tests/props_helper","ember-metal/run_loop","ember-metal/observer","ember-metal/binding","ember-metal/computed","ember-metal/properties"],
|
14995
|
+
function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__) {
|
14996
14996
|
"use strict";
|
14997
14997
|
var testBoth = __dependency1__["default"];
|
14998
14998
|
var run = __dependency2__["default"];
|
14999
14999
|
var addObserver = __dependency3__.addObserver;
|
15000
15000
|
var removeObserver = __dependency3__.removeObserver;
|
15001
15001
|
var _suspendObserver = __dependency3__._suspendObserver;
|
15002
|
-
var
|
15003
|
-
var
|
15004
|
-
var
|
15005
|
-
var computed = __dependency7__.computed;
|
15006
|
-
var defineProperty = __dependency8__.defineProperty;
|
15002
|
+
var bind = __dependency4__.bind;
|
15003
|
+
var computed = __dependency5__.computed;
|
15004
|
+
var defineProperty = __dependency6__.defineProperty;
|
15007
15005
|
|
15008
15006
|
QUnit.module("system/binding/sync_test.js");
|
15009
15007
|
|
@@ -15099,49 +15097,6 @@ define("ember-metal/tests/binding/sync_test",
|
|
15099
15097
|
equal(get(a, 'foo'), "what is going on");
|
15100
15098
|
});
|
15101
15099
|
|
15102
|
-
testBoth("bindings should do the right thing when binding is in prototype", function(get, set) {
|
15103
|
-
var obj, proto, a, b, selectionChanged;
|
15104
|
-
run(function() {
|
15105
|
-
obj = {
|
15106
|
-
selection: null
|
15107
|
-
};
|
15108
|
-
|
15109
|
-
selectionChanged = 0;
|
15110
|
-
|
15111
|
-
addObserver(obj, 'selection', function () {
|
15112
|
-
selectionChanged++;
|
15113
|
-
});
|
15114
|
-
|
15115
|
-
proto = {
|
15116
|
-
obj: obj,
|
15117
|
-
changeSelection: function (value) {
|
15118
|
-
set(this, 'selection', value);
|
15119
|
-
}
|
15120
|
-
};
|
15121
|
-
bind(proto, 'selection', 'obj.selection');
|
15122
|
-
|
15123
|
-
a = create(proto);
|
15124
|
-
b = create(proto);
|
15125
|
-
rewatch(a);
|
15126
|
-
rewatch(b);
|
15127
|
-
});
|
15128
|
-
|
15129
|
-
run(function () {
|
15130
|
-
set(a, 'selection', 'a');
|
15131
|
-
});
|
15132
|
-
|
15133
|
-
run(function () {
|
15134
|
-
set(b, 'selection', 'b');
|
15135
|
-
});
|
15136
|
-
|
15137
|
-
run(function () {
|
15138
|
-
set(a, 'selection', 'a');
|
15139
|
-
});
|
15140
|
-
|
15141
|
-
equal(selectionChanged, 3);
|
15142
|
-
equal(get(obj, 'selection'), 'a');
|
15143
|
-
});
|
15144
|
-
|
15145
15100
|
testBoth("bindings should not try to sync destroyed objects", function(get, set) {
|
15146
15101
|
var a, b;
|
15147
15102
|
|
@@ -17550,13 +17505,15 @@ define("ember-metal/tests/libraries_test.jshint",
|
|
17550
17505
|
});
|
17551
17506
|
});
|
17552
17507
|
define("ember-metal/tests/map_test",
|
17553
|
-
["ember-metal/map"],
|
17554
|
-
function(__dependency1__) {
|
17508
|
+
["ember-metal/map","ember-metal/platform"],
|
17509
|
+
function(__dependency1__, __dependency2__) {
|
17555
17510
|
"use strict";
|
17556
17511
|
var OrderedSet = __dependency1__.OrderedSet;
|
17557
17512
|
var Map = __dependency1__.Map;
|
17558
17513
|
var MapWithDefault = __dependency1__.MapWithDefault;
|
17559
17514
|
|
17515
|
+
var hasPropertyAccessors = __dependency2__.hasPropertyAccessors;
|
17516
|
+
|
17560
17517
|
var object, number, string, map, variety;
|
17561
17518
|
var varieties = [['Map', Map], ['MapWithDefault', MapWithDefault]];
|
17562
17519
|
|
@@ -17756,40 +17713,42 @@ define("ember-metal/tests/map_test",
|
|
17756
17713
|
mapHasEntries([ ], map2);
|
17757
17714
|
});
|
17758
17715
|
|
17759
|
-
|
17760
|
-
|
17716
|
+
if (hasPropertyAccessors) {
|
17717
|
+
test("length", function() {
|
17718
|
+
expectDeprecation('Usage of `length` is deprecated, use `size` instead.');
|
17761
17719
|
|
17762
|
-
|
17763
|
-
|
17764
|
-
|
17765
|
-
|
17766
|
-
|
17767
|
-
|
17720
|
+
//Add a key twice
|
17721
|
+
equal(map.length, 0);
|
17722
|
+
map.set(string, "a string");
|
17723
|
+
equal(map.length, 1);
|
17724
|
+
map.set(string, "the same string");
|
17725
|
+
equal(map.length, 1);
|
17768
17726
|
|
17769
|
-
|
17770
|
-
|
17771
|
-
|
17727
|
+
//Add another
|
17728
|
+
map.set(number, "a number");
|
17729
|
+
equal(map.length, 2);
|
17772
17730
|
|
17773
|
-
|
17774
|
-
|
17775
|
-
|
17731
|
+
//Remove one that doesn't exist
|
17732
|
+
map["delete"]('does not exist');
|
17733
|
+
equal(map.length, 2);
|
17776
17734
|
|
17777
|
-
|
17778
|
-
|
17779
|
-
|
17735
|
+
//Check copy
|
17736
|
+
var copy = map.copy();
|
17737
|
+
equal(copy.length, 2);
|
17780
17738
|
|
17781
|
-
|
17782
|
-
|
17783
|
-
|
17784
|
-
|
17785
|
-
|
17739
|
+
//Remove a key twice
|
17740
|
+
map["delete"](number);
|
17741
|
+
equal(map.length, 1);
|
17742
|
+
map["delete"](number);
|
17743
|
+
equal(map.length, 1);
|
17786
17744
|
|
17787
|
-
|
17788
|
-
|
17789
|
-
|
17790
|
-
|
17791
|
-
|
17792
|
-
|
17745
|
+
//Remove the last key
|
17746
|
+
map["delete"](string);
|
17747
|
+
equal(map.length, 0);
|
17748
|
+
map["delete"](string);
|
17749
|
+
equal(map.length, 0);
|
17750
|
+
});
|
17751
|
+
}
|
17793
17752
|
|
17794
17753
|
test("size", function() {
|
17795
17754
|
//Add a key twice
|
@@ -18031,6 +17990,22 @@ define("ember-metal/tests/map_test",
|
|
18031
17990
|
equal(map.get(boxed), 'not-a-number');
|
18032
17991
|
});
|
18033
17992
|
|
17993
|
+
test("0 value", function() {
|
17994
|
+
var obj = {};
|
17995
|
+
equal(map.has(obj), false);
|
17996
|
+
|
17997
|
+
equal(map.size, 0);
|
17998
|
+
map.set(obj, 0);
|
17999
|
+
equal(map.size, 1);
|
18000
|
+
|
18001
|
+
equal(map.has(obj), true);
|
18002
|
+
equal(map.get(obj), 0);
|
18003
|
+
|
18004
|
+
map["delete"](obj);
|
18005
|
+
equal(map.has(obj), false);
|
18006
|
+
equal(map.get(obj), undefined);
|
18007
|
+
equal(map.size, 0);
|
18008
|
+
});
|
18034
18009
|
}
|
18035
18010
|
|
18036
18011
|
for (var i = 0; i < varieties.length; i++) {
|