tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

S11.5.2_A4_T6.js (1574B)


      1 // Copyright 2009 the Sputnik authors.  All rights reserved.
      2 // This code is governed by the BSD license found in the LICENSE file.
      3 
      4 /*---
      5 info: |
      6    The result of division is determined by the specification of IEEE 754
      7    arithmetics
      8 es5id: 11.5.2_A4_T6
      9 description: >
     10    Division of a finite value by an infinity results in zero of
     11    appropriate sign
     12 ---*/
     13 
     14 //CHECK#1
     15 if (1 / Number.NEGATIVE_INFINITY !== -0) {
     16  throw new Test262Error('#1.1: 1 / -Infinity === 0. Actual: ' + (1 / -Infinity));
     17 } else {
     18  if (1 / (1 / Number.NEGATIVE_INFINITY) !== Number.NEGATIVE_INFINITY) {
     19    throw new Test262Error('#1.2: 1 / -Infinity === - 0. Actual: +0');
     20  }
     21 }
     22 
     23 //CHECK#2
     24 if (-1 / Number.NEGATIVE_INFINITY !== +0) {
     25  throw new Test262Error('#2.1: -1 / -Infinity === 0. Actual: ' + (-1 / -Infinity));
     26 } else {
     27  if (1 / (-1 / Number.NEGATIVE_INFINITY) !== Number.POSITIVE_INFINITY) {
     28    throw new Test262Error('#2.2: -1 / -Infinity === + 0. Actual: -0');
     29  }
     30 }
     31 
     32 //CHECK#3
     33 if (1 / Number.POSITIVE_INFINITY !== +0) {
     34  throw new Test262Error('#3.1: 1 / Infinity === 0. Actual: ' + (1 / Infinity));
     35 } else {
     36  if (1 / (1 / Number.POSITIVE_INFINITY) !== Number.POSITIVE_INFINITY) {
     37    throw new Test262Error('#3.2: 1 / Infinity === + 0. Actual: -0');
     38  }
     39 }
     40 
     41 //CHECK#4
     42 if (-1 / Number.POSITIVE_INFINITY !== -0) {
     43  throw new Test262Error('#4.1: -1 / Infinity === 0. Actual: ' + (-1 / Infinity));
     44 } else {
     45  if (1 / (-1 / Number.POSITIVE_INFINITY) !== Number.NEGATIVE_INFINITY) {
     46    throw new Test262Error('#4.2: -1 / Infinity === - 0. Actual: +0');
     47  }
     48 }
     49 
     50 reportCompare(0, 0);