Lines 20-26
Link Here
|
20 |
use Modern::Perl; |
20 |
use Modern::Perl; |
21 |
use utf8; |
21 |
use utf8; |
22 |
|
22 |
|
23 |
use Test::More tests => 31; |
23 |
use Test::More tests => 32; |
24 |
use Test::Exception; |
24 |
use Test::Exception; |
25 |
use Test::MockModule; |
25 |
use Test::MockModule; |
26 |
|
26 |
|
Lines 2362-2364
subtest 'location_update_trigger() tests' => sub {
Link Here
|
2362 |
|
2362 |
|
2363 |
$schema->storage->txn_rollback; |
2363 |
$schema->storage->txn_rollback; |
2364 |
}; |
2364 |
}; |
2365 |
- |
2365 |
|
|
|
2366 |
subtest 'bookings' => sub { |
2367 |
plan tests => 4; |
2368 |
|
2369 |
$schema->storage->txn_begin; |
2370 |
|
2371 |
my $biblio = $builder->build_sample_biblio(); |
2372 |
my $item = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, bookable => 1 } ); |
2373 |
is( ref( $item->bookings() ), 'Koha::Bookings', "Koha::Item->bookings() returns a Koha::Bookings object" ); |
2374 |
is( $item->bookings->count, 0, "Nothing returned if there are no bookings" ); |
2375 |
|
2376 |
my $start_1 = dt_from_string()->subtract( days => 7 ); |
2377 |
my $end_1 = dt_from_string()->subtract( days => 1 ); |
2378 |
my $start_2 = dt_from_string(); |
2379 |
my $end_2 = dt_from_string()->add( days => 7 ); |
2380 |
my $start_3 = dt_from_string()->add( days => 8 ); |
2381 |
my $end_3 = dt_from_string()->add( days => 16 ); |
2382 |
|
2383 |
my $booking1 = $builder->build_object( |
2384 |
{ |
2385 |
class => 'Koha::Bookings', |
2386 |
value => { item_id => $item->itemnumber, start_date => $start_1, end_date => $end_1 } |
2387 |
} |
2388 |
); |
2389 |
my $booking2 = $builder->build_object( |
2390 |
{ |
2391 |
class => 'Koha::Bookings', |
2392 |
value => { item_id => $item->itemnumber, start_date => $start_2, end_date => $end_2 } |
2393 |
} |
2394 |
); |
2395 |
my $booking3 = $builder->build_object( |
2396 |
{ |
2397 |
class => 'Koha::Bookings', |
2398 |
value => { item_id => $item->itemnumber, start_date => $start_3, end_date => $end_3 } |
2399 |
} |
2400 |
); |
2401 |
|
2402 |
is( $item->bookings()->count, 3, "Three bookings found" ); |
2403 |
my $dtf = Koha::Database->new->schema->storage->datetime_parser; |
2404 |
is( |
2405 |
$item->bookings( { start_date => { '<=' => $dtf->format_datetime( dt_from_string() ) } } )->count, 2, |
2406 |
"Two bookings starts on or before today" |
2407 |
); |
2408 |
|
2409 |
$schema->storage->txn_rollback; |
2410 |
}; |