{
DBIx::Class::Storage::DBI::SQLite
)
;
}
my
$schema
= DBICTest->init_schema (
storage_type
=>
'DBICTest::SQLite::NoBindVars'
,
no_populate
=> 1);
my
$new
=
$schema
->resultset(
'Artist'
)->create({
name
=>
'foo'
});
ok(
$new
->artistid,
"Auto-PK worked"
);
for
(1..6) {
$schema
->resultset(
'Artist'
)->create({
name
=>
'Artist '
.
$_
});
}
my
$it
=
$schema
->resultset(
'Artist'
)->search( {},
{
rows
=> 3,
offset
=> 2,
order_by
=>
'artistid'
}
);
is(
$it
->count, 3,
"LIMIT count ok"
);
$schema
->is_executed_sql_bind(
sub
{
is(
$it
->
next
->name,
"Artist 2"
,
"iterator->next ok"
);
$it
->
next
;
$it
->
next
;
is(
$it
->
next
,
undef
,
"next past end of resultset ok"
);
}, [
[
'SELECT me.artistid, me.name, me.rank, me.charfield FROM artist me ORDER BY artistid LIMIT 3 OFFSET 2'
],
],
'Correctly interpolated SQL'
);
done_testing;