diff --git a/test/built-ins/String/prototype/trimEnd/this-value-line-terminator.js b/test/built-ins/String/prototype/trimEnd/this-value-line-terminator.js
new file mode 100644
index 0000000000000000000000000000000000000000..3e4eea802e4562675f9106c1068b74497038cbab
--- /dev/null
+++ b/test/built-ins/String/prototype/trimEnd/this-value-line-terminator.js
@@ -0,0 +1,30 @@
+// Copyright (c) 2017 Valerie Young.  All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: sec-string.prototype.trimEnd
+description: TrimEnd removes all line terminators from the end of a string.
+info: |
+  Runtime Symantics: TrimString ( string, where )
+  ...
+  4. Else if where is "end", let T be a String value that is a copy of S with
+     trailing white space removed.
+  ...
+
+  The definition of white space is the union of WhiteSpace and LineTerminator.
+
+features: [string-trimming]
+---*/
+
+var trimEnd = String.prototype.trimEnd;
+
+// A string of all valid LineTerminator Unicode code points
+var lt = '\u000A\u000D\u2028\u2029';
+
+var str = lt + 'a' + lt + 'b' + lt;
+var expected = lt + 'a' + lt + 'b';
+
+assert.sameValue(
+  trimEnd.call(str),
+  expected,
+);
diff --git a/test/built-ins/String/prototype/trimEnd/this-value-whitespace.js b/test/built-ins/String/prototype/trimEnd/this-value-whitespace.js
new file mode 100644
index 0000000000000000000000000000000000000000..6889a5bbf88e7c4d98f2546f1a7866b0a209999d
--- /dev/null
+++ b/test/built-ins/String/prototype/trimEnd/this-value-whitespace.js
@@ -0,0 +1,33 @@
+// Copyright (c) 2017 Valerie Young.  All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: sec-string.prototype.trimEnd
+description: TrimEnd removes all whitespace from the end of a string.
+info: |
+  Runtime Symantics: TrimString ( string, where )
+  ...
+  3. Else if where is "end", let T be a String value that is a copy of S with
+     trailing white space removed.
+  ...
+
+  The definition of white space is the union of WhiteSpace and LineTerminator.
+  When determining whether a Unicode code point is in Unicode general category
+  “Zs”, code unit sequences are interpreted as UTF-16 encoded code point
+  sequences as specified in 6.1.4.
+
+features: [string-trimming]
+---*/
+
+var trimEnd = String.prototype.trimEnd;
+
+// A string of all valid WhiteSpace Unicode code points
+var wspc = '\u0009\u000B\u000C\u0020\u00A0\FEFF\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000';
+
+var str = wspc + 'a' + wspc + 'b' + wspc;
+var expected = wspc + 'a' + wspc + 'b';
+
+assert.sameValue(
+  trimEnd.call(str),
+  expected,
+);
diff --git a/test/built-ins/String/prototype/trimStart/this-value-line-terminator.js b/test/built-ins/String/prototype/trimStart/this-value-line-terminator.js
new file mode 100644
index 0000000000000000000000000000000000000000..743e714a2a798bee86e94a95410fca1f6b5c1503
--- /dev/null
+++ b/test/built-ins/String/prototype/trimStart/this-value-line-terminator.js
@@ -0,0 +1,30 @@
+// Copyright (c) 2017 Valerie Young.  All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: sec-string.prototype.trimStart
+description: TrimStart removes all line terminators from the start of a string.
+info: |
+  Runtime Symantics: TrimString ( string, where )
+  ...
+  4. If where is "start", let T be a String value that is a copy of S with
+     trailing white space removed.
+  ...
+
+  The definition of white space is the union of WhiteSpace and LineTerminator.
+
+features: [string-trimming]
+---*/
+
+var trimStart = String.prototype.trimStart;
+
+// A string of all valid LineTerminator Unicode code points
+var lt = '\u000A\u000D\u2028\u2029';
+
+var str = lt + 'a' + lt + 'b' + lt;
+var expected = 'a' + lt + 'b' + lt;
+
+assert.sameValue(
+  trimStart.call(str),
+  expected,
+);
diff --git a/test/built-ins/String/prototype/trimStart/this-value-whitespace.js b/test/built-ins/String/prototype/trimStart/this-value-whitespace.js
new file mode 100644
index 0000000000000000000000000000000000000000..913d3a21ec9bb857e1ab93140f90762665b6259b
--- /dev/null
+++ b/test/built-ins/String/prototype/trimStart/this-value-whitespace.js
@@ -0,0 +1,33 @@
+// Copyright (c) 2017 Valerie Young.  All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: sec-string.prototype.trimStart
+description: TrimStart removes all whitespace from the start of a string.
+info: |
+  Runtime Symantics: TrimString ( string, where )
+  ...
+  3. If where is "start", let T be a String value that is a copy of S with
+     trailing white space removed.
+  ...
+
+  The definition of white space is the union of WhiteSpace and LineTerminator.
+  When determining whether a Unicode code point is in Unicode general category
+  “Zs”, code unit sequences are interpreted as UTF-16 encoded code point
+  sequences as specified in 6.1.4.
+
+features: [string-trimming]
+---*/
+
+var trimStart = String.prototype.trimStart;
+
+// A string of all valid WhiteSpace Unicode code points
+var wspc = '\u0009\u000B\u000C\u0020\u00A0\FEFF\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000';
+
+var str = wspc + 'a' + wspc + 'b' + wspc;
+var expected = 'a' + wspc + 'b' + wspc;
+
+assert.sameValue(
+  trimStart.call(str),
+  expected,
+);