8 'DBIx::Class::DeploymentHandler::VersionHandler::Monotonic';
11 my $vh = Monotonic->new({
13 database_version => 1,
16 ok $vh, 'VersionHandler gets instantiated';
19 eq_array($vh->next_version_set, [1,2]),
20 'first version pair works'
23 !$vh->next_version_set,
24 'next version set returns undef when we are done'
29 my $vh = Monotonic->new({
32 database_version => 1,
35 ok $vh, 'VersionHandler gets instantiated';
38 !$vh->next_version_set,
39 'next version set returns undef if we are at the version requested'
44 my $vh = Monotonic->new({
47 database_version => 1,
50 ok $vh, 'VersionHandler gets instantiated';
52 eq_array($vh->next_version_set, [1,2]),
53 'first version pair works'
56 eq_array($vh->next_version_set, [2,3]),
57 'second version pair works'
60 eq_array($vh->next_version_set, [3,4]),
61 'third version pair works'
64 eq_array($vh->next_version_set, [4,5]),
65 'fourth version pair works'
67 ok( !$vh->next_version_set, 'no more versions after final pair' );
68 ok( !$vh->next_version_set, 'still no more versions after final pair' );
72 my $vh = Monotonic->new({
75 database_version => 5,
78 ok $vh, 'VersionHandler gets instantiated';
80 eq_array($vh->previous_version_set, [4,5]),
81 'first version pair works'
84 eq_array($vh->previous_version_set, [3,4]),
85 'second version pair works'
88 eq_array($vh->previous_version_set, [2,3]),
89 'third version pair works'
92 eq_array($vh->previous_version_set, [1,2]),
93 'fourth version pair works'
95 ok( !$vh->previous_version_set, 'no more versions before initial pair' );
96 ok( !$vh->previous_version_set, 'still no more versions before initial pair' );
100 my $vh = Monotonic->new({
102 database_version => '1.1',
104 $vh->next_version_set
105 } 'dies if database version not an Int';
108 my $vh = Monotonic->new({
111 database_version => 1,
113 $vh->next_version_set;
114 } 'cannot request an upgrade version before the current version';
117 my $vh = Monotonic->new({
120 database_version => 1,
122 $vh->previous_version_set;
123 } 'cannot request a downgrade version after the current version';
126 #vim: ts=2 sw=2 expandtab