diff options
Diffstat (limited to 'js/src/tests/test262/language/expressions/logical-not/symbol-logical-not-evaluation.js')
-rw-r--r-- | js/src/tests/test262/language/expressions/logical-not/symbol-logical-not-evaluation.js | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/expressions/logical-not/symbol-logical-not-evaluation.js b/js/src/tests/test262/language/expressions/logical-not/symbol-logical-not-evaluation.js new file mode 100644 index 0000000000..4b13fb5fe0 --- /dev/null +++ b/js/src/tests/test262/language/expressions/logical-not/symbol-logical-not-evaluation.js @@ -0,0 +1,22 @@ +// Copyright (C) 2013 the V8 project authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. +/*--- +es6id: 12.5.12.1 +description: > + "Logical Not" coercion operation on Symbols +features: [Symbol] +---*/ +var sym = Symbol(); + +assert.sameValue(!sym, false, "`!sym` is `false`"); +assert.sameValue(!!sym, true, "`!!sym` is `true`"); + +if (!sym) { + throw new Test262Error("ToBoolean(Symbol) always returns `true`"); +} else if (sym) { + assert(true, "`sym` evaluates to `true`"); +} else { + throw new Test262Error("ToBoolean(Symbol) always returns `true`"); +} + +reportCompare(0, 0); |