aboutsummaryrefslogtreecommitdiff
path: root/challenge-076/bob-lied/perl/t
diff options
context:
space:
mode:
authorboblied <boblied@gmail.com>2020-09-09 08:19:19 -0500
committerboblied <boblied@gmail.com>2020-09-09 08:19:19 -0500
commit07d24d407eb177b1dfd87921fc10ec3bc10c28fa (patch)
tree821f775bcb538c4e392c5117a54cd9315fdad7ff /challenge-076/bob-lied/perl/t
parentbe667eb57b48213f99e85a15c59136e5aff8c135 (diff)
downloadperlweeklychallenge-club-07d24d407eb177b1dfd87921fc10ec3bc10c28fa.tar.gz
perlweeklychallenge-club-07d24d407eb177b1dfd87921fc10ec3bc10c28fa.tar.bz2
perlweeklychallenge-club-07d24d407eb177b1dfd87921fc10ec3bc10c28fa.zip
Solution to 076 Task 1, PrimeSum
Diffstat (limited to 'challenge-076/bob-lied/perl/t')
-rw-r--r--challenge-076/bob-lied/perl/t/PrimeSum.t56
-rw-r--r--challenge-076/bob-lied/perl/t/Task1.t14
-rw-r--r--challenge-076/bob-lied/perl/t/primes-for-testing.txt100
3 files changed, 156 insertions, 14 deletions
diff --git a/challenge-076/bob-lied/perl/t/PrimeSum.t b/challenge-076/bob-lied/perl/t/PrimeSum.t
new file mode 100644
index 0000000000..f6c1449586
--- /dev/null
+++ b/challenge-076/bob-lied/perl/t/PrimeSum.t
@@ -0,0 +1,56 @@
+# vim:set ts=4 sw=4 sts=4 et ai wm=0 nu:
+#
+#===============================================================================
+# FILE: Task1.t
+# DESCRIPTION: Unit test for Task1
+#===============================================================================
+
+use strict;
+use warnings;
+use v5.30;
+
+use Test2::V0;
+
+use lib "lib";
+use PrimeSum qw/_loadPrimeList/;
+
+my $task = PrimeSum->new(15);
+
+my $primeRef = _loadPrimeList(15, "t/primes-for-testing.txt");
+is( $primeRef, [ 13, 11, 7, 5, 3, 2], "load primes descending");
+
+my $N;
+my $result;
+my $list;
+
+$N = 2;
+($result, $list) = PrimeSum->new($N)->run();
+is( $result, 1, "Min for prime $N" );
+is( $list, [ 2 ], "List for prime $N" );
+
+$N = 4;
+($result, $list) = PrimeSum->new($N)->run();
+is( $result, 2, "Min for prime $N" );
+is( $list, [ 2, 2 ], "List for prime $N" );
+
+$N = 17;
+($result, $list) = PrimeSum->new($N)->run();
+is( $result, 1, "Min for prime $N" );
+is( $list, [ 17 ], "List for prime $N" );
+
+$N = 15;
+($result, $list) = $task->run();
+is( $result, 2, "Min for $N" );
+is( $list, [ 13, 2 ], "List for $N" );
+
+$N = 27;
+($result, $list) = PrimeSum->new($N)->run();
+is( $result, 3, "Min for $N" );
+is( $list, [ 23, 2, 2 ], "List for $N" );
+
+$N = 51;
+($result, $list) = PrimeSum->new($N)->run();
+is( $result, 3, "Min for $N" );
+is( $list, [ 47, 2, 2 ], "List for $N" );
+
+done_testing();
diff --git a/challenge-076/bob-lied/perl/t/Task1.t b/challenge-076/bob-lied/perl/t/Task1.t
deleted file mode 100644
index 51dd7729c0..0000000000
--- a/challenge-076/bob-lied/perl/t/Task1.t
+++ /dev/null
@@ -1,14 +0,0 @@
-# vim:set ts=4 sw=4 sts=4 et ai wm=0 nu:
-#
-#===============================================================================
-# FILE: Task1.t
-# DESCRIPTION: Unit test for Task1
-#===============================================================================
-
-use strict;
-use warnings;
-use v5.30;
-
-use Test2::V0;
-
-done_testing();
diff --git a/challenge-076/bob-lied/perl/t/primes-for-testing.txt b/challenge-076/bob-lied/perl/t/primes-for-testing.txt
new file mode 100644
index 0000000000..11d32e9682
--- /dev/null
+++ b/challenge-076/bob-lied/perl/t/primes-for-testing.txt
@@ -0,0 +1,100 @@
+2
+3
+5
+7
+11
+13
+17
+19
+23
+29
+31
+37
+41
+43
+47
+53
+59
+61
+67
+71
+73
+79
+83
+89
+97
+101
+103
+107
+109
+113
+127
+131
+137
+139
+149
+151
+157
+163
+167
+173
+179
+181
+191
+193
+197
+199
+211
+223
+227
+229
+233
+239
+241
+251
+257
+263
+269
+271
+277
+281
+283
+293
+307
+311
+313
+317
+331
+337
+347
+349
+353
+359
+367
+373
+379
+383
+389
+397
+401
+409
+419
+421
+431
+433
+439
+443
+449
+457
+461
+463
+467
+479
+487
+491
+499
+503
+509
+521
+523
+541