diff options
Diffstat (limited to 'harness')
-rw-r--r-- | harness/nativeFunctionMatcher.js | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/harness/nativeFunctionMatcher.js b/harness/nativeFunctionMatcher.js index 0a2d248a3..52120ea48 100644 --- a/harness/nativeFunctionMatcher.js +++ b/harness/nativeFunctionMatcher.js @@ -6,3 +6,17 @@ description: | the NativeFunction grammar production without requiring a correct tokeniser. ---*/ const NATIVE_FUNCTION_RE = /\bfunction\b[\s\S]*\([\s\S]*\)[\s\S]*\{[\s\S]*\[[\s\S]*\bnative\b[\s\S]+\bcode\b[\s\S]*\][\s\S]*\}/; + +const assertToStringOrNativeFunction = function(fn, expected) { + const actual = "" + fn; + try { + assert.sameValue(actual, expected); + } catch (unused) { + assertNativeFunction(fn); + } +}; + +const assertNativeFunction = function(fn) { + const actual = "" + fn; + assert(NATIVE_FUNCTION_RE.test(actual), "looks pretty much like a NativeFunction"); +}; |