aboutsummaryrefslogtreecommitdiffstats
path: root/bin/run-tests
diff options
context:
space:
mode:
authorMarius Halden <marius.h@lden.org>2015-01-26 18:13:55 +0100
committerMarius Halden <marius.h@lden.org>2015-01-26 18:13:55 +0100
commit1c5c685d0b0904e7ddc6e764e58e8fae08632d1d (patch)
tree559d5fddb743c1c083e23c9a3831efea92a240cb /bin/run-tests
parent84de1b811a219c41adbdcc8b65851320a77e98f7 (diff)
parent04117b8be30b5d82d50cdc047ac4e7c19864f8ed (diff)
Merge tag 'v1.5.3' into fiksgatami-dev
Diffstat (limited to 'bin/run-tests')
-rwxr-xr-xbin/run-tests37
1 files changed, 37 insertions, 0 deletions
diff --git a/bin/run-tests b/bin/run-tests
new file mode 100755
index 000000000..c384516c8
--- /dev/null
+++ b/bin/run-tests
@@ -0,0 +1,37 @@
+#!/usr/bin/env perl
+use strict; use warnings;
+
+BEGIN {
+ use File::Basename qw(dirname);
+ use File::Spec;
+ my $d = dirname(File::Spec->rel2abs($0));
+ require "$d/../setenv.pl";
+}
+
+use FixMyStreet::TestAppProve;
+
+=head1 NAME
+
+bin/run-tests - spin up a clean database and configuration for tests
+
+=head1 USAGE
+
+ bin/run-tests t/ # runs prove -r t/ (recursively, saving state)
+ bin/run-tests --state=failed # runs just failing tests
+ # delete .prove to reset
+
+ bin/run-tests t/foo.t # runs with prove -v (single test)
+
+By default we use conf/general.yml-example as the template, and spin up a fresh
+Postgres cluster and database. We can override this by doing:
+
+ bin/run-tests --config=general.mycobrand.yml
+ bin/run-tests --db-config=general.yml # e.g. use your current DB settings
+ bin/run-tests --all-config=general.yml # e.g. use your current DB settings
+
+(NB: passing --state=save automagically is experimental, and will be removed if
+it turns out to be annoying.)
+
+=cut
+
+exit( FixMyStreet::TestAppProve->run(@ARGV) ? 0 : 1);