Tests no longer fail if $ENV{DBI_DSN} is set
[dbsrgits/DBIx-Class.git] / maint / travis-ci_scripts / 30_before_script.bash
index d41ce4c..a1968b4 100755 (executable)
@@ -3,12 +3,22 @@
 source maint/travis-ci_scripts/common.bash
 if [[ -n "$SHORT_CIRCUIT_SMOKE" ]] ; then return ; fi
 
-# try Schwern's latest offering on a stock perl and a threaded blead
-# can't do this with CLEANTEST=true yet because a lot of our deps fail
-# tests left and right under T::B 1.5
-if [[ "$CLEANTEST" != "true" ]] && ( [[ -z "$BREWVER" ]] || [[ "$BREWVER" = "blead" ]] ) ; then
-  # FIXME - there got to be a way to ask metacpan for this dynamically
-  TEST_BUILDER_BETA_CPAN_TARBALL="M/MS/MSCHWERN/Test-Simple-1.005000_005.tar.gz"
+# poison the environment - basically look through lib, find all mentioned
+# ENVvars and set them to true and see if anything explodes
+if [[ "$POISON_ENV" = "true" ]] ; then
+  for var in $(grep -P '\$ENV\{' -r lib/ | grep -oP 'DBIC_\w+' | sort -u | grep -v DBIC_TRACE) ; do
+    export $var=1
+  done
+
+  export DBI_DSN="dbi:ODBC:server=NonexistentServerAddress"
+  export DBI_DRIVER="ADO"
+
+  export DBICTEST_SQLITE_REVERSE_DEFAULT_ORDER=1
+elif [[ "$CLEANTEST" != "true" ]] && ( [[ -z "$BREWVER" ]] || [[ "$BREWVER" = "blead" ]] ) ; then
+  # try CPAN's latest offering on a stock perl and a threaded blead
+  # can't do this with CLEANTEST=true yet because a lot of our deps fail
+  # tests left and right under T::B 1.5
+  PERL_CPANM_OPT="$PERL_CPANM_OPT --dev"
 fi
 
 
@@ -25,12 +35,6 @@ if [[ "$CLEANTEST" = "true" ]]; then
 
   mv ~/.cpanm/latest-build/DBIx-Class-*/inc .
 
-  # this should be installable anywhere, regardles of prereqs
-  if [[ -n "$TEST_BUILDER_BETA_CPAN_TARBALL" ]] ; then
-    run_or_err "Pre-installing dev-beta of Test::Builder ($TEST_BUILDER_BETA_CPAN_TARBALL)" \
-      "cpan $TEST_BUILDER_BETA_CPAN_TARBALL"
-  fi
-
   # older perls do not have a CPAN which understands configure_requires
   # properly and what is worse a `cpan Foo` run exits with 0 even if some
   # modules failed to install
@@ -77,8 +81,8 @@ else
   parallel_installdeps_notest Test::Exception Encode::Locale Test::Fatal
   parallel_installdeps_notest Test::Warn bareword::filehandles B::Hooks::EndOfScope Test::Differences HTTP::Status
   parallel_installdeps_notest Test::Pod::Coverage Test::EOL Devel::GlobalDestruction Sub::Name MRO::Compat Class::XSAccessor URI::Escape HTML::Entities
-  parallel_installdeps_notest YAML LWP Moo Class::Trigger JSON::XS DBI DateTime::Format::Builder
-  parallel_installdeps_notest Moose Class::Accessor::Grouped Module::Install JSON Package::Variant
+  parallel_installdeps_notest YAML LWP Class::Trigger JSON::XS DBI DateTime::Format::Builder Class::Accessor::Grouped Package::Variant
+  parallel_installdeps_notest Moose Module::Install JSON SQL::Translator
 
   if [[ -n "DBICTEST_FIREBIRD_DSN" ]] ; then
     # the official version is full of 5.10-isms, but works perfectly fine on 5.8