Files
DiceCloud/app/imports/api/engine/computation/computeComputation/tests/computeEffects.testFn.js
2023-11-12 16:38:55 +02:00

53 lines
1.3 KiB
JavaScript

import { buildComputationFromProps } from '/imports/api/engine/computation/buildCreatureComputation.js';
import { assert } from 'chai';
import computeCreatureComputation from '../../computeCreatureComputation.js';
import { propsFromForest } from '/imports/api/properties/tests/propTestBuilder.testFn.js';
export default function () {
const computation = buildComputationFromProps(testProperties);
computeCreatureComputation(computation);
const prop = id => computation.propsById[id];
assert.equal(prop('strengthId').value, 26);
}
var testProperties = propsFromForest([
{
variableName: 'strength',
type: 'attribute',
attributeType: 'ability',
baseValue: {
calculation: '8'
},
}, {
// This strength is later in order, so it will override the other
_id: 'strengthId',
variableName: 'strength',
type: 'attribute',
attributeType: 'ability',
baseValue: {
calculation: '10'
},
}, {
type: 'effect',
operation: 'base',
amount: {
calculation: '10 + 2'
},
stats: ['strength'],
}, {
type: 'effect',
operation: 'add',
amount: {
calculation: '1'
},
stats: ['strength'],
}, {
type: 'effect',
operation: 'mul',
amount: {
calculation: '2'
},
stats: ['strength'],
},
]);