74. Mutation: Verify "Equation"
Mutation to verify the Equation code. The Equation engine is built on top of python
language with the support of common Math operations.
The list of supported operations:
Python basic module: abs, all, any, bin, bool, bytearray, bytes, chr, complex, dict, dir, divmod, enumerate, filter, float, format, frozenset, hash, hex, id, int, isinstance, len, list, map, max, min, oct, ord, pow, range, repr, reversed, round, set, slice, sorted, str, sum, tuple, type, zip.
Python math module: acos, acosh, asin, asinh, atan, atan2, atanh, ceil, copysign, cos, cosh, degrees, e, exp, fabs, factorial, floor, fmod, frexp, fsum, hypot, isinf, isnan, ldexp, log, log10, log1p, modf, pi, pow, radians, sin, sinh, sqrt, tan, tanh, trunc.
Python conditions: if, elif, else.
Python loops: for, while.
equationAsText
must be wrapped into """<equation>""" and the code must be python-based styled.
Keep only necessary tabulation and spacing.
mutation VerifyEquation {
verifyEquation(input: {
dataVariables: [{
variable: "yield_vol"
sampleValue: 1.1
}, {
variable: "prod"
sampleValue: 2.2
}]
equationAsText: """calculated = yield_vol/prod + 3.5
if calculated >= 30:
result = 35
elif calculated >= 20 and calculated < 30:
result = 25
else:
result = 15
"""
equationResultVariable: "result"
}) {
executed
result
errorMessage
}
}
Last updated
Was this helpful?