7 eval "use DBIx::Class::CDBICompat;";
9 plan (skip_all => 'Class::Trigger and DBIx::ContextualFetch required');
12 eval "use DBD::SQLite";
13 plan $@ ? (skip_all => 'needs DBD::SQLite for testing') : (tests => 10);
20 DBICTest::Schema::CD->load_components(qw/CDBICompat CDBICompat::Pager/);
22 my $schema = DBICTest->init_schema(compose_connection => 1);
24 DBICTest::CD->result_source_instance->schema->storage($schema->storage);
26 my ( $pager, $it ) = DBICTest::CD->page(
28 { order_by => 'title',
32 cmp_ok( $pager->entries_on_this_page, '==', 3, "entries_on_this_page ok" );
34 cmp_ok( $pager->next_page, '==', 2, "next_page ok" );
36 is( $it->next->title, "Caterwaulin' Blues", "iterator->next ok" );
41 is( $it->next, undef, "next past end of page ok" );
43 ( $pager, $it ) = DBICTest::CD->page(
47 disable_sql_paging => 1 } );
49 cmp_ok( $pager->total_entries, '==', 5, "disable_sql_paging total_entries ok" );
51 cmp_ok( $pager->previous_page, '==', 1, "disable_sql_paging previous_page ok" );
53 is( $it->next->title, "Caterwaulin' Blues", "disable_sql_paging iterator->next ok" );
57 is( $it->next, undef, "disable_sql_paging next past end of page ok" );
59 # based on a failing criteria submitted by waswas
60 ( $pager, $it ) = DBICTest::CD->page(
67 -not_like => 'Forkful%'
73 is( $it->count, 1, "complex abstract count ok" );