UNPKG

2.14 kBJavaScriptView Raw
1'use strict';
2/* jshint unused: false */
3
4var should = require('chai').should();
5var expect = require('chai').expect;
6
7// var bitcore = require('../..');
8// var JSUtil = bitcore.utils.Js;
9var JSUtil = require('../../lib/index').Js
10
11describe('js utils', function() {
12
13 describe('isValidJSON', function() {
14
15 var hexa = '8080808080808080808080808080808080808080808080808080808080808080';
16 var json = '{"key": ["value", "value2"]}';
17 var json2 = '["value", "value2", {"key": "value"}]';
18
19 it('does not mistake an integer as valid json object', function() {
20 var valid = JSUtil.isValidJSON(hexa);
21 valid.should.equal(false);
22 });
23
24 it('correctly validates a json object', function() {
25 var valid = JSUtil.isValidJSON(json);
26 valid.should.equal(true);
27 });
28
29 it('correctly validates an array json object', function() {
30 var valid = JSUtil.isValidJSON(json);
31 valid.should.equal(true);
32 });
33
34 });
35
36 describe('isNaturalNumber', function() {
37 it('false for float', function() {
38 var a = JSUtil.isNaturalNumber(0.1);
39 a.should.equal(false);
40 });
41
42 it('false for string float', function() {
43 var a = JSUtil.isNaturalNumber('0.1');
44 a.should.equal(false);
45 });
46
47 it('false for string integer', function() {
48 var a = JSUtil.isNaturalNumber('1');
49 a.should.equal(false);
50 });
51
52 it('false for negative integer', function() {
53 var a = JSUtil.isNaturalNumber(-1);
54 a.should.equal(false);
55 });
56
57 it('false for negative integer string', function() {
58 var a = JSUtil.isNaturalNumber('-1');
59 a.should.equal(false);
60 });
61
62 it('false for infinity', function() {
63 var a = JSUtil.isNaturalNumber(Infinity);
64 a.should.equal(false);
65 });
66
67 it('false for NaN', function() {
68 var a = JSUtil.isNaturalNumber(NaN);
69 a.should.equal(false);
70 });
71
72 it('true for zero', function() {
73 var a = JSUtil.isNaturalNumber(0);
74 a.should.equal(true);
75 });
76
77 it('true for positive integer', function() {
78 var a = JSUtil.isNaturalNumber(1000);
79 a.should.equal(true);
80 });
81
82 });
83
84});