test_bignum.js 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. // todo test without bigint lib -- just browser bigint
  2. function randomInteger(min, max){
  3. let rand = min + Math.random() * (max + 1 - min);
  4. return Math.floor(rand);
  5. }
  6. function test_number(){
  7. for(var i = 0; i < 10; i++){
  8. //var rand_value = randomInteger(1, 9007199254740991); // Number.MAX_SAFE_INTEGER = 2^53 - 1
  9. //var rand_value = randomInteger(-9007199254740991, 0); // Number.MIN_SAFE_INTEGER = (-(2^53 - 1))
  10. //var rand_value = randomInteger(-2147483648, 0);
  11. //var rand_value = randomInteger(2147483648, 9007199254740991);
  12. var rand_value = randomInteger(-9007199254740991, -2147483649);
  13. console.log(rand_value);
  14. //ws.send(enc(tuple( atom('атом'), number(rand_value) )));
  15. //ws.send(enc(tuple( atom('client'), tuple( atom('атом'), number(rand_value) ) )));
  16. ws.send(enc(tuple( atom('client'), tuple( atom('test'), number(rand_value) ) )));
  17. }
  18. }
  19. function test_bignum(){
  20. for(var i = 0; i < 10; i++){
  21. var rand_value = bigInt.randBetween("-18446744073709551615", "18446744073709551615");
  22. console.log(rand_value.toString());
  23. ws.send(enc(tuple( atom('client'), tuple( atom('test'), bignum(rand_value) ) )));
  24. }
  25. }