You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
1.2 KiB
63 lines
1.2 KiB
var assert = require('assert') |
|
var UINT32 = require('..').UINT32 |
|
|
|
describe('toNumber method', function () { |
|
|
|
describe('from 0', function () { |
|
|
|
it('should return 0', function (done) { |
|
var u = UINT32(0).toNumber() |
|
|
|
assert.equal( u, 0 ) |
|
done() |
|
}) |
|
|
|
}) |
|
|
|
describe('from low bit number', function () { |
|
|
|
it('should return the number', function (done) { |
|
var u = UINT32(123).toNumber() |
|
|
|
assert.equal( u, 123 ) |
|
done() |
|
}) |
|
|
|
}) |
|
|
|
describe('from high bit number', function () { |
|
|
|
it('should return the number', function (done) { |
|
var n = Math.pow(2,17) |
|
var u = UINT32(n).toNumber() |
|
|
|
assert.equal( u, n ) |
|
done() |
|
}) |
|
|
|
}) |
|
|
|
describe('from high and low bit number', function () { |
|
|
|
it('should return the number', function (done) { |
|
var n = Math.pow(2,17) + 123 |
|
var u = UINT32(n).toNumber() |
|
|
|
assert.equal( u, n ) |
|
done() |
|
}) |
|
|
|
}) |
|
|
|
describe('toNumber and toString', function () { |
|
|
|
it('should return the same result for 100 random numbers', function () { |
|
for (var i=0; i<100; i++) { |
|
var u = UINT32(Math.floor(Math.random() * 0xffffffff)); |
|
assert.equal(u.toNumber(), parseInt(u.toString())); |
|
} |
|
}) |
|
|
|
}) |
|
|
|
})
|
|
|