aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Lied <boblied+github@gmail.com>2024-04-26 06:51:35 -0500
committerBob Lied <boblied+github@gmail.com>2024-04-26 06:51:35 -0500
commit8cfc24381997e7c1cc93595385361455f5b539b1 (patch)
tree72d6e7894d9dedb53722b0ac40cf89a30ddf1dea
parent644760e7d903c5c64edaa343fae564841e83e653 (diff)
downloadperlweeklychallenge-club-8cfc24381997e7c1cc93595385361455f5b539b1.tar.gz
perlweeklychallenge-club-8cfc24381997e7c1cc93595385361455f5b539b1.tar.bz2
perlweeklychallenge-club-8cfc24381997e7c1cc93595385361455f5b539b1.zip
More test cases
-rw-r--r--challenge-266/bob-lied/perl/ch-2.pl51
1 files changed, 51 insertions, 0 deletions
diff --git a/challenge-266/bob-lied/perl/ch-2.pl b/challenge-266/bob-lied/perl/ch-2.pl
index 8742bf1d1c..d02460431c 100644
--- a/challenge-266/bob-lied/perl/ch-2.pl
+++ b/challenge-266/bob-lied/perl/ch-2.pl
@@ -110,5 +110,56 @@ use builtin qw/true false/; no warnings "experimental::builtin";
$matrix = [ [0] ];
is(xmatrix($matrix), false, "1x1 false");
+ $matrix = [ [1, 0, 0, 2],
+ [0, 3, 4, 0],
+ [0, 5, 6, 0],
+ [7, 0, 0, 8], ];
+ is(xmatrix($matrix), true, "4x4 true");
+
+ $matrix->[0][1] = 9;
+ is(xmatrix($matrix), false, "4x4 q1 false");
+
+ $matrix->[0][1] = 0;
+ $matrix->[1][3] = 9;
+ is(xmatrix($matrix), false, "4x4 q2 false");
+
+ $matrix->[1][3] = 0;
+ $matrix->[0][2] = 9;
+ is(xmatrix($matrix), false, "4x4 q3 false");
+
+ $matrix->[0][2] = 0;
+ $matrix->[2][3] = 9;
+ is(xmatrix($matrix), false, "4x4 q4 false");
+
+ $matrix = [ [1, 0, 0, 0, 2],
+ [0, 3, 0, 4, 0],
+ [0, 0, 5, 0, 0],
+ [0, 6, 0, 7, 0],
+ [8, 0, 0, 0, 9], ];
+ is(xmatrix($matrix), true, "5x5 true");
+
+ $matrix->[0][1] = 9;
+ is(xmatrix($matrix), false, "5x5 q1 false");
+
+ $matrix->[0][1] = 0;
+ $matrix->[1][4] = 9;
+ is(xmatrix($matrix), false, "5x5 q2 false");
+
+ $matrix->[1][4] = 0;
+ $matrix->[3][0] = 9;
+ is(xmatrix($matrix), false, "5x5 q3 false");
+
+ $matrix->[3][0] = 0;
+ $matrix->[4][1] = 9;
+ is(xmatrix($matrix), false, "5x5 q4 false");
+
+ $matrix->[4][1] = 0;
+ $matrix->[1][2] = 9;
+ is(xmatrix($matrix), false, "5x5 vertical false");
+
+ $matrix->[1][2] = 0;
+ $matrix->[2][1] = 9;
+ is(xmatrix($matrix), false, "5x5 horizontal false");
+
done_testing;
}