Skip to content

Commit 89b6d72

Browse files
committed
test:Added &solve tests; separate subtests for $ce.solve and &solve.
1 parent 84c77d7 commit 89b6d72

1 file changed

Lines changed: 24 additions & 7 deletions

File tree

t/09-solve.rakutest

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
use v6.d;
22
use Test;
3+
use CortexJS;
34
use CortexJS::ComputeEngine;
45

56
sub can-run-node() {
@@ -36,13 +37,29 @@ LEAVE { try $ce.close if $ce.defined; }
3637

3738
plan *;
3839

39-
my $eq = $ce.parse-latex('x^2-1=0');
40-
my $solutions = $ce.solve($eq);
41-
ok $solutions ~~ Positional, 'solve returns a positional result';
42-
ok $solutions.elems > 0, 'solve returns at least one solution';
40+
subtest {
41+
my $eq = $ce.parse-latex('x^2-1=0');
42+
my $solutions = $ce.solve($eq);
43+
ok $solutions ~~ Positional, 'solve returns a positional result';
44+
ok $solutions.elems > 0, 'solve returns at least one solution';
4345

44-
my $latex = $ce.to-latex($solutions[0]);
45-
ok $latex ~~ Str, 'solution can be converted to latex';
46-
ok $latex.chars > 0, 'solution latex is not empty';
46+
my $latex = $ce.to-latex($solutions[0]);
47+
ok $latex ~~ Str, 'solution can be converted to latex';
48+
ok $latex.chars > 0, 'solution latex is not empty';
49+
}, 'via computation engine object';
50+
51+
subtest {
52+
ok solve(parse-latex('x^2 - 5 x + 6 = 0'), 'x');
53+
is-deeply solve(parse-latex('x^2 - 5 x + 6 = 0'), 'x'), [3, 2];
54+
55+
ok solve(parse-latex('x^2 - 5 x + 6 = 0'));
56+
is-deeply solve(parse-latex('x^2 - 5 x + 6 = 0')), [3, 2];
57+
58+
}, 'free function symbolic solution for x';
59+
60+
subtest {
61+
ok solve(parse-latex('x^2 - a x + 1 = 0'), 'a');
62+
is-deeply solve(parse-latex('x^2 - a x + 1 = 0'), 'a'), [["Add", "x", ["Divide", 1, "x"]],];
63+
}, 'free function symbolic solution for a';
4764

4865
done-testing;

0 commit comments

Comments
 (0)