From f3af6c448308bd3fe4234a3225e1a634884d0226 Mon Sep 17 00:00:00 2001 From: johnt Date: Fri, 18 Apr 2008 16:25:00 +0000 Subject: [PATCH] moving problem solutions into their own files git-svn-id: file:///Volumes/JJT 4GB/Apps/svn_repo/Algorithm-TravelingSalesman-BitonicTour/trunk@102 5bda1b4c-df04-11dc-9541-bd5b2d3e4f05 --- t/03-solve-0.t | 16 ++++++++++++++++ t/04-solve-1.t | 19 +++++++++++++++++++ t/{03-solve.t => 05-solve-N.t} | 20 +------------------- 3 files changed, 36 insertions(+), 19 deletions(-) create mode 100644 t/03-solve-0.t create mode 100644 t/04-solve-1.t rename t/{03-solve.t => 05-solve-N.t} (51%) diff --git a/t/03-solve-0.t b/t/03-solve-0.t new file mode 100644 index 0000000..bbdb60e --- /dev/null +++ b/t/03-solve-0.t @@ -0,0 +1,16 @@ +use strict; +use warnings; +use Algorithm::TravelingSalesman::BitonicTour; +use Data::Dumper; +use Test::More 'no_plan'; +use Test::Exception; + +use_ok('Algorithm::TravelingSalesman::BitonicTour'); + +# make sure an attempt to solve a problem with no points dies +{ + my $b = Algorithm::TravelingSalesman::BitonicTour->new; + throws_ok { $b->solve } qr/need to add some points/, + 'bad problem throws exception'; +} + diff --git a/t/04-solve-1.t b/t/04-solve-1.t new file mode 100644 index 0000000..70e93b9 --- /dev/null +++ b/t/04-solve-1.t @@ -0,0 +1,19 @@ +use strict; +use warnings; +use Algorithm::TravelingSalesman::BitonicTour; +use Data::Dumper; +use Test::More 'no_plan'; +use Test::Exception; + +use_ok('Algorithm::TravelingSalesman::BitonicTour'); + +# make sure a problem with exactly one point "works" +for (1 .. 10) { + my $b = Algorithm::TravelingSalesman::BitonicTour->new; + my ($x, $y) = map { 10 - rand(20) } 1, 2; + $b->add_point($x,$y); + my @solution; + lives_ok { @solution = $b->solve }; + is_deeply(\@solution, [0,0]) or diag(Dumper($b)); +} + diff --git a/t/03-solve.t b/t/05-solve-N.t similarity index 51% rename from t/03-solve.t rename to t/05-solve-N.t index afaf9dc..11cf574 100644 --- a/t/03-solve.t +++ b/t/05-solve-N.t @@ -7,25 +7,7 @@ use Test::Exception; use_ok('Algorithm::TravelingSalesman::BitonicTour'); -# make sure an attempt to solve a problem with no points dies -{ - my $b = Algorithm::TravelingSalesman::BitonicTour->new; - throws_ok { $b->solve } qr/need to add some points/, - 'bad problem throws exception'; -} - -# make sure a problem with exactly one point "works" -for (1 .. 10) { - my $b = Algorithm::TravelingSalesman::BitonicTour->new; - my ($x, $y) = map { 10 - rand(20) } 1, 2; - $b->add_point($x,$y); - my @solution; - lives_ok { @solution = $b->solve }; - is_deeply(\@solution, [0,0]) or diag(Dumper($b)); -} - - -# now solve a real problem (simple trapezoid) +# solve a real problem (simple trapezoid) { my $b = Algorithm::TravelingSalesman::BitonicTour->new; $b->add_point(0,0);