]> git.decadent.org.uk Git - maypole.git/blobdiff - t/1.t
Fix up example module, skip test if no SQLite.
[maypole.git] / t / 1.t
diff --git a/t/1.t b/t/1.t
index 2560fe9c2aa5966d7bdfc8830bc7c3f5c2e8fafa..50aa24c4d6933994b2903e0db2d1dd045d8f9aa1 100644 (file)
--- a/t/1.t
+++ b/t/1.t
@@ -1,26 +1,20 @@
 # vim:ft=perl
-use Test::More 'no_plan';
-use Apache::MVC;
-use Apache::FakeRequest;
-package BeerDB;
-our %data;
-use base 'Apache::MVC';
-BeerDB->set_database("dbi:SQLite:dbname=t/beerdb.db");
+use Test::More;
+use lib 'ex'; # Where BeerDB should live
+BEGIN { if (eval { require BeerDB }) { 
+            plan tests => 5;
+        } else { Test::More->import(skip_all =>"SQLite not working or BeerDB module not found: $@") }
+      }
+use Maypole::CLI qw(BeerDB);
+use Maypole::Constants;
+$ENV{MAYPOLE_TEMPLATES} = "t/templates";
 
-BeerDB::Brewery->has_many(beers => "BeerDB::Beer");
-BeerDB::Beer->has_a(brewery => "BeerDB::Brewery");
+isa_ok( (bless {},"BeerDB") , "Maypole");
 
-BeerDB::Handpump->has_a(beer => "BeerDB::Beer"); 
-BeerDB::Handpump->has_a(pub => "BeerDB::Pub");
-BeerDB::Pub->has_many(beers => [ BeerDB::Handpump => 'beer' ]);
-BeerDB::Beer->has_many(pubs => [ BeerDB::Handpump => 'pub' ]);
+@ARGV = ("http://localhost/beerdb/");
+is(BeerDB->handler, OK, "OK");
+like($Maypole::CLI::buffer, qr/frontpage/, "Got the front page");
 
-sub get_request {
-    my $self = shift;
-    $self->{ar} = Apache::FakeRequest->new(%data);
-}
-
-$data{uri} = "/beer/view/1";
-my $r = BeerDB->handler();
-use Data::Dumper;
-print Dumper($r);
+@ARGV = ("http://localhost/beerdb/beer/list");
+is(BeerDB->handler, OK, "OK");
+like($Maypole::CLI::buffer, qr/Organic Best/, "Found a beer in the list");