metaapi.cloud-sdk
Version:
SDK for MetaApi, a professional cloud forex API which includes MetaTrader REST API and MetaTrader websocket API. Supports both MetaTrader 5 (MT5) and MetaTrader 4 (MT4). CopyFactory copy trading API included. (https://metaapi.cloud)
94 lines (80 loc) • 2.45 kB
text/typescript
;
import * as helpers from './helpers';
import * as random from './random';
import log4js from 'log4js';
import 'should';
/**
* @test {random}
*/
describe('random', () => {
const logger = log4js.getLogger('test');
before(() => {
log4js.configure(helpers.assembleLog4jsConfig());
});
/**
* @test {getIntegerBetween}
*/
describe('getIntegerBetween', () => {
/**
* @test {getIntegerBetween}
*/
it('should return random integer between two specified inclusive integers', () => {
let numbers = new Set();
for (let i = 0; i < 100; ++i) {
let number = random.getIntegerBetween(28, 101);
logger.info('Generated number', number);
number.should.be.greaterThanOrEqual(28);
number.should.be.lessThanOrEqual(101);
numbers.add(number);
}
numbers.size.should.be.greaterThan(10);
});
/**
* @test {getIntegerBetween}
*/
it('should return random integer between two specified floats', () => {
let numbers = new Set();
for (let i = 0; i < 100; ++i) {
let number = random.getIntegerBetween(28.5, 101.5);
logger.info('Generated number', number);
number.should.be.greaterThanOrEqual(29);
number.should.be.lessThanOrEqual(101);
numbers.add(number);
}
numbers.size.should.be.greaterThan(10);
});
/**
* @test {getIntegerBetween}
*/
it('should return random integer between two negative numbers', () => {
let numbers = new Set();
for (let i = 0; i < 100; ++i) {
let number = random.getIntegerBetween(-101.5, -28.5);
logger.info('Generated number', number);
number.should.be.greaterThanOrEqual(-102);
number.should.be.lessThanOrEqual(-28);
numbers.add(number);
}
numbers.size.should.be.greaterThan(10);
});
});
/**
* @test {getIntegerAround}
*/
describe('getIntegerAround', () => {
/**
* @test {getIntegerAround}
*/
it('should return integer around specified one', () => {
let numbers = new Set();
for (let i = 0; i < 100; ++i) {
let number = random.getIntegerAround(28, 0.5);
logger.info('Generated number', number);
number.should.be.greaterThanOrEqual(14);
number.should.be.lessThanOrEqual(42);
numbers.add(number);
}
numbers.size.should.be.greaterThan(5);
});
});
});