lab4-OSD

In this lab, we’re learning Open Standard. We need to work on lots of tests suites and write some tests for JavaScript  (ECMAScript ) standard.

Firstly, what is open standards?

An open standard is a standard that made available to the general public and are developed and maintained via a collaborative and consensus driven process. In open source, open standards are guidelines to keep technologies “open”.

 

Next, what isECMAScript ?

ECMAScript is a subset of JavaScript, which is basically ECMAScript at its core but builds upon it.  The specification defined in ECMA-262 for creating a general purpose scripting language. ECMAScript provides the rules, details, and guidelines that a scripting language must observe to be consider ECMASript compliant.

 

Finally, let me talk about my testing experiences.

1.create new test.js –> This test is for  the reverse function.

here is code link:


//tester.js
// 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
var x = [];
var reverse = x.reverse();
assert.sameValue(x,x.reverse());
//CHECK#2
x = [];
x[0] = 1;
var reverse = x.reverse();
assert.sameValue(reverse,x.reverse());
//CHECK#3
x = new Array(1,2);
var reverse = x.reverse();
assert.sameValue(reverse,x.reverse());
//CHECK#4
assert.notSameValue(x[0],2);
//CHECK#5
assert.notSameValue(x[1],1);
//CHECK#6
var arrLength = x.length;
assert.sameValue(arrLength, 2);
// //CHECK#1
// var x = [];
// var reverse = x.reverse();
// if (reverse !== x) {
// $ERROR('#1: x = []; x.reverse() === x. Actual: ' + (reverse));
// }
// //CHECK#2
// x = [];
// x[0] = 1;
// var reverse = x.reverse();
// if (reverse !== x) {
// $ERROR('#2: x = []; x[0] = 1; x.reverse() === x. Actual: ' + (reverse));
// }
// //CHECK#3
// x = new Array(1, 2);
// var reverse = x.reverse();
// if (reverse !== x) {
// $ERROR('#3: x = new Array(1,2); x.reverse() === x. Actual: ' + (reverse));
// }
// //CHECK#4
// if (x[0] !== 2) {
// $ERROR('#4: x = new Array(1,2); x.reverse(); x[0] === 2. Actual: ' + (x[0]));
// }
// //CHECK#5
// if (x[1] !== 1) {
// $ERROR('#5: x = new Array(1,2); x.reverse(); x[1] === 1. Actual: ' + (x[1]));
// }
// //CHECK#6
// if (x.length !== 2) {
// $ERROR('#6: x = new Array(1,2); x.reverse(); x.length === 2. Actual: ' + (x.length));
// }

view raw

tester.js

hosted with ❤ by GitHub

2.go to the folder where your test located and test it by typing test262-harness test/*.js in the terminal.

tester

It works.

Leave a comment