File: heartbeat.t

package info (click to toggle)
apache2 2.4.66-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 59,884 kB
  • sloc: ansic: 212,340; python: 13,830; perl: 11,307; sh: 7,266; php: 1,320; javascript: 1,314; awk: 749; makefile: 715; lex: 374; yacc: 161; xml: 2
file content (30 lines) | stat: -rw-r--r-- 864 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
use strict;
use warnings FATAL => 'all';

use Apache::Test;
use Apache::TestRequest;
use Apache::TestUtil qw/t_start_error_log_watch t_finish_error_log_watch/;

my $r;
my $line;
my $count = 0;
my $nb_seconds = 5;
# Because of timing, we may see less than what could be expected
my $nb_expected = $nb_seconds - 2;

plan tests => 1, sub { need_module('mod_heartbeat', 'mod_heartmonitor') && !need_apache_mpm('prefork') };

# Give some time to the heart to beat a few times
t_start_error_log_watch();
sleep($nb_seconds);
my @loglines = t_finish_error_log_watch();

# Heartbeat sent by mod_heartbeat and received by mod_heartmonitor are logged with DEBUG AH02086 message
foreach $line (@loglines) {
    if ($line =~ "AH02086") {
        $count++;
    }
}

print "Expecting at least " . $nb_expected . " heartbeat ; Seen: " . $count . "\n";
ok($count >= $nb_expected);