Skip to content
This repository was archived by the owner on Feb 20, 2019. It is now read-only.

Commit b4c4846

Browse files
author
Kent C. Dodds
committed
Merge pull request #15 from lukyth/pr/random-number
feat(randomInteger): Add randomInteger with tests
2 parents 34ad23c + 87472e0 commit b4c4846

File tree

3 files changed

+33
-1
lines changed

3 files changed

+33
-1
lines changed

src/index.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,13 @@ import flatten from './flatten'
22
import getQueryStringParam from './get-query-string-param'
33
import snakeToCamel from './snake-to-camel'
44
import padLeft from './pad-left'
5+
import randomInteger from './random-integer'
56

67

78
export {
89
flatten,
910
snakeToCamel,
1011
getQueryStringParam,
1112
padLeft,
13+
randomInteger,
1214
}
13-

src/random-integer.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
export default randomInteger
2+
3+
/**
4+
* Original Source: http://stackoverflow.com/a/24152886
5+
*
6+
* This method will return a random integer
7+
* between min and max number
8+
*
9+
* @param {Number} min - The minimum number to be random
10+
* @param {Number} max - The maximum number to be random
11+
* @return {Number} A random integer between min and max
12+
*/
13+
function randomInteger(min, max) {
14+
return Math.floor(Math.random() * (max - min + 1)) + min
15+
}

test/random-integer.test.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import test from 'ava'
2+
import {randomInteger} from '../src'
3+
4+
test('result shouldn\'t be lower than min number', t => {
5+
const min = 1
6+
const max = 10
7+
const result = randomInteger(min, max)
8+
t.false(result < min)
9+
})
10+
11+
test('result shouldn\'t be greater than max number', t => {
12+
const min = 1
13+
const max = 10
14+
const result = randomInteger(min, max)
15+
t.false(result > max)
16+
})

0 commit comments

Comments
 (0)