MCPcopy
hub / github.com/witheve/Eve / evaluate

Function evaluate

test/shared_functions.ts:171–188  ·  view source on GitHub ↗
(assert, expected, code, session = new Database())

Source from the content-addressed store, hash-verified

169}
170
171export function evaluate(assert, expected, code, session = new Database()) {
172 let parsed = parser.parseDoc(dedent(code), "0");
173 let {blocks, errors} = builder.buildDoc(parsed.results);
174 if(expected.errors) {
175 assert.true(parsed.errors.length > 0 || errors.length > 0, "This test is supposed to produce errors");
176 }
177 session.blocks = session.blocks.concat(blocks);
178 let evaluation = new Evaluation();
179 evaluation.registerDatabase("session", session);
180 let changes = evaluation.fixpoint();
181 verify(assert, expected.insert, expected.remove, changes.result());
182 let next = {execute: (expected, actions) => {
183 let changes = evaluation.executeActions(actions);
184 verify(assert, expected.insert, expected.remove, changes.result());
185 return next;
186 }, session};
187 return next;
188}
189
190export function evaluates(assert, code, session = new Database()) {
191 let parsed = parser.parseDoc(dedent(code), "0");

Callers 4

strings.tsFile · 0.90
math.tsFile · 0.90
join.tsFile · 0.90

Calls 6

registerDatabaseMethod · 0.95
fixpointMethod · 0.95
executeActionsMethod · 0.95
dedentFunction · 0.85
verifyFunction · 0.85
resultMethod · 0.80

Tested by

no test coverage detected