25 lines
		
	
	
		
			780 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			780 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import {describe, it, expect, beforeEach, ddescribe, iit, xit, el} from 'angular2/test_lib';
 | 
						|
 | 
						|
import {ListWrapper} from 'angular2/src/facade/collection';
 | 
						|
import {isPresent, RegExpWrapper, RegExpMatcherWrapper} from 'angular2/src/facade/lang';
 | 
						|
 | 
						|
export function main() {
 | 
						|
  describe('RegExp', () => {
 | 
						|
    it('should expose the index for each match', () => {
 | 
						|
      var re = RegExpWrapper.create('(!)');
 | 
						|
      var matcher = RegExpWrapper.matcher(re, '0!23!567!!');
 | 
						|
      var indexes = [];
 | 
						|
      var m;
 | 
						|
 | 
						|
      while (isPresent(m = RegExpMatcherWrapper.next(matcher))) {
 | 
						|
        ListWrapper.push(indexes, m.index);
 | 
						|
        expect(m[0]).toEqual('!');
 | 
						|
        expect(m[1]).toEqual('!');
 | 
						|
        expect(m.length).toBe(2);
 | 
						|
      }
 | 
						|
 | 
						|
      expect(indexes).toEqual([1, 4, 8, 9]);
 | 
						|
    })
 | 
						|
 });
 | 
						|
}
 |