Convos

 view release on metacpan or  search on metacpan

t/start-with-embedded-server.t  view on Meta::CPAN

use Mojo::Base -base;
use Test::More;
use Convos;

$ENV{CONVOS_BACKEND_PID_FILE} = File::Spec->catfile(File::Spec->tmpdir, 'convos-test-backend.pid');
$ENV{CONVOS_REDIS_URL} = 'localhost:123456789';

{
  local $SIG{USR2} = sub { };                # emulate hypnotoad (hackish)
  local $ENV{CONVOS_BACKEND_EMBEDDED} = 1;
  eval { Convos->new };
  like $@, qr{Cannot start embedded backend from hypnotoad}, 'cannot start CONVOS_BACKEND_EMBEDDED with hypnotoad';
}

{
  my ($start, $got_pid) = (0, 0);
  local $ENV{CONVOS_BACKEND_EMBEDDED} = 1;
  local *Convos::Core::start = sub {
    $got_pid = -e $ENV{CONVOS_BACKEND_PID_FILE};
    $start++;
  };
  eval { Convos->new };
  is $start, 1, 'backend started';
  ok !-e $ENV{CONVOS_BACKEND_PID_FILE}, 'pid file was cleaned up';
  ok $got_pid, 'pid file was created';
}

done_testing;



( run in 0.591 second using v1.01-cache-2.11-cpan-71847e10f99 )