aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorTEHEK Firefox2011-09-23 18:36:09 +0000
committerIgor Minar2011-10-05 11:01:32 -0700
commitc115fa99240a55e32e1fa39f037056df429be741 (patch)
tree26c3dcfbcc4d032296e018f552a5da9a88fb1ad2 /test
parentb7a7fc7065a7bd6031b82a748105cf0415cb68e4 (diff)
downloadangular.js-c115fa99240a55e32e1fa39f037056df429be741.tar.bz2
fix($limitTo): properly handle excessive limits
`angular.Array.limitTo`'s result should not exceed original input array size Closes #571
Diffstat (limited to 'test')
-rw-r--r--test/ApiSpecs.js20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/ApiSpecs.js b/test/ApiSpecs.js
index 46c42e53..ef25bb41 100644
--- a/test/ApiSpecs.js
+++ b/test/ApiSpecs.js
@@ -175,6 +175,26 @@ describe('api', function(){
expect(angular.Array.limitTo(items, null)).toEqual([]);
expect(angular.Array.limitTo(items, undefined)).toEqual([]);
});
+
+
+ it('should return an empty array when input is not Array type', function() {
+ expect(angular.Array.limitTo('bogus', 1)).toEqual([]);
+ expect(angular.Array.limitTo(null, 1)).toEqual([]);
+ expect(angular.Array.limitTo(undefined, 1)).toEqual([]);
+ expect(angular.Array.limitTo(null, 1)).toEqual([]);
+ expect(angular.Array.limitTo(undefined, 1)).toEqual([]);
+ expect(angular.Array.limitTo({}, 1)).toEqual([]);
+ });
+
+
+ it('should return a copy of input array if X is exceeds array length', function () {
+ expect(angular.Array.limitTo(items, 19)).toEqual(items);
+ expect(angular.Array.limitTo(items, '9')).toEqual(items);
+ expect(angular.Array.limitTo(items, -9)).toEqual(items);
+ expect(angular.Array.limitTo(items, '-9')).toEqual(items);
+
+ expect(angular.Array.limitTo(items, 9)).not.toBe(items);
+ });
});