The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
package TestAppCustomConfig;

use strict;
use warnings;

use DBI;
use File::Temp;
use Class::Data::Inheritable;

__PACKAGE__->mk_classdata('__dbfile');

use Catalyst qw(AutoCRUD);

my $dbfile = File::Temp->new( UNLINK => 1, EXLOCK => 0);
my $dbh = DBI->connect("dbi:SQLite:dbname=$dbfile",'','');
open my $sql_fh, 't/lib/test_app.sql' or die "Can't read SQL file: $!";
{
    local $/ = '';  # empty line(s) are delimeters
    while (<$sql_fh>) {
        $dbh->do($_);
    }
}
close $sql_fh;
$dbh->disconnect;

# need to stash the filename so File::Temp doesn't clean it immediately
__PACKAGE__->__dbfile($dbfile);

(defined $ENV{AUTOCRUD_CONFIG} && -e $ENV{AUTOCRUD_CONFIG}) or die "no config specified";
__PACKAGE__->config(
    'Model::AutoCRUD::DBIC' => {
        schema_class => 'TestApp::Schema',
        connect_info => ["dbi:SQLite:dbname=$dbfile", '', '', {}, { quote_char => q{`}, name_sep => q{.} }],
    },
    do $ENV{AUTOCRUD_CONFIG}
);
   
__PACKAGE__->setup;
1;