Skip to content

Commit e1859e0

Browse files
committed
More tests.
1 parent f34bd18 commit e1859e0

File tree

1 file changed

+42
-23
lines changed

1 file changed

+42
-23
lines changed

tests/test_replace.js

Lines changed: 42 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -27,29 +27,6 @@ unit.add(module, [
2727
result = re.replace('John Smith', '$2, $1');
2828
eval(t.TEST("result === 'Smith, John'"));
2929
},
30-
function test_replaceGroupCases(t) {
31-
'use strict';
32-
33-
var re = new RE2(/(test)/g);
34-
var result = re.replace('123', '$1$20');
35-
eval(t.TEST("result === '123'"));
36-
37-
re = new RE2(/(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)/g);
38-
result = re.replace('abcdefghijklmnopqrstuvwxyz123', '$10$20');
39-
eval(t.TEST("result === 'jb0wo0123'"));
40-
41-
re = new RE2(/(.)(.)(.)(.)(.)/g);
42-
result = re.replace('abcdefghijklmnopqrstuvwxyz123', '$10$20');
43-
eval(t.TEST("result === 'a0b0f0g0k0l0p0q0u0v0z123'"));
44-
45-
re = new RE2(/(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)/g);
46-
result = re.replace('abcdefghijklmnopqrstuvwxyz123', '$10$20');
47-
eval(t.TEST("result === 'jtvwxyz123'"));
48-
49-
re = new RE2(/abcd/g);
50-
result = re.replace('abcd123', '$1$2');
51-
eval(t.TEST("result === '$1$2123'"));
52-
},
5330
function test_replaceFunReplacer(t) {
5431
'use strict';
5532

@@ -357,5 +334,47 @@ unit.add(module, [
357334
var re = new RE2(/b(?<a>1)? & (?<b>2)?y/);
358335
var result = re.replace('ab & yz', replacer);
359336
eval(t.TEST("result === 'az'"));
337+
},
338+
function test_replaceGroupSimple(t) {
339+
'use strict';
340+
341+
var re = new RE2(/(2)/);
342+
343+
var result = re.replace('123', '$0');
344+
eval(t.TEST("result === '1$03'"));
345+
result = re.replace('123', '$1');
346+
eval(t.TEST("result === '123'"));
347+
result = re.replace('123', '$2');
348+
eval(t.TEST("result === '1$23'"));
349+
350+
result = re.replace('123', '$00');
351+
eval(t.TEST("result === '1$003'"));
352+
result = re.replace('123', '$01');
353+
eval(t.TEST("result === '123'"));
354+
result = re.replace('123', '$02');
355+
eval(t.TEST("result === '1$023'"));
356+
},
357+
function test_replaceGroupCases(t) {
358+
'use strict';
359+
360+
var re = new RE2(/(test)/g);
361+
var result = re.replace('123', '$1$20');
362+
eval(t.TEST("result === '123'"));
363+
364+
re = new RE2(/(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)/g);
365+
result = re.replace('abcdefghijklmnopqrstuvwxyz123', '$10$20');
366+
eval(t.TEST("result === 'jb0wo0123'"));
367+
368+
re = new RE2(/(.)(.)(.)(.)(.)/g);
369+
result = re.replace('abcdefghijklmnopqrstuvwxyz123', '$10$20');
370+
eval(t.TEST("result === 'a0b0f0g0k0l0p0q0u0v0z123'"));
371+
372+
re = new RE2(/(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)/g);
373+
result = re.replace('abcdefghijklmnopqrstuvwxyz123', '$10$20');
374+
eval(t.TEST("result === 'jtvwxyz123'"));
375+
376+
re = new RE2(/abcd/g);
377+
result = re.replace('abcd123', '$1$2');
378+
eval(t.TEST("result === '$1$2123'"));
360379
}
361380
]);

0 commit comments

Comments
 (0)