From a7b5a7aa9735acc07039015f2ad19c0ebb992307 Mon Sep 17 00:00:00 2001
From: Rick Waldron <waldron.rick@gmail.com>
Date: Tue, 3 Oct 2017 17:02:29 -0400
Subject: [PATCH] Features.txt: Add string-trimming; replace "#" in feature
 tags (#1247)

---
 features.txt                                                  | 4 ++--
 .../prototype/endsWith/String.prototype.endsWith_Fail.js      | 2 +-
 .../prototype/endsWith/String.prototype.endsWith_Fail_2.js    | 2 +-
 .../prototype/endsWith/String.prototype.endsWith_Success.js   | 2 +-
 .../prototype/endsWith/String.prototype.endsWith_Success_2.js | 2 +-
 .../prototype/endsWith/String.prototype.endsWith_Success_3.js | 2 +-
 .../prototype/endsWith/String.prototype.endsWith_Success_4.js | 2 +-
 .../String/prototype/endsWith/coerced-values-of-position.js   | 1 +
 test/built-ins/String/prototype/endsWith/endsWith.js          | 1 +
 test/built-ins/String/prototype/endsWith/length.js            | 1 +
 test/built-ins/String/prototype/endsWith/name.js              | 1 +
 .../endsWith/return-abrupt-from-position-as-symbol.js         | 2 +-
 .../String/prototype/endsWith/return-abrupt-from-position.js  | 1 +
 .../endsWith/return-abrupt-from-searchstring-as-symbol.js     | 2 +-
 .../endsWith/return-abrupt-from-searchstring-regexp-test.js   | 2 +-
 .../prototype/endsWith/return-abrupt-from-searchstring.js     | 1 +
 .../prototype/endsWith/return-abrupt-from-this-as-symbol.js   | 2 +-
 .../String/prototype/endsWith/return-abrupt-from-this.js      | 1 +
 .../return-false-if-search-start-is-less-than-zero.js         | 1 +
 .../endsWith/return-true-if-searchstring-is-empty.js          | 3 ++-
 .../prototype/endsWith/searchstring-found-with-position.js    | 1 +
 .../prototype/endsWith/searchstring-found-without-position.js | 1 +
 .../prototype/endsWith/searchstring-is-regexp-throws.js       | 1 +
 .../endsWith/searchstring-not-found-with-position.js          | 1 +
 .../endsWith/searchstring-not-found-without-position.js       | 1 +
 .../String/prototype/endsWith/this-is-null-throws.js          | 1 +
 .../String/prototype/endsWith/this-is-undefined-throws.js     | 1 +
 .../includes/String.prototype.includes_FailBadLocation.js     | 2 +-
 .../includes/String.prototype.includes_FailLocation.js        | 2 +-
 .../includes/String.prototype.includes_FailMissingLetter.js   | 2 +-
 .../prototype/includes/String.prototype.includes_Success.js   | 2 +-
 .../includes/String.prototype.includes_SuccessNoLocation.js   | 2 +-
 .../includes/String.prototype.includes_lengthProp.js          | 3 +--
 .../String/prototype/includes/coerced-values-of-position.js   | 1 +
 test/built-ins/String/prototype/includes/includes.js          | 1 +
 test/built-ins/String/prototype/includes/length.js            | 1 +
 test/built-ins/String/prototype/includes/name.js              | 1 +
 .../includes/return-abrupt-from-position-as-symbol.js         | 1 +
 .../String/prototype/includes/return-abrupt-from-position.js  | 1 +
 .../includes/return-abrupt-from-searchstring-as-symbol.js     | 2 +-
 .../includes/return-abrupt-from-searchstring-regexp-test.js   | 2 +-
 .../prototype/includes/return-abrupt-from-searchstring.js     | 1 +
 .../prototype/includes/return-abrupt-from-this-as-symbol.js   | 2 +-
 .../String/prototype/includes/return-abrupt-from-this.js      | 2 +-
 .../includes/return-false-with-out-of-bounds-position.js      | 1 +
 .../includes/return-true-if-searchstring-is-empty.js          | 3 ++-
 .../prototype/includes/searchstring-found-with-position.js    | 1 +
 .../prototype/includes/searchstring-found-without-position.js | 1 +
 .../prototype/includes/searchstring-is-regexp-throws.js       | 2 +-
 .../includes/searchstring-not-found-with-position.js          | 2 +-
 .../includes/searchstring-not-found-without-position.js       | 2 +-
 .../String/prototype/includes/this-is-null-throws.js          | 2 +-
 .../String/prototype/includes/this-is-undefined-throws.js     | 2 +-
 53 files changed, 56 insertions(+), 30 deletions(-)

diff --git a/features.txt b/features.txt
index 7760b62586..92cce17a1b 100644
--- a/features.txt
+++ b/features.txt
@@ -95,8 +95,8 @@ Reflect.construct
 Reflect.set
 Reflect.setPrototypeOf
 Set
-String#endsWith
-String#includes
+String.prototype.endsWith
+String.prototype.includes
 super
 Symbol
 Symbol.hasInstance
diff --git a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail.js b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail.js
index 6a9ee85854..6e53352e03 100644
--- a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail.js
+++ b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail.js
@@ -4,7 +4,7 @@
 /*---
 author: Ryan Lewis
 description: endsWith should return false when called on 'word' and passed 'r'.
-features: [String#endsWith]
+features: [String.prototype.endsWith]
 ---*/
 
 assert.sameValue('word'.endsWith('r'), false, '"word".endsWith("r")');
diff --git a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail_2.js b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail_2.js
index 0b34a7b410..ebaf927ab1 100644
--- a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail_2.js
+++ b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail_2.js
@@ -6,7 +6,7 @@ author: Ryan Lewis
 description: >
     endsWith should return false when called on 'word' and passed 'd',
     with an endPosition of 3.
-features: [String#endsWith]
+features: [String.prototype.endsWith]
 ---*/
 
 assert.sameValue('word'.endsWith('d', 3), false, '"word".endsWith("d", 3)');
diff --git a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success.js b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success.js
index 854bc56eed..723a31b247 100644
--- a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success.js
+++ b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success.js
@@ -6,7 +6,7 @@ author: Ryan Lewis
 description: >
     endsWith should return true when called on 'word' and passed 'd'
     and with no endPosition (defaults to 4).
-features: [String#endsWith]
+features: [String.prototype.endsWith]
 ---*/
 
 assert.sameValue('word'.endsWith('d'), true, '"word".endsWith("d")');
diff --git a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_2.js b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_2.js
index 23aba85a2f..1be5a3d031 100644
--- a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_2.js
+++ b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_2.js
@@ -6,7 +6,7 @@ author: Ryan Lewis
 description: >
     endsWith should return true when called on 'word' and passed 'd'
     and with an endPosition of 4.
-features: [String#endsWith]
+features: [String.prototype.endsWith]
 ---*/
 
 assert.sameValue('word'.endsWith('d', 4), true, '"word".endsWith("d", 4)');
diff --git a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_3.js b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_3.js
index 0b8ceae787..d75db6457b 100644
--- a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_3.js
+++ b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_3.js
@@ -6,7 +6,7 @@ author: Ryan Lewis
 description: >
     endsWith should return true when called on 'word' and passed 'd'
     and with an endPosition of 25.
-features: [String#endsWith]
+features: [String.prototype.endsWith]
 ---*/
 
 assert.sameValue('word'.endsWith('d', 25), true, '"word".endsWith("d", 25)');
diff --git a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_4.js b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_4.js
index 5318ce43fd..a4d741dbc0 100644
--- a/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_4.js
+++ b/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_4.js
@@ -6,7 +6,7 @@ author: Ryan Lewis
 description: >
     endsWith should return true when called on 'word' and passed 'r',
     with an endPosition of 3.
-features: [String#endsWith]
+features: [String.prototype.endsWith]
 ---*/
 
 assert.sameValue('word'.endsWith('r', 3), true, '"word".endsWith("r", 3)');
diff --git a/test/built-ins/String/prototype/endsWith/coerced-values-of-position.js b/test/built-ins/String/prototype/endsWith/coerced-values-of-position.js
index 59f53ebb83..ac73c7683f 100644
--- a/test/built-ins/String/prototype/endsWith/coerced-values-of-position.js
+++ b/test/built-ins/String/prototype/endsWith/coerced-values-of-position.js
@@ -19,6 +19,7 @@ info: >
   is the same as the full element sequence of searchStr, return true.
   17. Otherwise, return false.
   ...
+features: [String.prototype.endsWith]
 ---*/
 
 var str = 'The future is cool!';
diff --git a/test/built-ins/String/prototype/endsWith/endsWith.js b/test/built-ins/String/prototype/endsWith/endsWith.js
index 323b4df1cb..1a20d2e2b6 100644
--- a/test/built-ins/String/prototype/endsWith/endsWith.js
+++ b/test/built-ins/String/prototype/endsWith/endsWith.js
@@ -9,6 +9,7 @@ info: >
 
   17 ECMAScript Standard Built-in Objects
 includes: [propertyHelper.js]
+features: [String.prototype.endsWith]
 ---*/
 
 assert.sameValue(
diff --git a/test/built-ins/String/prototype/endsWith/length.js b/test/built-ins/String/prototype/endsWith/length.js
index 94d1bacdba..5f6f078092 100644
--- a/test/built-ins/String/prototype/endsWith/length.js
+++ b/test/built-ins/String/prototype/endsWith/length.js
@@ -10,6 +10,7 @@ info: >
   The length property of the endsWith method is 1.
 
 includes: [propertyHelper.js]
+features: [String.prototype.endsWith]
 ---*/
 
 assert.sameValue(
diff --git a/test/built-ins/String/prototype/endsWith/name.js b/test/built-ins/String/prototype/endsWith/name.js
index 6dd674f0df..a98cace09e 100644
--- a/test/built-ins/String/prototype/endsWith/name.js
+++ b/test/built-ins/String/prototype/endsWith/name.js
@@ -10,6 +10,7 @@ info: >
   17 ECMAScript Standard Built-in Objects
 
 includes: [propertyHelper.js]
+features: [String.prototype.endsWith]
 ---*/
 
 assert.sameValue(
diff --git a/test/built-ins/String/prototype/endsWith/return-abrupt-from-position-as-symbol.js b/test/built-ins/String/prototype/endsWith/return-abrupt-from-position-as-symbol.js
index 6c0ad476ac..8aaea6eec0 100644
--- a/test/built-ins/String/prototype/endsWith/return-abrupt-from-position-as-symbol.js
+++ b/test/built-ins/String/prototype/endsWith/return-abrupt-from-position-as-symbol.js
@@ -12,7 +12,7 @@ info: >
   ToInteger(endPosition).
   11. ReturnIfAbrupt(pos).
   ...
-features: [Symbol]
+features: [Symbol, String.prototype.endsWith]
 ---*/
 
 var position = Symbol();
diff --git a/test/built-ins/String/prototype/endsWith/return-abrupt-from-position.js b/test/built-ins/String/prototype/endsWith/return-abrupt-from-position.js
index e7916d9241..36926de676 100644
--- a/test/built-ins/String/prototype/endsWith/return-abrupt-from-position.js
+++ b/test/built-ins/String/prototype/endsWith/return-abrupt-from-position.js
@@ -12,6 +12,7 @@ info: >
   ToInteger(endPosition).
   11. ReturnIfAbrupt(pos).
   ...
+features: [String.prototype.endsWith]
 ---*/
 
 var position = {
diff --git a/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-as-symbol.js b/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-as-symbol.js
index 568316cd8c..1bdfd5539b 100644
--- a/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-as-symbol.js
+++ b/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-as-symbol.js
@@ -11,7 +11,7 @@ info: >
   7. Let searchStr be ToString(searchString).
   8. ReturnIfAbrupt(searchStr).
   ...
-features: [Symbol]
+features: [Symbol, String.prototype.endsWith]
 ---*/
 
 var s = Symbol();
diff --git a/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-regexp-test.js b/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-regexp-test.js
index ea46e0404c..43b9c893d5 100644
--- a/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-regexp-test.js
+++ b/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-regexp-test.js
@@ -16,7 +16,7 @@ info: >
 
   2. Let isRegExp be Get(argument, @@match).
   3. ReturnIfAbrupt(isRegExp).
-features: [Symbol.match]
+features: [Symbol.match, String.prototype.endsWith]
 ---*/
 
 var obj = {};
diff --git a/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring.js b/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring.js
index 9497b73de7..c5b50d7300 100644
--- a/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring.js
+++ b/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring.js
@@ -11,6 +11,7 @@ info: >
   7. Let searchStr be ToString(searchString).
   8. ReturnIfAbrupt(searchStr).
   ...
+features: [String.prototype.endsWith]
 ---*/
 
 var obj = {
diff --git a/test/built-ins/String/prototype/endsWith/return-abrupt-from-this-as-symbol.js b/test/built-ins/String/prototype/endsWith/return-abrupt-from-this-as-symbol.js
index 8e17dc66ab..b2fe3ba6ad 100644
--- a/test/built-ins/String/prototype/endsWith/return-abrupt-from-this-as-symbol.js
+++ b/test/built-ins/String/prototype/endsWith/return-abrupt-from-this-as-symbol.js
@@ -11,7 +11,7 @@ info: >
   2. Let S be ToString(O).
   3. ReturnIfAbrupt(S).
   ...
-features: [Symbol]
+features: [Symbol, String.prototype.endsWith]
 ---*/
 
 var s = Symbol('');
diff --git a/test/built-ins/String/prototype/endsWith/return-abrupt-from-this.js b/test/built-ins/String/prototype/endsWith/return-abrupt-from-this.js
index 4e1d6aa8d2..692f696ff9 100644
--- a/test/built-ins/String/prototype/endsWith/return-abrupt-from-this.js
+++ b/test/built-ins/String/prototype/endsWith/return-abrupt-from-this.js
@@ -10,6 +10,7 @@ info: >
   1. Let O be RequireObjectCoercible(this value).
   2. Let S be ToString(O).
   3. ReturnIfAbrupt(S).
+features: [String.prototype.endsWith]
 ---*/
 
 var o = {
diff --git a/test/built-ins/String/prototype/endsWith/return-false-if-search-start-is-less-than-zero.js b/test/built-ins/String/prototype/endsWith/return-false-if-search-start-is-less-than-zero.js
index c3c139ec1c..aa2651179f 100644
--- a/test/built-ins/String/prototype/endsWith/return-false-if-search-start-is-less-than-zero.js
+++ b/test/built-ins/String/prototype/endsWith/return-false-if-search-start-is-less-than-zero.js
@@ -19,6 +19,7 @@ info: >
   ...
 
   Note: (min(max(pos, 0), len) - searchString.length) < 0;
+features: [String.prototype.endsWith]
 ---*/
 
 assert.sameValue(
diff --git a/test/built-ins/String/prototype/endsWith/return-true-if-searchstring-is-empty.js b/test/built-ins/String/prototype/endsWith/return-true-if-searchstring-is-empty.js
index 2188726e2e..39f4b00eed 100644
--- a/test/built-ins/String/prototype/endsWith/return-true-if-searchstring-is-empty.js
+++ b/test/built-ins/String/prototype/endsWith/return-true-if-searchstring-is-empty.js
@@ -18,6 +18,7 @@ info: >
   16. If the sequence of elements of S starting at start of length searchLength
   is the same as the full element sequence of searchStr, return true.
   ...
+features: [String.prototype.endsWith]
 ---*/
 
 var str = 'The future is cool!';
@@ -45,4 +46,4 @@ assert(
 assert(
   str.endsWith('', -Infinity),
   'str.endsWith("", -Infinity) returns true'
-);
\ No newline at end of file
+);
diff --git a/test/built-ins/String/prototype/endsWith/searchstring-found-with-position.js b/test/built-ins/String/prototype/endsWith/searchstring-found-with-position.js
index cae2e6f013..99c3b76df1 100644
--- a/test/built-ins/String/prototype/endsWith/searchstring-found-with-position.js
+++ b/test/built-ins/String/prototype/endsWith/searchstring-found-with-position.js
@@ -19,6 +19,7 @@ info: >
   16. If the sequence of elements of S starting at start of length searchLength
   is the same as the full element sequence of searchStr, return true.
   ...
+features: [String.prototype.endsWith]
 ---*/
 
 var str = 'The future is cool!';
diff --git a/test/built-ins/String/prototype/endsWith/searchstring-found-without-position.js b/test/built-ins/String/prototype/endsWith/searchstring-found-without-position.js
index 731a01b1c9..0e38063e27 100644
--- a/test/built-ins/String/prototype/endsWith/searchstring-found-without-position.js
+++ b/test/built-ins/String/prototype/endsWith/searchstring-found-without-position.js
@@ -18,6 +18,7 @@ info: >
   16. If the sequence of elements of S starting at start of length searchLength
   is the same as the full element sequence of searchStr, return true.
   ...
+features: [String.prototype.endsWith]
 ---*/
 
 var str = 'The future is cool!';
diff --git a/test/built-ins/String/prototype/endsWith/searchstring-is-regexp-throws.js b/test/built-ins/String/prototype/endsWith/searchstring-is-regexp-throws.js
index 4079b99f76..94998d4192 100644
--- a/test/built-ins/String/prototype/endsWith/searchstring-is-regexp-throws.js
+++ b/test/built-ins/String/prototype/endsWith/searchstring-is-regexp-throws.js
@@ -12,6 +12,7 @@ info: >
   5. ReturnIfAbrupt(isRegExp).
   6. If isRegExp is true, throw a TypeError exception.
   ...
+features: [String.prototype.endsWith]
 ---*/
 
 var searchString = /./;
diff --git a/test/built-ins/String/prototype/endsWith/searchstring-not-found-with-position.js b/test/built-ins/String/prototype/endsWith/searchstring-not-found-with-position.js
index 60a6cc0762..598c4244b3 100644
--- a/test/built-ins/String/prototype/endsWith/searchstring-not-found-with-position.js
+++ b/test/built-ins/String/prototype/endsWith/searchstring-not-found-with-position.js
@@ -19,6 +19,7 @@ info: >
   is the same as the full element sequence of searchStr, return true.
   17. Otherwise, return false.
   ...
+features: [String.prototype.endsWith]
 ---*/
 
 var str = 'The future is cool!';
diff --git a/test/built-ins/String/prototype/endsWith/searchstring-not-found-without-position.js b/test/built-ins/String/prototype/endsWith/searchstring-not-found-without-position.js
index ad0a93c19d..97d2343cbe 100644
--- a/test/built-ins/String/prototype/endsWith/searchstring-not-found-without-position.js
+++ b/test/built-ins/String/prototype/endsWith/searchstring-not-found-without-position.js
@@ -19,6 +19,7 @@ info: >
   is the same as the full element sequence of searchStr, return true.
   17. Otherwise, return false.
   ...
+features: [String.prototype.endsWith]
 ---*/
 
 var str = 'The future is cool!';
diff --git a/test/built-ins/String/prototype/endsWith/this-is-null-throws.js b/test/built-ins/String/prototype/endsWith/this-is-null-throws.js
index 71449e9671..45711b57fb 100644
--- a/test/built-ins/String/prototype/endsWith/this-is-null-throws.js
+++ b/test/built-ins/String/prototype/endsWith/this-is-null-throws.js
@@ -9,6 +9,7 @@ info: >
 
   1. Let O be RequireObjectCoercible(this value).
   2. Let S be ToString(O).
+features: [String.prototype.endsWith]
 ---*/
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/String/prototype/endsWith/this-is-undefined-throws.js b/test/built-ins/String/prototype/endsWith/this-is-undefined-throws.js
index 3e174b05b7..57dbabe7d0 100644
--- a/test/built-ins/String/prototype/endsWith/this-is-undefined-throws.js
+++ b/test/built-ins/String/prototype/endsWith/this-is-undefined-throws.js
@@ -9,6 +9,7 @@ info: >
 
   1. Let O be RequireObjectCoercible(this value).
   2. Let S be ToString(O).
+features: [String.prototype.endsWith]
 ---*/
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/String/prototype/includes/String.prototype.includes_FailBadLocation.js b/test/built-ins/String/prototype/includes/String.prototype.includes_FailBadLocation.js
index b98ebe9f55..9eada7bdc5 100644
--- a/test/built-ins/String/prototype/includes/String.prototype.includes_FailBadLocation.js
+++ b/test/built-ins/String/prototype/includes/String.prototype.includes_FailBadLocation.js
@@ -6,7 +6,7 @@ author: Ryan Lewis
 description: >
     String should return false if a location is passed that is
     greather than the length of the string.
-features: [String#includes]
+features: [String.prototype.includes]
 ---*/
 
 assert.sameValue('word'.includes('w', 5), false, '"word".includes("w", 5)');
diff --git a/test/built-ins/String/prototype/includes/String.prototype.includes_FailLocation.js b/test/built-ins/String/prototype/includes/String.prototype.includes_FailLocation.js
index c787bb81aa..1b8a9fadf9 100644
--- a/test/built-ins/String/prototype/includes/String.prototype.includes_FailLocation.js
+++ b/test/built-ins/String/prototype/includes/String.prototype.includes_FailLocation.js
@@ -6,7 +6,7 @@ author: Ryan Lewis
 description: >
     String should return false if a letter is not found in the word
     starting from the passed location.
-features: [String#includes]
+features: [String.prototype.includes]
 ---*/
 
 assert.sameValue('word'.includes('o', 3), false, '"word".includes("o", 3)');
diff --git a/test/built-ins/String/prototype/includes/String.prototype.includes_FailMissingLetter.js b/test/built-ins/String/prototype/includes/String.prototype.includes_FailMissingLetter.js
index 5e468b27f6..601bd60ff7 100644
--- a/test/built-ins/String/prototype/includes/String.prototype.includes_FailMissingLetter.js
+++ b/test/built-ins/String/prototype/includes/String.prototype.includes_FailMissingLetter.js
@@ -4,7 +4,7 @@
 /*---
 author: Ryan Lewis
 description: String should return false if a letter is not found in the word.
-features: [String#includes]
+features: [String.prototype.includes]
 ---*/
 
 assert.sameValue('word'.includes('a', 0), false, '"word".includes("a", 0)');
diff --git a/test/built-ins/String/prototype/includes/String.prototype.includes_Success.js b/test/built-ins/String/prototype/includes/String.prototype.includes_Success.js
index cf71285b57..4f8d79d440 100644
--- a/test/built-ins/String/prototype/includes/String.prototype.includes_Success.js
+++ b/test/built-ins/String/prototype/includes/String.prototype.includes_Success.js
@@ -6,7 +6,7 @@ author: Ryan Lewis
 description: >
     String should return true when called on 'word' and passed 'w' and
     the location 0.
-features: [String#includes]
+features: [String.prototype.includes]
 ---*/
 
 assert.sameValue('word'.includes('w', 0), true, '"word".includes("w", 0)');
diff --git a/test/built-ins/String/prototype/includes/String.prototype.includes_SuccessNoLocation.js b/test/built-ins/String/prototype/includes/String.prototype.includes_SuccessNoLocation.js
index 3128b0100f..465398c1fb 100644
--- a/test/built-ins/String/prototype/includes/String.prototype.includes_SuccessNoLocation.js
+++ b/test/built-ins/String/prototype/includes/String.prototype.includes_SuccessNoLocation.js
@@ -6,7 +6,7 @@ author: Ryan Lewis
 description: >
     String should return true when called on 'word' and passed 'w' and
     with no location (defaults to 0).
-features: [String#includes]
+features: [String.prototype.includes]
 ---*/
 
 assert.sameValue('word'.includes('w'), true, '"word".includes("w")');
diff --git a/test/built-ins/String/prototype/includes/String.prototype.includes_lengthProp.js b/test/built-ins/String/prototype/includes/String.prototype.includes_lengthProp.js
index 999c8fc88b..6ee93b480c 100644
--- a/test/built-ins/String/prototype/includes/String.prototype.includes_lengthProp.js
+++ b/test/built-ins/String/prototype/includes/String.prototype.includes_lengthProp.js
@@ -4,7 +4,6 @@
 /*---
 author: Ryan Lewis
 description: String should have the property length with size of 1.
-features: [String#includes]
+features: [String.prototype.includes]
 ---*/
-
 assert.sameValue('word'.includes.length, 1, '"word".includes.length');
diff --git a/test/built-ins/String/prototype/includes/coerced-values-of-position.js b/test/built-ins/String/prototype/includes/coerced-values-of-position.js
index 90f6a19aab..65f49f7310 100644
--- a/test/built-ins/String/prototype/includes/coerced-values-of-position.js
+++ b/test/built-ins/String/prototype/includes/coerced-values-of-position.js
@@ -20,6 +20,7 @@ info: >
   at index j of searchStr, return true; but if there is no such integer k,
   return false.
   ...
+features: [String.prototype.includes]
 ---*/
 
 var str = 'The future is cool!';
diff --git a/test/built-ins/String/prototype/includes/includes.js b/test/built-ins/String/prototype/includes/includes.js
index 54315a919f..a392f960e8 100644
--- a/test/built-ins/String/prototype/includes/includes.js
+++ b/test/built-ins/String/prototype/includes/includes.js
@@ -9,6 +9,7 @@ info: >
 
   17 ECMAScript Standard Built-in Objects
 includes: [propertyHelper.js]
+features: [String.prototype.includes]
 ---*/
 
 assert.sameValue(
diff --git a/test/built-ins/String/prototype/includes/length.js b/test/built-ins/String/prototype/includes/length.js
index 7b627a78cf..747b1d9fcd 100644
--- a/test/built-ins/String/prototype/includes/length.js
+++ b/test/built-ins/String/prototype/includes/length.js
@@ -10,6 +10,7 @@ info: >
   17 ECMAScript Standard Built-in Objects
 
 includes: [propertyHelper.js]
+features: [String.prototype.includes]
 ---*/
 
 assert.sameValue(
diff --git a/test/built-ins/String/prototype/includes/name.js b/test/built-ins/String/prototype/includes/name.js
index 58e815d0ad..6c8c978ec3 100644
--- a/test/built-ins/String/prototype/includes/name.js
+++ b/test/built-ins/String/prototype/includes/name.js
@@ -10,6 +10,7 @@ info: >
   17 ECMAScript Standard Built-in Objects
 
 includes: [propertyHelper.js]
+features: [String.prototype.includes]
 ---*/
 
 assert.sameValue(
diff --git a/test/built-ins/String/prototype/includes/return-abrupt-from-position-as-symbol.js b/test/built-ins/String/prototype/includes/return-abrupt-from-position-as-symbol.js
index fc60a16e31..e6bde3b8d2 100644
--- a/test/built-ins/String/prototype/includes/return-abrupt-from-position-as-symbol.js
+++ b/test/built-ins/String/prototype/includes/return-abrupt-from-position-as-symbol.js
@@ -13,6 +13,7 @@ info: >
   10. ReturnIfAbrupt(pos).
   ...
 features: [Symbol]
+features: [String.prototype.includes]
 ---*/
 
 var position = Symbol();
diff --git a/test/built-ins/String/prototype/includes/return-abrupt-from-position.js b/test/built-ins/String/prototype/includes/return-abrupt-from-position.js
index 33f497000e..3aab3fee5d 100644
--- a/test/built-ins/String/prototype/includes/return-abrupt-from-position.js
+++ b/test/built-ins/String/prototype/includes/return-abrupt-from-position.js
@@ -12,6 +12,7 @@ info: >
   produces the value 0).
   10. ReturnIfAbrupt(pos).
   ...
+features: [String.prototype.includes]
 ---*/
 
 var position = {
diff --git a/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-as-symbol.js b/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-as-symbol.js
index 2b21ffda44..c84347b2b0 100644
--- a/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-as-symbol.js
+++ b/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-as-symbol.js
@@ -11,7 +11,7 @@ info: >
   7. Let searchStr be ToString(searchString).
   8. ReturnIfAbrupt(searchStr).
   ...
-features: [Symbol]
+features: [Symbol, String.prototype.includes]
 ---*/
 
 var s = Symbol();
diff --git a/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-regexp-test.js b/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-regexp-test.js
index 0df2c2d0a6..89097ccc85 100644
--- a/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-regexp-test.js
+++ b/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-regexp-test.js
@@ -16,7 +16,7 @@ info: >
 
   2. Let isRegExp be Get(argument, @@match).
   3. ReturnIfAbrupt(isRegExp).
-features: [Symbol.match]
+features: [Symbol.match, String.prototype.includes]
 ---*/
 
 var obj = {};
diff --git a/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring.js b/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring.js
index 3ac10db28a..9816b92379 100644
--- a/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring.js
+++ b/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring.js
@@ -11,6 +11,7 @@ info: >
   7. Let searchStr be ToString(searchString).
   8. ReturnIfAbrupt(searchStr).
   ...
+features: [String.prototype.includes]
 ---*/
 
 var obj = {
diff --git a/test/built-ins/String/prototype/includes/return-abrupt-from-this-as-symbol.js b/test/built-ins/String/prototype/includes/return-abrupt-from-this-as-symbol.js
index b773808767..e2f16f6e7f 100644
--- a/test/built-ins/String/prototype/includes/return-abrupt-from-this-as-symbol.js
+++ b/test/built-ins/String/prototype/includes/return-abrupt-from-this-as-symbol.js
@@ -10,7 +10,7 @@ info: >
   1. Let O be RequireObjectCoercible(this value).
   2. Let S be ToString(O).
   3. ReturnIfAbrupt(S).
-features: [Symbol]
+features: [Symbol, String.prototype.includes]
 ---*/
 
 var s = Symbol('');
diff --git a/test/built-ins/String/prototype/includes/return-abrupt-from-this.js b/test/built-ins/String/prototype/includes/return-abrupt-from-this.js
index 612dd799c3..dfb0487da0 100644
--- a/test/built-ins/String/prototype/includes/return-abrupt-from-this.js
+++ b/test/built-ins/String/prototype/includes/return-abrupt-from-this.js
@@ -10,8 +10,8 @@ info: >
   1. Let O be RequireObjectCoercible(this value).
   2. Let S be ToString(O).
   3. ReturnIfAbrupt(S).
+features: [String.prototype.includes]
 ---*/
-
 var o = {
   toString: function() {
     throw new Test262Error();
diff --git a/test/built-ins/String/prototype/includes/return-false-with-out-of-bounds-position.js b/test/built-ins/String/prototype/includes/return-false-with-out-of-bounds-position.js
index f3405807c0..ed1d49fe88 100644
--- a/test/built-ins/String/prototype/includes/return-false-with-out-of-bounds-position.js
+++ b/test/built-ins/String/prototype/includes/return-false-with-out-of-bounds-position.js
@@ -17,6 +17,7 @@ info: >
   at index j of searchStr, return true; but if there is no such integer k,
   return false.
   ...
+features: [String.prototype.includes]
 ---*/
 
 var str = 'The future is cool!';
diff --git a/test/built-ins/String/prototype/includes/return-true-if-searchstring-is-empty.js b/test/built-ins/String/prototype/includes/return-true-if-searchstring-is-empty.js
index d8b56e9ddf..be37d4b5ff 100644
--- a/test/built-ins/String/prototype/includes/return-true-if-searchstring-is-empty.js
+++ b/test/built-ins/String/prototype/includes/return-true-if-searchstring-is-empty.js
@@ -17,6 +17,7 @@ info: >
   at index j of searchStr, return true; but if there is no such integer k,
   return false.
   ...
+features: [String.prototype.includes]
 ---*/
 
 var str = 'The future is cool!';
@@ -34,4 +35,4 @@ assert(
 assert(
   str.includes('', Infinity),
   'str.includes("", Infinity) returns true'
-);
\ No newline at end of file
+);
diff --git a/test/built-ins/String/prototype/includes/searchstring-found-with-position.js b/test/built-ins/String/prototype/includes/searchstring-found-with-position.js
index 979e1407bb..39a7ee4d89 100644
--- a/test/built-ins/String/prototype/includes/searchstring-found-with-position.js
+++ b/test/built-ins/String/prototype/includes/searchstring-found-with-position.js
@@ -18,6 +18,7 @@ info: >
   at index j of searchStr, return true; but if there is no such integer k,
   return false.
   ...
+features: [String.prototype.includes]
 ---*/
 
 var str = 'The future is cool!';
diff --git a/test/built-ins/String/prototype/includes/searchstring-found-without-position.js b/test/built-ins/String/prototype/includes/searchstring-found-without-position.js
index f12e6f4650..8a5fc3f118 100644
--- a/test/built-ins/String/prototype/includes/searchstring-found-without-position.js
+++ b/test/built-ins/String/prototype/includes/searchstring-found-without-position.js
@@ -17,6 +17,7 @@ info: >
   at index j of searchStr, return true; but if there is no such integer k,
   return false.
   ...
+features: [String.prototype.includes]
 ---*/
 
 var str = 'The future is cool!';
diff --git a/test/built-ins/String/prototype/includes/searchstring-is-regexp-throws.js b/test/built-ins/String/prototype/includes/searchstring-is-regexp-throws.js
index dc4db6d8fe..568fdfc63b 100644
--- a/test/built-ins/String/prototype/includes/searchstring-is-regexp-throws.js
+++ b/test/built-ins/String/prototype/includes/searchstring-is-regexp-throws.js
@@ -12,8 +12,8 @@ info: >
   5. ReturnIfAbrupt(isRegExp).
   6. If isRegExp is true, throw a TypeError exception.
   ...
+features: [String.prototype.includes]
 ---*/
-
 var searchString = /./;
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/String/prototype/includes/searchstring-not-found-with-position.js b/test/built-ins/String/prototype/includes/searchstring-not-found-with-position.js
index 6df6e5379d..e2f37ed89a 100644
--- a/test/built-ins/String/prototype/includes/searchstring-not-found-with-position.js
+++ b/test/built-ins/String/prototype/includes/searchstring-not-found-with-position.js
@@ -17,8 +17,8 @@ info: >
   at index j of searchStr, return true; but if there is no such integer k,
   return false.
   ...
+features: [String.prototype.includes]
 ---*/
-
 var str = 'The future is cool!';
 
 assert.sameValue(
diff --git a/test/built-ins/String/prototype/includes/searchstring-not-found-without-position.js b/test/built-ins/String/prototype/includes/searchstring-not-found-without-position.js
index f6286a6c07..1d067b6d98 100644
--- a/test/built-ins/String/prototype/includes/searchstring-not-found-without-position.js
+++ b/test/built-ins/String/prototype/includes/searchstring-not-found-without-position.js
@@ -17,8 +17,8 @@ info: >
   at index j of searchStr, return true; but if there is no such integer k,
   return false.
   ...
+features: [String.prototype.includes]
 ---*/
-
 var str = 'The future is cool!';
 
 assert.sameValue(
diff --git a/test/built-ins/String/prototype/includes/this-is-null-throws.js b/test/built-ins/String/prototype/includes/this-is-null-throws.js
index 5a1bd93c8b..22750487f9 100644
--- a/test/built-ins/String/prototype/includes/this-is-null-throws.js
+++ b/test/built-ins/String/prototype/includes/this-is-null-throws.js
@@ -9,8 +9,8 @@ info: >
 
   1. Let O be RequireObjectCoercible(this value).
   2. Let S be ToString(O).
+features: [String.prototype.includes]
 ---*/
-
 assert.throws(TypeError, function() {
   String.prototype.includes.call(null, '');
 });
diff --git a/test/built-ins/String/prototype/includes/this-is-undefined-throws.js b/test/built-ins/String/prototype/includes/this-is-undefined-throws.js
index 5ec1e02dcd..325c3904c2 100644
--- a/test/built-ins/String/prototype/includes/this-is-undefined-throws.js
+++ b/test/built-ins/String/prototype/includes/this-is-undefined-throws.js
@@ -9,8 +9,8 @@ info: >
 
   1. Let O be RequireObjectCoercible(this value).
   2. Let S be ToString(O).
+features: [String.prototype.includes]
 ---*/
-
 assert.throws(TypeError, function() {
   String.prototype.includes.call(undefined, '');
 });
-- 
GitLab