File: SelfResultSet.t

package info (click to toggle)
libdbix-class-helpers-perl 2.036000-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 1,008 kB
  • sloc: perl: 5,041; sql: 537; makefile: 7
file content (41 lines) | stat: -rw-r--r-- 941 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!perl

use strict;
use warnings;

use lib 't/lib';
use Test::More;

use TestSchema;
my $schema = TestSchema->deploy_or_connect();
$schema->prepopulate;

$schema->resultset('Foo_Bar')->delete;
$schema->resultset('Foo_Bar')->populate([
   [qw(foo_id bar_id)],
   [1, 2],
   [2, 1],
   [4, 5],
]);

subtest 'single pk column' => sub {
   for ($schema->resultset('Bar')->all) {
      subtest 'Bar.id: ' . $_->id => sub {
         is ($_->self_rs->count, 1, 'single row in self_rs');
         is ($_->self_rs->single->id, $_->id, 'id matches');
      };
   }
};

subtest 'multi pk' => sub {
   for ($schema->resultset('Foo_Bar')->all) {
      subtest 'Foo_Bar: ' . $_->foo_id . ' ' . $_->bar_id => sub {
         is ($_->self_rs->count, 1, 'single row in self_rs');
         is ($_->self_rs->single->foo_id, $_->foo_id, 'foo_id matches');
         is ($_->self_rs->single->bar_id, $_->bar_id, 'bar_id matches');
      };
   }
};

done_testing;