Skip to content

Instantly share code, notes, and snippets.

@aushakou
Created March 19, 2018 00:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save aushakou/9e35a93b20a82208c58aa12a3da71dd2 to your computer and use it in GitHub Desktop.
Save aushakou/9e35a93b20a82208c58aa12a3da71dd2 to your computer and use it in GitHub Desktop.
Updated "S15.4.4.8_A1_T1.js": rewrote existing tests and added a few new
// Copyright 2009 the Sputnik authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
info: >
The elements of the array are rearranged so as to reverse their order.
The object is returned as the result of the call
esid: sec-array.prototype.reverse
es5id: 15.4.4.8_A1_T1
description: Checking case when reverse is given no arguments or one argument
---*/
// CHECK#1
// old:
// var x = [];
// var reverse = x.reverse();
// if (reverse !== x) {
// $ERROR('#1: x = []; x.reverse() === x. Actual: ' + (reverse));
// }
// new:
let x = [];
let reverse = x.reverse();
assert.sameValue(reverse, x);
// CHECK#2
// old:
// x = [];
// x[0] = 1;
// var reverse = x.reverse();
// if (reverse !== x) {
// $ERROR('#2: x = []; x[0] = 1; x.reverse() === x. Actual: ' + (reverse));
// }
// new:
x = [];
x[0] = 1;
reverse = x.reverse();
assert.sameValue(reverse, x);
// CHECK#3
// old:
// x = new Array(1, 2);
// var reverse = x.reverse();
// if (reverse !== x) {
// $ERROR('#3: x = new Array(1,2); x.reverse() === x. Actual: ' + (reverse));
// }
// new:
x = new Array(1, 2);
reverse = x.reverse();
assert.sameValue(reverse, x);
// CHECK#4
// old:
// if (x[0] !== 2) {
// $ERROR('#4: x = new Array(1,2); x.reverse(); x[0] === 2. Actual: ' + (x[0]));
// }
// new:
assert.sameValue(x[0], 2);
// CHECK#5
// old:
// if (x[1] !== 1) {
// $ERROR('#5: x = new Array(1,2); x.reverse(); x[1] === 1. Actual: ' + (x[1]));
// }
// new:
assert.sameValue(x[1], 1);
// CHECK#6
// old:
// if (x.length !== 2) {
// $ERROR('#6: x = new Array(1,2); x.reverse(); x.length === 2. Actual: ' + (x.length));
// }
// new:
assert.sameValue(x.length, 2);
// CHECK#7
// new:
assert.sameValue(reverse[0], 2);
// CHECK#8
// new:
assert.sameValue(reverse[1], 1);
// CHECK#9
// new:
assert.sameValue(reverse.length, 2);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment