Introduce GOVERNANCE document and empty RESOLUTIONS file.
[dbsrgits/DBIx-Class.git] / t / cdbi / object_cache.t
CommitLineData
c0329273 1BEGIN { do "./t/lib/ANFANG.pm" or die ( $@ || $! ) }
83eef562 2use DBIx::Class::Optional::Dependencies -skip_all_without => 'cdbicompat';
3
592cd0b1 4use strict;
4a233f30 5use warnings;
83eef562 6
592cd0b1 7use Test::More;
8$| = 1;
9
592cd0b1 10
a40329c4 11use lib 't/cdbi/testlib';
12use Film;
592cd0b1 13
14ok +Film->create({
15 Title => 'This Is Spinal Tap',
16 Director => 'Rob Reiner',
17 Rating => 'R',
18});
19
20{
21 my $film1 = Film->retrieve( "This Is Spinal Tap" );
22 my $film2 = Film->retrieve( "This Is Spinal Tap" );
23
24 $film1->Director("Marty DiBergi");
25 is $film2->Director, "Marty DiBergi", 'retrieve returns the same object';
26
27 $film1->discard_changes;
28}
29
30{
31 Film->nocache(1);
8273e845 32
592cd0b1 33 my $film1 = Film->retrieve( "This Is Spinal Tap" );
34 my $film2 = Film->retrieve( "This Is Spinal Tap" );
35
36 $film1->Director("Marty DiBergi");
37 is $film2->Director, "Rob Reiner",
38 'caching turned off';
8273e845 39
592cd0b1 40 $film1->discard_changes;
41}
42
43{
44 Film->nocache(0);
45
46 my $film1 = Film->retrieve( "This Is Spinal Tap" );
47 my $film2 = Film->retrieve( "This Is Spinal Tap" );
48
49 $film1->Director("Marty DiBergi");
50 is $film2->Director, "Marty DiBergi",
51 'caching back on';
52
53 $film1->discard_changes;
54}
55
56
57{
58 Film->nocache(1);
59
60 local $Class::DBI::Weaken_Is_Available = 0;
61
62 my $film1 = Film->retrieve( "This Is Spinal Tap" );
63 my $film2 = Film->retrieve( "This Is Spinal Tap" );
64
65 $film1->Director("Marty DiBergi");
66 is $film2->Director, "Rob Reiner",
67 'CDBI::Weaken_Is_Available turns off all caching';
68
69 $film1->discard_changes;
70}
d9bd5195 71
72done_testing;