use
lib
't/cdbi/testlib'
;
DBICTest::Schema::CD->load_components(
qw/CDBICompat CDBICompat::Pager/
);
my
$schema
= DBICTest->init_schema(
compose_connection
=> 1);
DBICTest::CD->result_source_instance->schema->storage(
$schema
->storage);
my
(
$pager
,
$it
) = DBICTest::CD->page(
{},
{
order_by
=>
'title'
,
rows
=> 3,
page
=> 1 } );
cmp_ok(
$pager
->entries_on_this_page,
'=='
, 3,
"entries_on_this_page ok"
);
cmp_ok(
$pager
->next_page,
'=='
, 2,
"next_page ok"
);
is(
$it
->
next
->title,
"Caterwaulin' Blues"
,
"iterator->next ok"
);
$it
->
next
;
$it
->
next
;
is(
$it
->
next
,
undef
,
"next past end of page ok"
);
(
$pager
,
$it
) = DBICTest::CD->page(
{},
{
rows
=> 2,
page
=> 2,
disable_sql_paging
=> 1 } );
cmp_ok(
$pager
->total_entries,
'=='
, 5,
"disable_sql_paging total_entries ok"
);
cmp_ok(
$pager
->previous_page,
'=='
, 1,
"disable_sql_paging previous_page ok"
);
is(
$it
->
next
->title,
"Caterwaulin' Blues"
,
"disable_sql_paging iterator->next ok"
);
$it
->
next
;
is(
$it
->
next
,
undef
,
"disable_sql_paging next past end of page ok"
);
(
$pager
,
$it
) = DBICTest::CD->page(
{
title
=> [
-and
=>
{
-like
=>
'%bees'
},
{
-not_like
=>
'Forkful%'
}
]
},
{
rows
=> 5 }
);
is(
$it
->count, 1,
"complex abstract count ok"
);
done_testing;