diff options
Diffstat (limited to 'js/src/tests/test262/built-ins/RegExp/prototype/flags/get-order.js')
-rw-r--r-- | js/src/tests/test262/built-ins/RegExp/prototype/flags/get-order.js | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/js/src/tests/test262/built-ins/RegExp/prototype/flags/get-order.js b/js/src/tests/test262/built-ins/RegExp/prototype/flags/get-order.js new file mode 100644 index 0000000000..4b8e8acc52 --- /dev/null +++ b/js/src/tests/test262/built-ins/RegExp/prototype/flags/get-order.js @@ -0,0 +1,51 @@ +// Copyright (C) 2017 Aleksey Shvayka. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-get-regexp.prototype.flags +description: Gets are performed in specified order +info: | + get RegExp.prototype.flags + + [...] + 4. let hasIndices be ToBoolean(? Get(R, "hasIndices")) + 6. Let global be ToBoolean(? Get(R, "global")). + 8. Let ignoreCase be ToBoolean(? Get(R, "ignoreCase")). + 10. Let multiline be ToBoolean(? Get(R, "multiline")). + 12. Let dotAll be ToBoolean(? Get(R, "dotAll")). + 14. Let unicode be ToBoolean(? Get(R, "unicode")). + 18. Let sticky be ToBoolean(? Get(R, "sticky")). +features: [regexp-dotall, regexp-match-indices] +---*/ + +var calls = ''; +var re = { + get hasIndices() { + calls += 'd'; + }, + get global() { + calls += 'g'; + }, + get ignoreCase() { + calls += 'i'; + }, + get multiline() { + calls += 'm'; + }, + get dotAll() { + calls += 's'; + }, + get unicode() { + calls += 'u'; + }, + get sticky() { + calls += 'y'; + }, +}; + +var get = Object.getOwnPropertyDescriptor(RegExp.prototype, 'flags').get; + +get.call(re); +assert.sameValue(calls, 'dgimsuy'); + +reportCompare(0, 0); |