1 package Support::TestSetup;
6 use CGI qw( -no_xhtml);
15 use SL::InstanceConfiguration;
19 $Data::Dumper::Sortkeys = 1;
20 $Data::Dumper::Indent = 2;
22 SL::LxOfficeConf->read;
24 my $client = 'Unit-Tests';
25 my $login = 'unittests';
29 $::lxdebug = LXDebug->new(target => LXDebug::STDERR_TARGET);
30 $::lxdebug->disable_sub_tracing;
31 $::locale = Locale->new($::lx_office_conf{system}->{language});
32 $::form = Support::TestSetup->create_new_form;
33 $::auth = SL::Auth->new(unit_tests_database => 1);
34 die "Cannot find client with ID or name '$client'" if !$::auth->set_client($client);
36 $::instance_conf = SL::InstanceConfiguration->new;
37 $::request = Support::TestSetup->create_new_request;
39 die 'cannot reach auth db' unless $::auth->session_tables_present;
41 $::auth->restore_session;
43 require "bin/mozilla/common.pl";
45 die "cannot find user $login" unless %::myconfig = $::auth->read_user(login => $login);
47 die "cannot find locale for user $login" unless $::locale = Locale->new($::myconfig{countrycode});
49 $SIG{__DIE__} = sub { Carp::confess( @_ ) } if $::lx_office_conf{debug}->{backtrace_on_die};
55 sub create_new_form { Form->new('') }
57 sub create_new_request {
60 my $request = SL::Request->new(
62 layout => SL::Layout::None->new,
66 $request->presenter->{template} = Template->new(template_config()) || die;
77 PLUGIN_BASE => 'SL::Template::Plugin',
78 INCLUDE_PATH => '.:templates/webpages/',
79 COMPILE_DIR => 'users/templates-cache-for-tests',
80 COMPILE_EXT => '.tcc',