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',