53 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			53 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
|  | import { | ||
|  |   AsyncTestCompleter, | ||
|  |   beforeEach, | ||
|  |   ddescribe, | ||
|  |   describe, | ||
|  |   el, | ||
|  |   expect, | ||
|  |   iit, | ||
|  |   inject, | ||
|  |   it, | ||
|  |   xit, | ||
|  |   beforeEachBindings, | ||
|  |   SpyObject, | ||
|  |   stringifyElement | ||
|  | } from 'angular2/test_lib'; | ||
|  | 
 | ||
|  | import {DOM} from 'angular2/src/dom/dom_adapter'; | ||
|  | 
 | ||
|  | export function main() { | ||
|  |   describe('dom adapter', () => { | ||
|  |     it('should not coalesque text nodes', () => { | ||
|  |       var el1 = el('<div>a</div>'); | ||
|  |       var el2 = el('<div>b</div>'); | ||
|  |       DOM.appendChild(el2, DOM.firstChild(el1)); | ||
|  |       expect(DOM.childNodes(el2).length).toBe(2); | ||
|  | 
 | ||
|  |       var el2Clone = DOM.clone(el2); | ||
|  |       expect(DOM.childNodes(el2Clone).length).toBe(2); | ||
|  |     }); | ||
|  | 
 | ||
|  |     it('should clone correctly', () => { | ||
|  |       var el1 = el('<div x="y">a<span>b</span></div>'); | ||
|  |       var clone = DOM.clone(el1); | ||
|  | 
 | ||
|  |       expect(clone).not.toBe(el1); | ||
|  |       DOM.setAttribute(clone, 'test', '1'); | ||
|  |       expect(DOM.getOuterHTML(clone)).toEqual('<div x="y" test="1">a<span>b</span></div>'); | ||
|  |       expect(DOM.getAttribute(el1, 'test')).toBeFalsy(); | ||
|  | 
 | ||
|  |       var cNodes = DOM.childNodes(clone); | ||
|  |       var firstChild = cNodes[0]; | ||
|  |       var secondChild = cNodes[1]; | ||
|  |       expect(DOM.parentElement(firstChild)).toBe(clone); | ||
|  |       expect(DOM.nextSibling(firstChild)).toBe(secondChild); | ||
|  |       expect(DOM.isTextNode(firstChild)).toBe(true); | ||
|  | 
 | ||
|  |       expect(DOM.parentElement(secondChild)).toBe(clone); | ||
|  |       expect(DOM.nextSibling(secondChild)).toBeFalsy(); | ||
|  |       expect(DOM.isElementNode(secondChild)).toBe(true); | ||
|  | 
 | ||
|  |     }); | ||
|  |   }); | ||
|  | } |