Apache-BalancerManager

 view release on metacpan or  search on metacpan

t/basic.t  view on Meta::CPAN

#!/usr/bin/env perl

use strict;
use warnings;

use Test::LWP::UserAgent;
use Test::More;
use Test::Deep;
use URI;

use Apache::BalancerManager;

my $content = <<'CONTENT';
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html><head><title>Balancer Manager</title>
<style type='text/css'>
table {
 border-width: 1px;
 border-spacing: 3px;
 border-style: solid;
 border-color: gray;
 border-collapse: collapse;
 background-color: white;
 text-align: center;
}
th {
 border-width: 1px;
 padding: 2px;
 border-style: dotted;
 border-color: gray;
 background-color: lightgray;
 text-align: center;
}
td {
 border-width: 1px;
 padding: 2px;
 border-style: dotted;
 border-color: gray;
 background-color: white;
 text-align: center;
}
</style>
</head>
<body><h1>Load Balancer Manager for localhost</h1>

<dl><dt>Server Version: Apache/2.4.51 (Win64) OpenSSL/1.1.1l</dt>
<dt>Server Built: Oct  7 2021 16:27:02</dt>
<dt>Balancer changes will NOT be persisted on restart.</dt><dt>Balancers are inherited from main server.</dt><dt>ProxyPass settings are inherited from main server.</dt></dl>
<hr />
<h3>LoadBalancer Status for <a href="/balancer-manager?b=balancer_name&amp;nonce=488d6558-fe13-6927-de4f-de761f8f7d74">balancer://balancer_name</a> [pdcfd1ba5_balancer_name]</h3>


<table><tr><th>MaxMembers</th><th>StickySession</th><th>DisableFailover</th><th>Timeout</th><th>FailoverAttempts</th><th>Method</th><th>Path</th><th>Active</th></tr>
<tr><td>2 [2 Used]</td>
<td> (None) </td><td>Off</td>
<td>0</td><td>31</td>
<td>byrequests</td>
<td>/</td>
<td>Yes</td>
</tr>
</table>
<br />

<table><tr><th>Worker URL</th><th>Route</th><th>RouteRedir</th><th>Factor</th><th>Set</th><th>Status</th><th>Elected</th><th>Busy</th><th>Load</th><th>To</th><th>From</th></tr>
<tr>
<td><a href="/balancer-manager?b=balancer_name&amp;w=http://127.0.0.1:5001&amp;nonce=488d6558-fe13-6927-de4f-de761f8f7d74">http://127.0.0.1:5001</a></td><td>route</td><td>redir</td><td>1.50</td><td>3.5</td><td>Init Dis </td><td>41</td><td>0</td><td>1...
<tr>
<td><a href="/balancer-manager?b=balancer_name&amp;w=http://127.0.0.1:5002&amp;nonce=488d6558-fe13-6927-de4f-de761f8f7d74">http://127.0.0.1:5002</a></td><td></td><td></td><td>1.00</td><td>0</td><td>Init Ok </td><td>43</td><td>0</td><td>100</td><td>  ...
</table>
<hr />
<h3>LoadBalancer Status for <a href="/balancer-manager?b=second_balancer&amp;nonce=0e761cdb-a55e-c0c4-b5f7-16f46e063ca6">balancer://second_balancer</a> [pdcfd1ba5_second_balancer]</h3>


<table><tr><th>MaxMembers</th><th>StickySession</th><th>DisableFailover</th><th>Timeout</th><th>FailoverAttempts</th><th>Method</th><th>Path</th><th>Active</th></tr>
<tr><td>1 [1 Used]</td>
<td> (None) </td><td>Off</td>
<td>0</td><td>0</td>
<td>byrequests</td>
<td>/cert</td>
<td>Yes</td>
</tr>
</table>
<br />

<table><tr><th>Worker URL</th><th>Route</th><th>RouteRedir</th><th>Factor</th><th>Set</th><th>Status</th><th>Elected</th><th>Busy</th><th>Load</th><th>To</th><th>From</th></tr>
<tr>
<td><a href="/balancer-manager?b=second_balancer&amp;w=http://127.0.0.1:5000&amp;nonce=0e761cdb-a55e-c0c4-b5f7-16f46e063ca6">http://127.0.0.1:5000</a></td><td></td><td></td><td>1.00</td><td>0</td><td>Init Ok </td><td>0</td><td>0</td><td>0</td><td>  0...
</table>
<hr />
</body></html>
CONTENT

Test::LWP::UserAgent->map_response( qr(127.0.0.1/balancer-manager),
HTTP::Response->new(200, "OK", ["Content-Type" => "text/html"], $content));

my $a = AgentMocker->new;
my $mgr = Apache::BalancerManager->new(
   url => 'http://127.0.0.1/balancer-manager',
   user_agent => $a,



( run in 2.806 seconds using v1.01-cache-2.11-cpan-f56aa216473 )