Bugzilla – Attachment 19369 Details for
Bug 7688
Change subscriptions numbering pattern and frequencies
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 7688: Add unit tests for C4::Serials::Numberpattern
Bug-7688-Add-unit-tests-for-C4SerialsNumberpattern.patch (text/plain), 4.72 KB, created by
Julian Maurice
on 2013-07-03 14:01:11 UTC
(
hide
)
Description:
Bug 7688: Add unit tests for C4::Serials::Numberpattern
Filename:
MIME Type:
Creator:
Julian Maurice
Created:
2013-07-03 14:01:11 UTC
Size:
4.72 KB
patch
obsolete
>From 5f27c3df52963e3d5bf6162495e9a8d5bdbb93da Mon Sep 17 00:00:00 2001 >From: Julian Maurice <julian.maurice@biblibre.com> >Date: Wed, 3 Jul 2013 12:19:13 +0000 >Subject: [PATCH] Bug 7688: Add unit tests for C4::Serials::Numberpattern > >--- > t/db_dependent/Serials/Numberpattern.t | 103 ++++++++++++++++++++++++++++++++ > 1 file changed, 103 insertions(+) > create mode 100644 t/db_dependent/Serials/Numberpattern.t > >diff --git a/t/db_dependent/Serials/Numberpattern.t b/t/db_dependent/Serials/Numberpattern.t >new file mode 100644 >index 0000000..42d3df4 >--- /dev/null >+++ b/t/db_dependent/Serials/Numberpattern.t >@@ -0,0 +1,103 @@ >+#!/usr/bin/perl >+ >+use C4::Context; >+use Test::More tests => 95; >+use Modern::Perl; >+ >+my $dbh = C4::Context->dbh; >+$dbh->{RaiseError} = 1; >+$dbh->{AutoCommit} = 0; >+ >+use C4::Serials::Numberpattern; >+ >+# Start by deleting all numberpatterns. >+my @numberpatterns = GetSubscriptionNumberpatterns(); >+foreach my $n (@numberpatterns) { >+ DelSubscriptionNumberpattern($n->{id}); >+} >+ >+@numberpatterns = GetSubscriptionNumberpatterns(); >+is(scalar @numberpatterns, 0, "There is no numberpatterns in database"); >+ >+my $numberpattern = GetSubscriptionNumberpattern(1); >+is($numberpattern, undef, "GetSubscriptionNumberpattern(1) returns undef"); >+ >+my $rv = ModSubscriptionNumberpattern($numberpattern); >+is($rv, undef, "ModSubscriptionNumberpattern(undef) returns undef"); >+$numberpattern = {}; >+$rv = ModSubscriptionNumberpattern($numberpattern); >+is($rv, undef, "ModSubscriptionNumberpattern({}) returns undef"); >+# returns 0 because id doesn't exist >+$numberpattern = { id => 1, label => "Test numberpattern 1" }; >+$rv = ModSubscriptionNumberpattern($numberpattern); >+is($rv, '0E0', "ModSubscriptionNumberpattern({id=1,label=>'Test numberpattern 1'}) returns '0 but true'"); >+ >+$numberpattern = undef; >+my $id = AddSubscriptionNumberpattern($numberpattern); >+is($id, undef, "AddSubscriptionNumberpattern(undef) returns undef"); >+$numberpattern = {}; >+$id = AddSubscriptionNumberpattern($numberpattern); >+is($id, undef, "AddSubscriptionNumberpattern({}) returns undef"); >+$numberpattern = { label => "Test numberpattern 1", numberingmethod => "{X}" }; >+$id = AddSubscriptionNumberpattern($numberpattern); >+ok((defined($id) && ($id > 0)), "AddSubscriptionNumberpattern({label => 'Test numberpattern 1', numberingmethod => '{X}'}) returns numberpattern id"); >+ >+$numberpattern = GetSubscriptionNumberpattern($id); >+isa_ok($numberpattern, 'HASH', "GetSubscriptionNumberpattern($id)"); >+is($numberpattern->{label}, "Test numberpattern 1", "label OK"); >+is($numberpattern->{numberingmethod}, '{X}', "unit OK"); >+is($numberpattern->{description}, '', "description OK"); >+is($numberpattern->{displayorder}, undef, "displayorder OK"); >+foreach my $key (qw(label add every setto whenmorethan numbering)) { >+ foreach my $index (1,2,3) { >+ ok(exists $numberpattern->{$key . $index}, "$key$index exists"); >+ is($numberpattern->{$key . $index}, undef, "$key$index is undef"); >+ } >+} >+ >+$numberpattern->{label} = $numberpattern->{label} . " (modified)"; >+$numberpattern->{displayorder} = 1; >+my $i = 0; >+foreach my $key (qw(label add every setto whenmorethan numbering)) { >+ foreach my $index (1,2,3) { >+ $numberpattern->{$key . $index} = $i++; >+ } >+} >+$rv = ModSubscriptionNumberpattern($numberpattern); >+is($rv, 1, "ModSubscriptionNumberpattern(\$numberpattern) returns 1"); >+ >+$numberpattern = GetSubscriptionNumberpattern($id); >+isa_ok($numberpattern, 'HASH', "GetSubscriptionNumberpattern($id)"); >+is($numberpattern->{label}, "Test numberpattern 1 (modified)", "label OK"); >+is($numberpattern->{numberingmethod}, '{X}', "unit OK"); >+is($numberpattern->{description}, '', "description OK"); >+is($numberpattern->{displayorder}, 1, "displayorder OK"); >+$i = 0; >+foreach my $key (qw(label add every setto whenmorethan numbering)) { >+ foreach my $index (1,2,3) { >+ ok(exists $numberpattern->{$key . $index}, "$key$index exists"); >+ is($numberpattern->{$key . $index}, $i++, "$key$index is $i"); >+ } >+} >+ >+@numberpatterns = GetSubscriptionNumberpatterns(); >+is(scalar @numberpatterns, 1, "There is one numberpattern"); >+ >+diag("Add another numberpattern"); >+undef $numberpattern->{id}; >+my $id2 = AddSubscriptionNumberpattern($numberpattern); >+ >+@numberpatterns = GetSubscriptionNumberpatterns(); >+is(scalar @numberpatterns, 2, "There are two numberpatterns"); >+ >+diag("Delete one numberpattern"); >+DelSubscriptionNumberpattern($id); >+@numberpatterns = GetSubscriptionNumberpatterns(); >+is(scalar @numberpatterns, 1, "There is one numberpattern"); >+ >+diag("Delete the other numberpattern"); >+DelSubscriptionNumberpattern($id2); >+@numberpatterns = GetSubscriptionNumberpatterns(); >+is(scalar @numberpatterns, 0, "There is no numberpattern"); >+ >+$dbh->rollback; >-- >1.7.10.4
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 7688
:
8110
|
8941
|
8942
|
8943
|
10145
|
10146
|
10468
|
10469
|
10470
|
10739
|
10740
|
10742
|
10743
|
10903
|
10920
|
10985
|
11299
|
11300
|
11489
|
11490
|
12268
|
12269
|
13193
|
13194
|
13195
|
13196
|
14122
|
14123
|
14124
|
14125
|
14996
|
15492
|
15493
|
15494
|
15495
|
15496
|
15534
|
15536
|
15537
|
15538
|
15539
|
15540
|
15541
|
16679
|
16680
|
16681
|
16682
|
16683
|
16684
|
16744
|
17283
|
17284
|
17285
|
17855
|
17856
|
17857
|
18298
|
18299
|
18300
|
18793
|
18794
|
18795
|
19368
| 19369 |
19370
|
19393
|
19395