js/src/tests/js1_5/Regress/regress-165201.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:c3386a34c98b
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6 //-----------------------------------------------------------------------------
7 var BUGNUMBER = 165201;
8 var summary = '';
9 var actual = '';
10 var expect = '';
11
12
13 summary = 'RegExp.prototype.toSource should not affect RegExp.prototype.toString';
14
15 printBugNumber(BUGNUMBER);
16 printStatus (summary);
17
18 /*
19 * Define function returning a regular expression literal
20 * and override RegExp.prototype.toSource
21 */
22
23 function f()
24 {
25 return /abc/;
26 }
27
28 RegExp.prototype.toSource = function() { return 'Hi there'; };
29
30 expect = -1;
31 actual = f.toString().indexOf('Hi there');
32
33 reportCompare(expect, actual, summary);
34
35 /*
36 * Define function returning an array literal
37 * and override RegExp.prototype.toSource
38 */
39 summary = 'Array.prototype.toSource should not affect Array.prototype.toString';
40 printBugNumber(BUGNUMBER);
41 printStatus (summary);
42
43 function g()
44 {
45 return [1,2,3];
46 }
47
48 Array.prototype.toSource = function() { return 'Hi there'; }
49
50 expect = -1;
51 actual = g.toString().indexOf('Hi there');
52
53 reportCompare(expect, actual, summary);
54
55

mercurial