File: find_one_has_many.t

package info (click to toggle)
libdbix-class-perl 0.082844-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 5,320 kB
  • sloc: perl: 27,215; sql: 322; sh: 29; makefile: 16
file content (32 lines) | stat: -rw-r--r-- 971 bytes parent folder | download | duplicates (5)
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
use strict;
use warnings;

use Test::More;
use lib qw(t/lib);
use DBICTest;

my $schema = DBICTest->init_schema();

$schema->resultset('Artist')->delete;
$schema->resultset('CD')->delete;

my $artist  = $schema->resultset("Artist")->create({ artistid => 21, name => 'Michael Jackson', rank => 20 });
my $cd = $artist->create_related('cds', { year => 1975, title => 'Compilation from 1975' });

$schema->is_executed_sql_bind(sub {
  my $find_cd = $artist->find_related('cds',{title => 'Compilation from 1975'});
}, [
  [
    ' SELECT me.cdid, me.artist, me.title, me.year, me.genreid, me.single_track
        FROM cd me
      WHERE me.artist = ? AND me.title = ?
      ORDER BY year ASC
    ',
    [ { dbic_colname => "me.artist", sqlt_datatype => "integer" }
      => 21 ],
    [ { dbic_colname => "me.title",  sqlt_datatype => "varchar", sqlt_size => 100 }
      => "Compilation from 1975" ],
  ]
], 'find_related only uses foreign key condition once' );

done_testing;