diff options
| author | Igor Minar | 2012-03-08 15:00:38 -0800 |
|---|---|---|
| committer | Igor Minar | 2012-03-08 22:29:34 -0800 |
| commit | f54db2ccda399f2677e4ca7588018cb31545a2b4 (patch) | |
| tree | 29ef2f8f834544c84cea1a82e3d08679358fb992 /test/markupSpec.js | |
| parent | dd7b0f56fcd9785f7fccae8c4f088a8f3e7b125e (diff) | |
| download | angular.js-f54db2ccda399f2677e4ca7588018cb31545a2b4.tar.bz2 | |
chore(directives,widgets): reorg the code under directive/ dir
Diffstat (limited to 'test/markupSpec.js')
| -rw-r--r-- | test/markupSpec.js | 180 |
1 files changed, 0 insertions, 180 deletions
diff --git a/test/markupSpec.js b/test/markupSpec.js deleted file mode 100644 index 6f8e518e..00000000 --- a/test/markupSpec.js +++ /dev/null @@ -1,180 +0,0 @@ -'use strict'; - -describe("markups", function() { - var element; - - afterEach(function() { - dealoc(element); - }); - - it('should translate {{}} in text', inject(function($rootScope, $compile) { - element = $compile('<div>hello {{name}}!</div>')($rootScope) - $rootScope.$digest(); - expect(sortedHtml(element)).toEqual('<div>hello !</div>'); - $rootScope.name = 'Misko'; - $rootScope.$digest(); - expect(sortedHtml(element)).toEqual('<div>hello Misko!</div>'); - })); - - it('should translate {{}} in terminal nodes', inject(function($rootScope, $compile) { - element = $compile('<select ng:model="x"><option value="">Greet {{name}}!</option></select>')($rootScope) - $rootScope.$digest(); - expect(sortedHtml(element).replace(' selected="true"', '')). - toEqual('<select ng:model="x">' + - '<option>Greet !</option>' + - '</select>'); - $rootScope.name = 'Misko'; - $rootScope.$digest(); - expect(sortedHtml(element).replace(' selected="true"', '')). - toEqual('<select ng:model="x">' + - '<option>Greet Misko!</option>' + - '</select>'); - })); - - it('should translate {{}} in attributes', inject(function($rootScope, $compile) { - element = $compile('<div src="http://server/{{path}}.png"/>')($rootScope) - $rootScope.path = 'a/b'; - $rootScope.$digest(); - expect(element.attr('src')).toEqual("http://server/a/b.png"); - })); - - describe('OPTION value', function() { - beforeEach(function() { - this.addMatchers({ - toHaveValue: function(expected){ - this.message = function() { - return 'Expected "' + this.actual.html() + '" to have value="' + expected + '".'; - }; - - var value; - htmlParser(this.actual.html(), { - start:function(tag, attrs){ - value = attrs.value; - }, - end:noop, - chars:noop - }); - return trim(value) == trim(expected); - } - }); - }); - - - it('should populate value attribute on OPTION', inject(function($rootScope, $compile) { - element = $compile('<select ng:model="x"><option>abc</option></select>')($rootScope) - expect(element).toHaveValue('abc'); - })); - - it('should ignore value if already exists', inject(function($rootScope, $compile) { - element = $compile('<select ng:model="x"><option value="abc">xyz</option></select>')($rootScope) - expect(element).toHaveValue('abc'); - })); - - it('should set value even if newlines present', inject(function($rootScope, $compile) { - element = $compile('<select ng:model="x"><option attr="\ntext\n" \n>\nabc\n</option></select>')($rootScope) - expect(element).toHaveValue('\nabc\n'); - })); - - it('should set value even if self closing HTML', inject(function($rootScope, $compile) { - // IE removes the \n from option, which makes this test pointless - if (msie) return; - element = $compile('<select ng:model="x"><option>\n</option></select>')($rootScope) - expect(element).toHaveValue('\n'); - })); - - }); - - it('should bind href', inject(function($rootScope, $compile) { - element = $compile('<a ng:href="{{url}}"></a>')($rootScope) - $rootScope.url = 'http://server' - $rootScope.$digest(); - expect(element.attr('href')).toEqual('http://server'); - })); - - it('should bind disabled', inject(function($rootScope, $compile) { - element = $compile('<button ng:disabled="{{isDisabled}}">Button</button>')($rootScope) - $rootScope.isDisabled = false; - $rootScope.$digest(); - expect(element.attr('disabled')).toBeFalsy(); - $rootScope.isDisabled = true; - $rootScope.$digest(); - expect(element.attr('disabled')).toBeTruthy(); - })); - - it('should bind checked', inject(function($rootScope, $compile) { - element = $compile('<input type="checkbox" ng:checked="{{isChecked}}" />')($rootScope) - $rootScope.isChecked = false; - $rootScope.$digest(); - expect(element.attr('checked')).toBeFalsy(); - $rootScope.isChecked=true; - $rootScope.$digest(); - expect(element.attr('checked')).toBeTruthy(); - })); - - it('should bind selected', inject(function($rootScope, $compile) { - element = $compile('<select><option value=""></option><option ng:selected="{{isSelected}}">Greetings!</option></select>')($rootScope) - jqLite(document.body).append(element) - $rootScope.isSelected=false; - $rootScope.$digest(); - expect(element.children()[1].selected).toBeFalsy(); - $rootScope.isSelected=true; - $rootScope.$digest(); - expect(element.children()[1].selected).toBeTruthy(); - })); - - it('should bind readonly', inject(function($rootScope, $compile) { - element = $compile('<input type="text" ng:readonly="{{isReadonly}}" />')($rootScope) - $rootScope.isReadonly=false; - $rootScope.$digest(); - expect(element.attr('readOnly')).toBeFalsy(); - $rootScope.isReadonly=true; - $rootScope.$digest(); - expect(element.attr('readOnly')).toBeTruthy(); - })); - - it('should bind multiple', inject(function($rootScope, $compile) { - element = $compile('<select ng:multiple="{{isMultiple}}"></select>')($rootScope) - $rootScope.isMultiple=false; - $rootScope.$digest(); - expect(element.attr('multiple')).toBeFalsy(); - $rootScope.isMultiple='multiple'; - $rootScope.$digest(); - expect(element.attr('multiple')).toBeTruthy(); - })); - - it('should bind src', inject(function($rootScope, $compile) { - element = $compile('<div ng:src="{{url}}" />')($rootScope) - $rootScope.url = 'http://localhost/'; - $rootScope.$digest(); - expect(element.attr('src')).toEqual('http://localhost/'); - })); - - it('should bind href and merge with other attrs', inject(function($rootScope, $compile) { - element = $compile('<a ng:href="{{url}}" rel="{{rel}}"></a>')($rootScope); - $rootScope.url = 'http://server'; - $rootScope.rel = 'REL'; - $rootScope.$digest(); - expect(element.attr('href')).toEqual('http://server'); - expect(element.attr('rel')).toEqual('REL'); - })); - - it('should bind Text with no Bindings', inject(function($compile, $rootScope) { - forEach(['checked', 'disabled', 'multiple', 'readonly', 'selected'], function(name) { - element = $compile('<div ng:' + name + '="some"></div>')($rootScope) - $rootScope.$digest(); - expect(element.attr(name)).toBe(name); - dealoc(element); - }); - - element = $compile('<div ng:src="some"></div>')($rootScope) - $rootScope.$digest(); - expect(element.attr('src')).toEqual('some'); - dealoc(element); - - element = $compile('<div ng:href="some"></div>')($rootScope) - $rootScope.$digest(); - expect(element.attr('href')).toEqual('some'); - dealoc(element); - })); -}); - |
