mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-18 07:07:35 +01:00
add tests for fns/ultimateGear, fns/handleTwoHanded, fns/randomVal, fns/predictableRandom and partial tests for ops/buy
This commit is contained in:
119
test/common/fns/randomVal.js
Normal file
119
test/common/fns/randomVal.js
Normal file
@@ -0,0 +1,119 @@
|
||||
import randomVal from '../../../common/script/fns/randomVal';
|
||||
import {
|
||||
generateUser,
|
||||
} from '../../helpers/common.helper';
|
||||
|
||||
describe('shared.fns.randomVal', () => {
|
||||
let user;
|
||||
let obj = {
|
||||
a: 1,
|
||||
b: 2,
|
||||
c: 3,
|
||||
d: 4,
|
||||
};
|
||||
|
||||
beforeEach(() => {
|
||||
user = generateUser();
|
||||
});
|
||||
|
||||
describe('returns a random property value from an object', () => {
|
||||
it('returns the same value when the seed is the same', () => {
|
||||
let val1 = randomVal(user, obj, {
|
||||
seed: 222,
|
||||
});
|
||||
|
||||
let val2 = randomVal(user, obj, {
|
||||
seed: 222,
|
||||
});
|
||||
|
||||
expect(val2).to.equal(val1);
|
||||
});
|
||||
|
||||
it('returns the same value when user.stats is the same', () => {
|
||||
user.stats.gp = 34;
|
||||
let val1 = randomVal(user, obj);
|
||||
let val2 = randomVal(user, obj);
|
||||
|
||||
expect(val2).to.equal(val1);
|
||||
});
|
||||
|
||||
it('returns a different value when the seed is different', () => {
|
||||
let val1 = randomVal(user, obj, {
|
||||
seed: 222,
|
||||
});
|
||||
|
||||
let val2 = randomVal(user, obj, {
|
||||
seed: 333,
|
||||
});
|
||||
|
||||
expect(val2).to.not.equal(val1);
|
||||
});
|
||||
|
||||
it('returns a different value when user.stats is different', () => {
|
||||
user.stats.gp = 34;
|
||||
let val1 = randomVal(user, obj);
|
||||
user.stats.gp = 343;
|
||||
let val2 = randomVal(user, obj);
|
||||
|
||||
expect(val2).to.not.equal(val1);
|
||||
});
|
||||
});
|
||||
|
||||
describe('returns a random key from an object', () => {
|
||||
it('returns the same key when the seed is the same', () => {
|
||||
let key1 = randomVal(user, obj, {
|
||||
key: true,
|
||||
seed: 222,
|
||||
});
|
||||
|
||||
let key2 = randomVal(user, obj, {
|
||||
key: true,
|
||||
seed: 222,
|
||||
});
|
||||
|
||||
expect(key2).to.equal(key1);
|
||||
});
|
||||
|
||||
it('returns the same key when user.stats is the same', () => {
|
||||
user.stats.gp = 45;
|
||||
let key1 = randomVal(user, obj, {
|
||||
key: true,
|
||||
});
|
||||
|
||||
let key2 = randomVal(user, obj, {
|
||||
key: true,
|
||||
});
|
||||
|
||||
expect(key2).to.equal(key1);
|
||||
});
|
||||
|
||||
it('returns a different key when the seed is different', () => {
|
||||
let key1 = randomVal(user, obj, {
|
||||
key: true,
|
||||
seed: 222,
|
||||
});
|
||||
|
||||
let key2 = randomVal(user, obj, {
|
||||
key: true,
|
||||
seed: 333,
|
||||
});
|
||||
|
||||
expect(key2).to.not.equal(key1);
|
||||
});
|
||||
|
||||
it('returns a different key when user.stats is different', () => {
|
||||
user.stats.gp = 45;
|
||||
let key1 = randomVal(user, obj, {
|
||||
key: true,
|
||||
});
|
||||
|
||||
user.stats.gp = 43;
|
||||
|
||||
let key2 = randomVal(user, obj, {
|
||||
key: true,
|
||||
});
|
||||
|
||||
expect(key2).to.not.equal(key1);
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user