'use strict';

/**
 * Returns a random number between min (inclusive) and max (inclusive)
 * @param {Number} min Min (inclusive) number of the range
 * @param {Number} max Max (inclusive) number of the range
 * @return {Number} Random number
 */
export function getIntegerBetween(min, max) {
  min = Math.ceil(min), max = Math.floor(max); // jshint ignore:line
  return Math.floor(Math.random() * (max - min + 1) + min);
}

/**
 * Returns a random number around specified one shifting it +- on specified `number * rate`
 * @param {Number} number Source number to generate around from
 * @param {Number} rate Rate to shift the number
 * @return {Number} Generated number
 */
export function getIntegerAround(number, rate) {
  return getIntegerBetween(number - number * rate, number + number * rate);
}
