Massive cleanup of DateTime test dependencies, other interim
[dbsrgits/DBIx-Class.git] / t / cdbi / object_cache.t
CommitLineData
592cd0b1 1use strict;
2use Test::More;
3$| = 1;
4
5BEGIN {
6 eval "use DBIx::Class::CDBICompat;";
7 if ($@) {
8 plan (skip_all => 'Class::Trigger and DBIx::ContextualFetch required');
592cd0b1 9 }
592cd0b1 10}
11
12INIT {
50891152 13 use lib 't/cdbi/testlib';
592cd0b1 14 use Film;
15}
16
f56e59cd 17plan skip_all => "Object cache is turned off"
18 if Film->isa("DBIx::Class::CDBICompat::NoObjectIndex");
19
20plan tests => 5;
21
22
592cd0b1 23ok +Film->create({
24 Title => 'This Is Spinal Tap',
25 Director => 'Rob Reiner',
26 Rating => 'R',
27});
28
29{
30 my $film1 = Film->retrieve( "This Is Spinal Tap" );
31 my $film2 = Film->retrieve( "This Is Spinal Tap" );
32
33 $film1->Director("Marty DiBergi");
34 is $film2->Director, "Marty DiBergi", 'retrieve returns the same object';
35
36 $film1->discard_changes;
37}
38
39{
40 Film->nocache(1);
41
42 my $film1 = Film->retrieve( "This Is Spinal Tap" );
43 my $film2 = Film->retrieve( "This Is Spinal Tap" );
44
45 $film1->Director("Marty DiBergi");
46 is $film2->Director, "Rob Reiner",
47 'caching turned off';
48
49 $film1->discard_changes;
50}
51
52{
53 Film->nocache(0);
54
55 my $film1 = Film->retrieve( "This Is Spinal Tap" );
56 my $film2 = Film->retrieve( "This Is Spinal Tap" );
57
58 $film1->Director("Marty DiBergi");
59 is $film2->Director, "Marty DiBergi",
60 'caching back on';
61
62 $film1->discard_changes;
63}
64
65
66{
67 Film->nocache(1);
68
69 local $Class::DBI::Weaken_Is_Available = 0;
70
71 my $film1 = Film->retrieve( "This Is Spinal Tap" );
72 my $film2 = Film->retrieve( "This Is Spinal Tap" );
73
74 $film1->Director("Marty DiBergi");
75 is $film2->Director, "Rob Reiner",
76 'CDBI::Weaken_Is_Available turns off all caching';
77
78 $film1->discard_changes;
79}