2010-01-06 00:36:58 +00:00
|
|
|
FiltersTest = TestCase('FiltersTest');
|
|
|
|
|
|
2010-04-08 20:43:40 +00:00
|
|
|
FiltersTest.prototype.testCurrency = function(){
|
|
|
|
|
var html = jqLite('<span/>');
|
|
|
|
|
var context = {$element:html};
|
2010-01-09 23:02:43 +00:00
|
|
|
var currency = bind(context, angular.filter.currency);
|
2010-01-06 00:36:58 +00:00
|
|
|
|
|
|
|
|
assertEquals(currency(0), '$0.00');
|
2010-07-13 18:20:11 +00:00
|
|
|
assertEquals(html.hasClass('ng:format-negative'), false);
|
2010-01-06 00:36:58 +00:00
|
|
|
assertEquals(currency(-999), '$-999.00');
|
2010-07-13 18:20:11 +00:00
|
|
|
assertEquals(html.hasClass('ng:format-negative'), true);
|
2010-01-06 00:36:58 +00:00
|
|
|
assertEquals(currency(1234.5678), '$1,234.57');
|
2010-07-13 18:20:11 +00:00
|
|
|
assertEquals(html.hasClass('ng:format-negative'), false);
|
2010-01-06 00:36:58 +00:00
|
|
|
};
|
|
|
|
|
|
2010-04-07 23:36:33 +00:00
|
|
|
FiltersTest.prototype.testFilterThisIsContext = function(){
|
|
|
|
|
expectAsserts(1);
|
|
|
|
|
var scope = createScope();
|
|
|
|
|
scope.name = 'misko';
|
2010-01-06 00:36:58 +00:00
|
|
|
angular.filter.testFn = function () {
|
2010-02-12 22:16:33 +00:00
|
|
|
assertEquals('scope not equal', 'misko', this.name);
|
2010-01-06 00:36:58 +00:00
|
|
|
};
|
2010-04-07 23:36:33 +00:00
|
|
|
scope.$eval("0|testFn");
|
2010-01-06 00:36:58 +00:00
|
|
|
delete angular.filter['testFn'];
|
|
|
|
|
};
|
|
|
|
|
|
2010-04-08 20:43:40 +00:00
|
|
|
FiltersTest.prototype.testNumberFormat = function(){
|
|
|
|
|
var context = {jqElement:jqLite('<span/>')};
|
2010-01-09 23:02:43 +00:00
|
|
|
var number = bind(context, angular.filter.number);
|
2010-01-06 00:36:58 +00:00
|
|
|
|
|
|
|
|
assertEquals('0', number(0, 0));
|
|
|
|
|
assertEquals('0.00', number(0));
|
|
|
|
|
assertEquals('-999.00', number(-999));
|
|
|
|
|
assertEquals('1,234.57', number(1234.5678));
|
|
|
|
|
assertEquals('', number(Number.NaN));
|
|
|
|
|
assertEquals('1,234.57', number("1234.5678"));
|
|
|
|
|
assertEquals("", number(1/0));
|
|
|
|
|
};
|
|
|
|
|
|
2010-04-08 20:43:40 +00:00
|
|
|
FiltersTest.prototype.testJson = function () {
|
|
|
|
|
assertEquals(toJson({a:"b"}, true), angular.filter.json.call({$element:jqLite('<div></div>')}, {a:"b"}));
|
2010-01-06 00:36:58 +00:00
|
|
|
};
|
|
|
|
|
|
2010-04-08 20:43:40 +00:00
|
|
|
FiltersTest.prototype.testLowercase = function() {
|
2010-01-06 00:36:58 +00:00
|
|
|
assertEquals('abc', angular.filter.lowercase('AbC'));
|
|
|
|
|
assertEquals(null, angular.filter.lowercase(null));
|
|
|
|
|
};
|
|
|
|
|
|
2010-04-08 20:43:40 +00:00
|
|
|
FiltersTest.prototype.testUppercase = function() {
|
2010-01-06 00:36:58 +00:00
|
|
|
assertEquals('ABC', angular.filter.uppercase('AbC'));
|
|
|
|
|
assertEquals(null, angular.filter.uppercase(null));
|
|
|
|
|
};
|
|
|
|
|
|
2010-04-08 20:43:40 +00:00
|
|
|
FiltersTest.prototype.testHtml = function() {
|
2010-04-23 00:11:56 +00:00
|
|
|
var html = angular.filter.html("a<b>c</b>d");
|
|
|
|
|
expect(html instanceof HTML).toBeTruthy();
|
|
|
|
|
expect(html.html).toEqual("a<b>c</b>d");
|
2010-01-06 00:36:58 +00:00
|
|
|
};
|
2010-01-19 01:56:08 +00:00
|
|
|
|
2010-04-08 20:43:40 +00:00
|
|
|
FiltersTest.prototype.testLinky = function() {
|
2010-01-20 14:52:50 +00:00
|
|
|
var linky = angular.filter.linky;
|
2010-01-19 01:56:08 +00:00
|
|
|
assertEquals(
|
2010-04-21 21:29:05 +00:00
|
|
|
'<a href="http://ab/">http://ab/</a> ' +
|
|
|
|
|
'(<a href="http://a/">http://a/</a>) ' +
|
|
|
|
|
'<<a href="http://a/">http://a/</a>> ' +
|
2010-01-20 14:52:50 +00:00
|
|
|
'<a href="http://1.2/v:~-123">http://1.2/v:~-123</a>. c',
|
2010-04-23 00:11:56 +00:00
|
|
|
linky("http://ab/ (http://a/) <http://a/> http://1.2/v:~-123. c").html);
|
2010-01-20 14:52:50 +00:00
|
|
|
assertEquals(undefined, linky(undefined));
|
2010-01-19 01:56:08 +00:00
|
|
|
};
|
|
|
|
|
|