Skip to content

Commit

Permalink
Document queue wait time constants
Browse files Browse the repository at this point in the history
* use in queue.t & queue_runner.t
  • Loading branch information
aelkiss committed Jul 23, 2024
1 parent 6bf6213 commit 464e14c
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 24 deletions.
9 changes: 7 additions & 2 deletions t/lib/HTFeed/Test/SpecSupport.pm
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,14 @@ use HTFeed::Test::Logger;
use HTFeed::Test::TempDirs;
use Exporter 'import';

use constant {
# Value to pass to RabbitMQ to tell it not to block if the message queue is empty
NO_WAIT => -1,
# Amount of time to wait (in milliseconds) if we expect there will be a message eventually
RECV_WAIT => 500
};

our @EXPORT_OK = qw(mock_zephir mock_clamav stage_volume NO_WAIT RECV_WAIT);
use constant NO_WAIT => -1;
use constant RECV_WAIT => 500;

sub mock_zephir {
no warnings 'redefine';
Expand Down
29 changes: 13 additions & 16 deletions t/queue.t
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use FindBin;
use lib "$FindBin::Bin/lib";
use Test::Spec;
use Test::Exception;
use HTFeed::Test::SpecSupport;
use HTFeed::Test::SpecSupport qw(NO_WAIT RECV_WAIT);

use HTFeed::Config qw(get_config);
use HTFeed::DBTools qw(get_dbh);
Expand All @@ -11,9 +11,6 @@ use HTFeed::Queue;

use strict;

my $NO_WAIT = -1;
my $RECV_WAIT = 500; # RabbitMQ recv timeout in milliseconds

describe "HTFeed::Queue" => sub {
my $testlog;

Expand Down Expand Up @@ -45,7 +42,7 @@ describe "HTFeed::Queue" => sub {
my $volume = shift;
my $status = shift;

my $job = HTFeed::Bunnies->new()->next_job($RECV_WAIT);
my $job = HTFeed::Bunnies->new()->next_job(RECV_WAIT);
is($job->{pkg_type}, $volume->get_packagetype);
is($job->{namespace}, $volume->get_namespace);
is($job->{id}, $volume->get_objid);
Expand Down Expand Up @@ -85,7 +82,7 @@ describe "HTFeed::Queue" => sub {
my $priority = HTFeed::Queue::QUEUE_PRIORITY_MED;

HTFeed::Queue->new->enqueue(volume => testvolume, status => 'ready', priority => $priority);
my $job = HTFeed::Bunnies->new()->next_job($RECV_WAIT);
my $job = HTFeed::Bunnies->new()->next_job(RECV_WAIT);

is($job->{msg}{props}{priority}, $priority);
};
Expand Down Expand Up @@ -119,7 +116,7 @@ describe "HTFeed::Queue" => sub {
$receiver->reset_queue;

HTFeed::Queue->new->enqueue(volume => testvolume, status => 'ready', ignore => 1);
ok(!$receiver->next_job($RECV_WAIT));
ok(!$receiver->next_job(RECV_WAIT));

}
};
Expand All @@ -139,7 +136,7 @@ describe "HTFeed::Queue" => sub {
$receiver->reset_queue;

HTFeed::Queue->new->enqueue(volume => testvolume, status => 'ready', ignore => 1);
ok(!$receiver->next_job($RECV_WAIT));
ok(!$receiver->next_job(RECV_WAIT));

}
};
Expand All @@ -160,7 +157,7 @@ describe "HTFeed::Queue" => sub {
it "doesn't add a message to the queue" => sub {
HTFeed::Queue->new->enqueue(volume=>testvolume, status=>'ready');

ok(!HTFeed::Bunnies->new->next_job($RECV_WAIT));
ok(!HTFeed::Bunnies->new->next_job(RECV_WAIT));
};
it "doesn't put the item in the database" => sub {
HTFeed::Queue->new->enqueue(volume=>testvolume, status=>'ready');
Expand Down Expand Up @@ -213,7 +210,7 @@ describe "HTFeed::Queue" => sub {
it "doesn't put the item in the message queue" => sub {
HTFeed::Queue->new->enqueue(volume=>testvolume, status=>'ready');

ok(!HTFeed::Bunnies->new->next_job($RECV_WAIT));
ok(!HTFeed::Bunnies->new->next_job(RECV_WAIT));
};
};

Expand Down Expand Up @@ -261,7 +258,7 @@ describe "HTFeed::Queue" => sub {
$queue->enqueue(volume=>testvolume, status=>'punted');
$queue->reset(volume=>testvolume, reset_level => 1, priority => $priority);

my $job = HTFeed::Bunnies->new()->next_job($RECV_WAIT);
my $job = HTFeed::Bunnies->new()->next_job(RECV_WAIT);
is($job->{msg}{props}{priority}, $priority);
};

Expand All @@ -282,7 +279,7 @@ describe "HTFeed::Queue" => sub {
$queue->enqueue(volume=>testvolume, status=>'done');
$queue->reset(volume=>testvolume, reset_level => 1);
ok(!volume_in_feed_queue(testvolume, 'ready'));
ok(!HTFeed::Bunnies->new->next_job($RECV_WAIT));
ok(!HTFeed::Bunnies->new->next_job(RECV_WAIT));
};

describe "when resetting to available state" => sub {
Expand All @@ -297,7 +294,7 @@ describe "HTFeed::Queue" => sub {
my $queue = HTFeed::Queue->new;
$queue->enqueue(volume=>testvolume, status=>'punted');
$queue->reset(volume=>testvolume, reset_level => 1, status=>'available');
ok(!HTFeed::Bunnies->new->next_job($RECV_WAIT));
ok(!HTFeed::Bunnies->new->next_job(RECV_WAIT));
};
};
};
Expand Down Expand Up @@ -326,7 +323,7 @@ describe "HTFeed::Queue" => sub {

$queue->reset(volume=>testvolume, reset_level => 2);
ok(!volume_in_feed_queue(testvolume, 'ready'));
ok(!HTFeed::Bunnies->new->next_job($RECV_WAIT));
ok(!HTFeed::Bunnies->new->next_job(RECV_WAIT));
};
};

Expand Down Expand Up @@ -370,7 +367,7 @@ describe "HTFeed::Queue" => sub {
HTFeed::Bunnies->new->reset_queue;

$queue->reset(volume=>testvolume, reset_level => 3, status => 'ready');
my $job = HTFeed::Bunnies->new()->next_job($RECV_WAIT);
my $job = HTFeed::Bunnies->new()->next_job(RECV_WAIT);
is($job->{msg}{props}{priority}, $priority);
};
};
Expand All @@ -386,7 +383,7 @@ describe "HTFeed::Queue" => sub {

it "with available status, does not send a message" => sub {
HTFeed::Queue->new->send_to_message_queue(testvolume,'available');
ok(!HTFeed::Bunnies->new->next_job($RECV_WAIT));
ok(!HTFeed::Bunnies->new->next_job(RECV_WAIT));
};
};

Expand Down
9 changes: 3 additions & 6 deletions t/queue_runner.t
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use FindBin;
use lib "$FindBin::Bin/lib";
use Test::Spec;
use Test::Exception;
use HTFeed::Test::SpecSupport qw(mock_zephir);
use HTFeed::Test::SpecSupport qw(mock_zephir NO_WAIT RECV_WAIT);
use HTFeed::Test::Support qw(load_db_fixtures);
use HTFeed::Config qw(get_config set_config);
use HTFeed::DBTools qw(get_dbh);
Expand All @@ -12,9 +12,6 @@ use HTFeed::QueueRunner;

use strict;

my $NO_WAIT = -1;
my $RECV_WAIT = 500;

describe "HTFeed::QueueRunner" => sub {
local our ($tmpdirs, $testlog);
my $old_storage_classes;
Expand Down Expand Up @@ -58,11 +55,11 @@ describe "HTFeed::QueueRunner" => sub {
}

sub no_messages_in_queue {
not defined HTFeed::Bunnies->new()->next_job($NO_WAIT);
not defined HTFeed::Bunnies->new()->next_job(NO_WAIT);
}

sub queue_runner {
HTFeed::QueueRunner->new(timeout => $RECV_WAIT, should_fork => 0, clean => 0);
HTFeed::QueueRunner->new(timeout => RECV_WAIT, should_fork => 0, clean => 0);
}

before all => sub {
Expand Down

0 comments on commit 464e14c

Please sign in to comment.