Commit | Line | Data |
f129bfaf |
1 | use strictures 1; |
2 | use Test::More; |
3 | |
4 | use Data::Dumper; |
5 | |
abef6e5b |
6 | $ENV{OBJECT_REMOTE_TEST_LOGGER} = 1; |
f129bfaf |
7 | |
8 | use Object::Remote::Connector::Local; |
9 | use Object::Remote::Connector::SSH; |
10 | |
11 | my $defaults = Object::Remote::Connector::Local->new; |
12 | |
13 | my $normal = $defaults->final_perl_command; |
466ee2c4 |
14 | my $ulimit = Object::Remote::Connector::Local->new(ulimit => "-v 536")->final_perl_command; |
f129bfaf |
15 | my $nice = Object::Remote::Connector::Local->new(nice => 834)->final_perl_command; |
466ee2c4 |
16 | my $both = Object::Remote::Connector::Local->new(nice => 612, ulimit => "-v 913")->final_perl_command; |
17 | my $ssh = Object::Remote::Connector::SSH->new(nice => 494, ulimit => "-v 782", ssh_to => 'testhost')->final_perl_command; |
f129bfaf |
18 | |
466ee2c4 |
19 | is($defaults->timeout, 10, 'Default connection timeout value is correct'); |
f129bfaf |
20 | is($defaults->watchdog_timeout, undef, 'Watchdog is not enabled by default'); |
21 | is($defaults->nice, undef, 'Nice is not enabled by default'); |
22 | is($defaults->ulimit, undef, 'Ulimit is not enabled by default'); |
23 | is($defaults->stderr, undef, 'Child process STDERR is clone of parent process STDERR by default'); |
24 | |
466ee2c4 |
25 | is_deeply($normal, ['bash', '-c', 'perl -'], 'Default Perl interpreter arguments correct'); |
26 | is_deeply($ulimit, ['bash', '-c', 'ulimit -v 536 || exit 1; perl -'], 'Arguments for ulimit are correct'); |
27 | is_deeply($nice, ['bash', '-c', 'nice -n 834 perl -'], 'Arguments for nice are correct'); |
28 | is_deeply($both, ['bash', '-c', 'ulimit -v 913 || exit 1; nice -n 612 perl -'], 'Arguments for nice and ulimit are correct'); |
29 | is_deeply($ssh, [qw(ssh -A testhost), "bash -c 'ulimit -v 782 || exit 1; nice -n 494 perl -'"], "Arguments using ssh are correct"); |
f129bfaf |
30 | |
31 | done_testing; |
32 | |