From 70b97383a8a6cc7f3d837fac769463742fbb7cfa Mon Sep 17 00:00:00 2001
From: Joyee Cheung <joyee@igalia.com>
Date: Fri, 8 Jun 2018 05:35:45 +0800
Subject: [PATCH] test getter on symbols and wrapper objects

---
 .../prototype/description/this-val-symbol.js  | 33 +++++++++++++++++++
 1 file changed, 33 insertions(+)
 create mode 100644 test/built-ins/Symbol/prototype/description/this-val-symbol.js

diff --git a/test/built-ins/Symbol/prototype/description/this-val-symbol.js b/test/built-ins/Symbol/prototype/description/this-val-symbol.js
new file mode 100644
index 0000000000..604e4e47ea
--- /dev/null
+++ b/test/built-ins/Symbol/prototype/description/this-val-symbol.js
@@ -0,0 +1,33 @@
+// Copyright 2018 Igalia, S.L. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: sec-symbol.prototype.description
+description: >
+    Test that calling the getter on a Symbol or a Symbol wrapper object works.
+info: |
+    1. Let s be the this value.
+    2. Let sym be ? thisSymbolValue(s).
+    3. Return sym.[[Description]].
+features: [Symbol.prototype.description]
+---*/
+
+const getter = Object.getOwnPropertyDescriptor(
+  Symbol.prototype, 'description'
+).get;
+
+const symbol = Symbol('test');
+assert.sameValue(getter.call(symbol), 'test');
+assert.sameValue(getter.call(Object(symbol)), 'test');
+
+const empty = Symbol();
+assert.sameValue(getter.call(empty), undefined);
+assert.sameValue(getter.call(Object(empty)), undefined);
+
+const undef = Symbol(undefined);
+assert.sameValue(getter.call(undef), undefined);
+assert.sameValue(getter.call(Object(undef)), undefined);
+
+const emptyStr = Symbol('');
+assert.sameValue(getter.call(emptyStr), '');
+assert.sameValue(getter.call(Object(emptyStr)), '');
-- 
GitLab