Bug 14097: Delete table issues before testing
[koha.git] / t / db_dependent / UsageStats.t
1 # Copyright 2015 BibLibre
2 #
3 # This file is part of Koha.
4 #
5 # Koha is free software; you can redistribute it and/or modify it under the
6 # terms of the GNU General Public License as published by the Free Software
7 # Foundation; either version 3 of the License, or (at your option) any later
8 # version.
9 #
10 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
11 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12 # A PARTICULAR PURPOSE. See the GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License along
15 # with Koha; if not, see <http://www.gnu.org/licenses>.
16
17 use Modern::Perl;
18 use Test::More tests => 552;
19 use t::lib::Mocks qw(mock_preference);
20 use POSIX qw(strftime);
21
22 BEGIN {
23     use_ok('C4::UsageStats');
24     use_ok('C4::Context');
25     use_ok('C4::Biblio');
26     use_ok( 'C4::AuthoritiesMarc', qw(AddAuthority) );
27     use_ok('C4::Reserves');
28     use_ok('MARC::Record');
29     use_ok('Koha::Acquisition::Order');
30     use_ok('t::lib::TestBuilder');
31 }
32
33 can_ok(
34     'C4::UsageStats', qw(
35       NeedUpdate
36       BuildReport
37       ReportToCommunity
38       _count )
39 );
40
41 my $dbh = C4::Context->dbh;
42 $dbh->{AutoCommit} = 0;
43 $dbh->{RaiseError} = 1;
44
45 $dbh->do('DELETE FROM issues');
46 $dbh->do('DELETE FROM biblio');
47 $dbh->do('DELETE FROM items');
48 $dbh->do('DELETE FROM auth_header');
49 $dbh->do('DELETE FROM old_issues');
50 $dbh->do('DELETE FROM old_reserves');
51 $dbh->do('DELETE FROM borrowers');
52 $dbh->do('DELETE FROM aqorders');
53 $dbh->do('DELETE FROM subscription');
54
55 #################################################
56 #             Testing Subs
57 #################################################
58
59 # ---------- Testing NeedUpdate -----------------
60
61 #Mocking C4::Context->preference("UsageStatsLastUpdateTime") to 0
62 my $now = strftime( "%s", localtime );
63 t::lib::Mocks::mock_preference( "UsageStatsLastUpdateTime", 0 );
64
65 my $update = C4::UsageStats->NeedUpdate;
66 is( $update, 1, "There is no last update, update needed" );
67
68 #Mocking C4::Context->preference("UsageStatsLastUpdateTime") to now
69 $now = strftime( "%s", localtime );
70 t::lib::Mocks::mock_preference( "UsageStatsLastUpdateTime", $now );
71
72 $update = C4::UsageStats->NeedUpdate;
73 is( $update, 0, "Last update just be done, no update needed " );
74
75 # ---------- Testing BuildReport ----------------
76
77 #Test report->library -----------------
78 #mock to 0
79 t::lib::Mocks::mock_preference( "UsageStatsID",          0 );
80 t::lib::Mocks::mock_preference( "UsageStatsLibraryName", 0 );
81 t::lib::Mocks::mock_preference( "UsageStatsLibraryUrl",  0 );
82 t::lib::Mocks::mock_preference( "UsageStatsLibraryType", 0 );
83 t::lib::Mocks::mock_preference( "UsageStatsCountry",     0 );
84
85 my $report = C4::UsageStats->BuildReport();
86
87 isa_ok( $report,            'HASH', '$report is a HASH' );
88 isa_ok( $report->{library}, 'HASH', '$report->{library} is a HASH' );
89 is( scalar( keys( $report->{library} ) ), 5,  "There are 5 fields in $report->{library}" );
90 is( $report->{library}->{id},             0,  "UsageStatsID           is good" );
91 is( $report->{library}->{name},           '', "UsageStatsLibraryName  is good" );
92 is( $report->{library}->{url},            '', "UsageStatsLibraryUrl   is good" );
93 is( $report->{library}->{type},           '', "UsageStatsLibraryType  is good" );
94 is( $report->{library}->{country},        '', "UsageStatsCountry      is good" );
95
96 #mock with values
97 t::lib::Mocks::mock_preference( "UsageStatsID",          1 );
98 t::lib::Mocks::mock_preference( "UsageStatsLibraryName", 'NAME' );
99 t::lib::Mocks::mock_preference( "UsageStatsLibraryUrl",  'URL' );
100 t::lib::Mocks::mock_preference( "UsageStatsLibraryType", 'TYPE' );
101 t::lib::Mocks::mock_preference( "UsageStatsCountry",     'COUNTRY' );
102
103 $report = C4::UsageStats->BuildReport();
104
105 isa_ok( $report,            'HASH', '$report is a HASH' );
106 isa_ok( $report->{library}, 'HASH', '$report->{library} is a HASH' );
107 is( scalar( keys( $report->{library} ) ), 5,         "There are 5 fields in $report->{library}" );
108 is( $report->{library}->{id},             1,         "UsageStatsID            is good" );
109 is( $report->{library}->{name},           'NAME',    "UsageStatsLibraryName   is good" );
110 is( $report->{library}->{url},            'URL',     "UsageStatsLibraryUrl    is good" );
111 is( $report->{library}->{type},           'TYPE',    "UsageStatsLibraryType   is good" );
112 is( $report->{library}->{country},        'COUNTRY', "UsageStatsCountry       is good" );
113
114 #Test report->volumetry ---------------
115 #without objects
116 $report = C4::UsageStats->BuildReport();
117
118 isa_ok( $report,              'HASH', '$report is a HASH' );
119 isa_ok( $report->{volumetry}, 'HASH', '$report->{volumetry} is a HASH' );
120 is( scalar( keys( $report->{volumetry} ) ), 8, "There are 8 fields in $report->{volumetry}" );
121 is( $report->{volumetry}->{biblio},         0, "There is no biblio" );
122 is( $report->{volumetry}->{items},          0, "There is no items" );
123 is( $report->{volumetry}->{auth_header},    0, "There is no auth_header" );
124 is( $report->{volumetry}->{old_issues},     0, "There is no old_issues" );
125 is( $report->{volumetry}->{old_reserves},   0, "There is no old_reserves" );
126 is( $report->{volumetry}->{borrowers},      0, "There is no borrowers" );
127 is( $report->{volumetry}->{aqorders},       0, "There is no aqorders" );
128 is( $report->{volumetry}->{subscription},   0, "There is no subscription" );
129
130 construct_objects_needed();
131
132 #with objects
133 $report = C4::UsageStats->BuildReport();
134
135 isa_ok( $report,              'HASH', '$report is a HASH' );
136 isa_ok( $report->{volumetry}, 'HASH', '$report->{volumetry} is a HASH' );
137 is( scalar( keys( $report->{volumetry} ) ), 8, "There are 8 fields in $report->{volumetry}" );
138 is( $report->{volumetry}->{biblio},         4, "There are 4 biblio" );
139 is( $report->{volumetry}->{items},          3, "There are 3 items" );
140 is( $report->{volumetry}->{auth_header},    2, "There are 2 auth_header" );
141 is( $report->{volumetry}->{old_issues},     1, "There is 1 old_issues" );
142 is( $report->{volumetry}->{old_reserves},   1, "There is 1 old_reserves" );
143 is( $report->{volumetry}->{borrowers},      3, "There are 3 borrowers" );
144 is( $report->{volumetry}->{aqorders},       1, "There is 1 aqorders" );
145 is( $report->{volumetry}->{subscription},   1, "There is 1 subscription" );
146
147 #Test report->systempreferences -------
148 #mock to 0
149 mocking_systempreferences_to_a_set_value(0);
150
151 $report = C4::UsageStats->BuildReport();
152 isa_ok( $report,                      'HASH', '$report is a HASH' );
153 isa_ok( $report->{systempreferences}, 'HASH', '$report->{systempreferences} is a HASH' );
154 is( scalar( keys( $report->{systempreferences} ) ), 248, "There are 248 fields in $report->{systempreferences}" );
155 verif_systempreferences_values(0);
156
157 #mock with values
158 mocking_systempreferences_to_a_set_value(1);
159
160 $report = C4::UsageStats->BuildReport();
161 isa_ok( $report,                      'HASH', '$report is a HASH' );
162 isa_ok( $report->{systempreferences}, 'HASH', '$report->{systempreferences} is a HASH' );
163 is( scalar( keys( $report->{systempreferences} ) ), 248, "There are 248 fields in $report->{systempreferences}" );
164 verif_systempreferences_values(1);
165
166 # ---------- Testing ReportToCommunity ----------
167
168 # ---------- Testing _count ---------------------
169
170 $dbh->do('DROP TABLE IF EXISTS _exmpl_tbl');
171 $dbh->do('CREATE TABLE _exmpl_tbl (id INT, val VARCHAR(10))');
172 $dbh->do( 'INSERT INTO _exmpl_tbl VALUES(1, ?)', undef, 'Hello' );
173 $dbh->do( 'INSERT INTO _exmpl_tbl VALUES(2, ?)', undef, 'World' );
174
175 my $query = '
176   SELECT count(*)
177   FROM   _exmpl_tbl
178   ';
179 my $count = $dbh->selectrow_array($query);
180
181 my $nb_fields = C4::UsageStats::_count('_exmpl_tbl');
182 is( $nb_fields, $count, "_exmpl_tbl has 2 fields" );
183
184 #################################################
185 #             Subs
186 #################################################
187
188 # Adding :
189 # 3 borrowers
190 # 4 biblio
191 # 3 biblio items
192 # 3 items
193 # 2 auth_header
194 # 1 old_issues
195 # 1 old_reserves
196 # 1 subscription
197 # 1 aqorders
198 sub construct_objects_needed {
199
200     # ---------- 3 borrowers  ---------------------
201     my $surname1     = 'Borrower 1';
202     my $surname2     = 'Borrower 2';
203     my $surname3     = 'Borrower 3';
204     my $firstname1   = 'firstname 1';
205     my $firstname2   = 'firstname 2';
206     my $firstname3   = 'firstname 3';
207     my $cardnumber1  = '00001';
208     my $cardnumber2  = '00002';
209     my $cardnumber3  = '00003';
210     my $categorycode = Koha::Database->new()->schema()->resultset('Category')->first()->categorycode();
211     my $branchcode   = Koha::Database->new()->schema()->resultset('Branch')->first()->branchcode();
212
213     my $query = '
214    INSERT INTO borrowers
215       (surname, firstname, cardnumber, branchcode, categorycode)
216     VALUES (?,?,?,?,?)';
217     my $insert_sth = $dbh->prepare($query);
218     $insert_sth->execute( $surname1, $firstname1, $cardnumber1, $branchcode, $categorycode );
219     $insert_sth->execute( $surname2, $firstname2, $cardnumber2, $branchcode, $categorycode );
220     $insert_sth->execute( $surname3, $firstname3, $cardnumber3, $branchcode, $categorycode );
221
222     $query = '
223     SELECT borrowernumber
224     FROM   borrowers
225     WHERE  surname = ?';
226     my $borrowernumber1 = $dbh->selectrow_array( $query, {}, $surname1 );
227     my $borrowernumber2 = $dbh->selectrow_array( $query, {}, $surname2 );
228     my $borrowernumber3 = $dbh->selectrow_array( $query, {}, $surname3 );
229
230     # ---------- 3 biblios -----------------------
231     my $title1  = 'Title 1';
232     my $title2  = 'Title 2';
233     my $title3  = 'Title 3';
234     my $author1 = 'Author 1';
235     my $author2 = 'Author 2';
236     my $author3 = 'Author 3';
237
238     $query = '
239     INSERT INTO biblio
240       (title, author)
241     VALUES (?,?)';
242     $insert_sth = $dbh->prepare($query);
243     $insert_sth->execute( $title1, $author1 );
244     my $biblionumber1 = $dbh->last_insert_id( undef, undef, 'biblio', undef );
245     $insert_sth->execute( $title2, undef );
246     my $biblionumber2 = $dbh->last_insert_id( undef, undef, 'biblio', undef );
247     $insert_sth->execute( $title3, $author3 );
248     my $biblionumber3 = $dbh->last_insert_id( undef, undef, 'biblio', undef );
249
250     # ---------- 3 biblio items  -------------------------
251     $query = '
252     INSERT INTO biblioitems
253       (biblionumber, itemtype, marcxml)
254     VALUES (?,?,?)';
255     $insert_sth = $dbh->prepare($query);
256     $insert_sth->execute( $biblionumber1, 'Book',  '' );
257     $insert_sth->execute( $biblionumber2, 'Music', '' );
258     $insert_sth->execute( $biblionumber3, 'Book',  '' );
259
260     $query = '
261     SELECT biblioitemnumber
262     FROM   biblioitems
263     WHERE  biblionumber = ?';
264     my $biblioitemnumber1 = $dbh->selectrow_array( $query, {}, $biblionumber1 );
265     my $biblioitemnumber2 = $dbh->selectrow_array( $query, {}, $biblionumber2 );
266     my $biblioitemnumber3 = $dbh->selectrow_array( $query, {}, $biblionumber3 );
267
268     # ---------- 3 items  -------------------------
269     my $barcode1 = '111111';
270     my $barcode2 = '222222';
271     my $barcode3 = '333333';
272
273     $query = '
274     INSERT INTO items
275       (biblionumber, biblioitemnumber, barcode, itype)
276     VALUES (?,?,?,?)';
277     $insert_sth = $dbh->prepare($query);
278     $insert_sth->execute( $biblionumber1, $biblioitemnumber1, $barcode1, 'Book' );
279     $insert_sth->execute( $biblionumber2, $biblioitemnumber2, $barcode2, 'Music' );
280     $insert_sth->execute( $biblionumber3, $biblioitemnumber3, $barcode3, 'Book' );
281
282     $query = '
283     SELECT itemnumber
284     FROM   items
285     WHERE  barcode = ?';
286     my $item_number1 = $dbh->selectrow_array( $query, {}, $barcode1 );
287     my $item_number2 = $dbh->selectrow_array( $query, {}, $barcode2 );
288     my $item_number3 = $dbh->selectrow_array( $query, {}, $barcode3 );
289
290     # ---------- Add 2 auth_header
291     $query = '
292     INSERT INTO auth_header
293       (authtypecode)
294     VALUES (?)';
295     $insert_sth = $dbh->prepare($query);
296     $insert_sth->execute('authtypecode1');
297     $insert_sth->execute('authtypecode2');
298
299     $query = '
300     SELECT authid
301     FROM   auth_header
302     WHERE  authtypecode = ?';
303     my $authid1 = $dbh->selectrow_array( $query, {}, 'authtypecode1' );
304     my $authid2 = $dbh->selectrow_array( $query, {}, 'authtypecode2' );
305
306     # ---------- Add 1 old_issues
307     $query = '
308     INSERT INTO old_issues
309       (borrowernumber, branchcode, itemnumber)
310     VALUES (?,?,?)';
311     $insert_sth = $dbh->prepare($query);
312     $insert_sth->execute( $borrowernumber1, $branchcode, $item_number1 );
313
314     $query = '
315     SELECT issue_id
316     FROM   old_issues
317     WHERE  borrowernumber = ?';
318     my $issue_id1 = $dbh->selectrow_array( $query, {}, $borrowernumber1 );
319
320     # ---------- Add 1 old_reserves
321     AddReserve( $branchcode, $borrowernumber1, $biblionumber1, 'a', '', 1, undef, undef, '', 'Title', undef, undef );
322     my $reserves1   = GetReservesFromBiblionumber( { biblionumber => $biblionumber1 } );
323     my $reserve_id1 = $reserves1->[0]->{reserve_id};
324     my $reserve1    = CancelReserve( { reserve_id => $reserve_id1 } );
325
326     # ---------- Add 1 biblio, 1 subscription and 1 aqorder
327     my $builder = t::lib::TestBuilder->new();
328     $builder->clear( { source => 'Aqorder' } );
329     my $order1 = $builder->build(
330         {   source  => 'Aqorder',
331             value   => { datecancellationprinted => undef, },
332             only_fk => 1,
333         }
334     );
335     my $newordernumber = Koha::Acquisition::Order->new($order1)->insert->{ordernumber};
336 }
337
338 #Change systempreferences values to $set_value
339 sub mocking_systempreferences_to_a_set_value {
340     my $set_value = shift;
341
342     foreach (
343         qw/
344         AcqCreateItem
345         AcqWarnOnDuplicateInvoice
346         AcqViewBaskets
347         BasketConfirmations
348         OrderPdfFormat
349         casAuthentication
350         casLogout
351         AllowPkiAuth
352         DebugLevel
353         delimiter
354         noItemTypeImages
355         virtualshelves
356         AutoLocation
357         IndependentBranches
358         SessionStorage
359         Persona
360         AuthDisplayHierarchy
361         AutoCreateAuthorities
362         BiblioAddsAuthorities
363         dontmerge
364         UseAuthoritiesForTracings
365         CatalogModuleRelink
366         hide_marc
367         IntranetBiblioDefaultView
368         LabelMARCView
369         OpacSuppression
370         SeparateHoldings
371         UseControlNumber
372         advancedMARCeditor
373         DefaultClassificationSource
374         EasyAnalyticalRecords
375         autoBarcode
376         item-level_itypes
377         marcflavour
378         PrefillItem
379         z3950NormalizeAuthor
380         SpineLabelAutoPrint
381         SpineLabelShowPrintOnBibDetails
382         BlockReturnOfWithdrawnItems
383         CalculateFinesOnReturn
384         AgeRestrictionOverride
385         AllFinesNeedOverride
386         AllowFineOverride
387         AllowItemsOnHoldCheckout
388         AllowNotForLoanOverride
389         AllowRenewalLimitOverride
390         AllowReturnToBranch
391         AllowTooManyOverride
392         AutomaticItemReturn
393         AutoRemoveOverduesRestrictions
394         CircControl
395         HomeOrHoldingBranch
396         HomeOrHoldingBranchReturn
397         InProcessingToShelvingCart
398         IssueLostItem
399         IssuingInProcess
400         ManInvInNoissuesCharge
401         OverduesBlockCirc
402         RenewalPeriodBase
403         RenewalSendNotice
404         RentalsInNoissuesCharge
405         ReturnBeforeExpiry
406         ReturnToShelvingCart
407         TransfersMaxDaysWarning
408         UseBranchTransferLimits
409         useDaysMode
410         UseTransportCostMatrix
411         UseCourseReserves
412         finesCalendar
413         FinesIncludeGracePeriod
414         finesMode
415         RefundLostItemFeeOnReturn
416         WhenLostChargeReplacementFee
417         WhenLostForgiveFine
418         AllowHoldDateInFuture
419         AllowHoldPolicyOverride
420         AllowHoldsOnDamagedItems
421         AllowHoldsOnPatronsPossessions
422         AutoResumeSuspendedHolds
423         canreservefromotherbranches
424         decreaseLoanHighHolds
425         DisplayMultiPlaceHold
426         emailLibrarianWhenHoldIsPlaced
427         ExpireReservesMaxPickUpDelay
428         OPACAllowHoldDateInFuture
429         OPACAllowUserToChooseBranch
430         ReservesControlBranch
431         ReservesNeedReturns
432         SuspendHoldsIntranet
433         SuspendHoldsOpac
434         TransferWhenCancelAllWaitingHolds
435         AllowAllMessageDeletion
436         AllowOfflineCirculation
437         CircAutocompl
438         CircAutoPrintQuickSlip
439         DisplayClearScreenButton
440         FilterBeforeOverdueReport
441         FineNotifyAtCheckin
442         itemBarcodeFallbackSearch
443         itemBarcodeInputFilter
444         previousIssuesDefaultSortOrder
445         RecordLocalUseOnReturn
446         soundon
447         SpecifyDueDate
448         todaysIssuesDefaultSortOrder
449         UpdateTotalIssuesOnCirc
450         UseTablesortForCirc
451         WaitingNotifyAtCheckin
452         AllowSelfCheckReturns
453         AutoSelfCheckAllowed
454         FRBRizeEditions
455         OPACFRBRizeEditions
456         AmazonCoverImages
457         OPACAmazonCoverImages
458         Babeltheque
459         BakerTaylorEnabled
460         GoogleJackets
461         HTML5MediaEnabled
462         IDreamBooksReadometer
463         IDreamBooksResults
464         IDreamBooksReviews
465         LibraryThingForLibrariesEnabled
466         LocalCoverImages
467         OPACLocalCoverImages
468         NovelistSelectEnabled
469         XISBN
470         OpenLibraryCovers
471         UseKohaPlugins
472         SyndeticsEnabled
473         TagsEnabled
474         CalendarFirstDayOfWeek
475         opaclanguagesdisplay
476         AuthoritiesLog
477         BorrowersLog
478         CataloguingLog
479         FinesLog
480         IssueLog
481         LetterLog
482         ReturnLog
483         SubscriptionLog
484         AuthorisedValueImages
485         BiblioDefaultView
486         COinSinOPACResults
487         DisplayOPACiconsXSLT
488         hidelostitems
489         HighlightOwnItemsOnOPAC
490         OpacAddMastheadLibraryPulldown
491         OPACDisplay856uAsImage
492         OpacHighlightedWords
493         OpacKohaUrl
494         OpacMaintenance
495         OpacPublic
496         OpacSeparateHoldings
497         OPACShowBarcode
498         OPACShowCheckoutName
499         OpacShowFiltersPulldownMobile
500         OPACShowHoldQueueDetails
501         OpacShowLibrariesPulldownMobile
502         OpacShowRecentComments
503         OPACShowUnusedAuthorities
504         OpacStarRatings
505         opacthemes
506         OPACURLOpenInNewWindow
507         OpacAuthorities
508         opacbookbag
509         OpacBrowser
510         OpacBrowseResults
511         OpacCloud
512         OPACFinesTab
513         OpacHoldNotes
514         OpacItemLocation
515         OpacPasswordChange
516         OPACPatronDetails
517         OPACpatronimages
518         OPACPopupAuthorsSearch
519         OpacTopissue
520         opacuserlogin
521         QuoteOfTheDay
522         RequestOnOpac
523         reviewson
524         ShowReviewer
525         ShowReviewerPhoto
526         SocialNetworks
527         suggestion
528         AllowPurchaseSuggestionBranchChoice
529         OpacAllowPublicListCreation
530         OpacAllowSharingPrivateLists
531         OpacRenewalAllowed
532         OpacRenewalBranch
533         OPACViewOthersSuggestions
534         SearchMyLibraryFirst
535         singleBranchMode
536         AnonSuggestions
537         EnableOpacSearchHistory
538         OPACPrivacy
539         opacreadinghistory
540         TrackClicks
541         PatronSelfRegistration
542         OPACShelfBrowser
543         AutoEmailOpacUser
544         AutoEmailPrimaryAddress
545         autoMemberNum
546         BorrowerRenewalPeriodBase
547         checkdigit
548         EnableBorrowerFiles
549         EnhancedMessagingPreferences
550         ExtendedPatronAttributes
551         intranetreadinghistory
552         memberofinstitution
553         patronimages
554         TalkingTechItivaPhoneNotification
555         uppercasesurnames
556         IncludeSeeFromInSearches
557         OpacGroupResults
558         QueryAutoTruncate
559         QueryFuzzy
560         QueryStemming
561         QueryWeightFields
562         TraceCompleteSubfields
563         TraceSubjectSubdivisions
564         UseICU
565         UseQueryParser
566         defaultSortField
567         displayFacetCount
568         OPACdefaultSortField
569         OPACItemsResultsDisplay
570         expandedSearchOption
571         IntranetNumbersPreferPhrase
572         OPACNumbersPreferPhrase
573         opacSerialDefaultTab
574         RenewSerialAddsSuggestion
575         RoutingListAddReserves
576         RoutingSerials
577         SubscriptionHistory
578         Display856uAsImage
579         DisplayIconsXSLT
580         StaffAuthorisedValueImages
581         template
582         yuipath
583         HidePatronName
584         intranetbookbag
585         StaffDetailItemSelection
586         viewISBD
587         viewLabeledMARC
588         viewMARC
589         ILS-DI
590         OAI-PMH
591         version
592         /
593       ) {
594         t::lib::Mocks::mock_preference( $_, $set_value );
595     }
596 }
597
598 #Test if all systempreferences are at $value_to_test
599 sub verif_systempreferences_values {
600     my $value_to_test = shift;
601
602     is( $report->{systempreferences}->{AcqCreateItem},                       $value_to_test, "AcqCreateItem                      = $value_to_test" );
603     is( $report->{systempreferences}->{AcqWarnOnDuplicateInvoice},           $value_to_test, "AcqWarnOnDuplicateInvoice          = $value_to_test" );
604     is( $report->{systempreferences}->{AcqViewBaskets},                      $value_to_test, "AcqViewBaskets                     = $value_to_test" );
605     is( $report->{systempreferences}->{BasketConfirmations},                 $value_to_test, "BasketConfirmations                = $value_to_test" );
606     is( $report->{systempreferences}->{OrderPdfFormat},                      $value_to_test, "OrderPdfFormat                     = $value_to_test" );
607     is( $report->{systempreferences}->{casAuthentication},                   $value_to_test, "casAuthentication                  = $value_to_test" );
608     is( $report->{systempreferences}->{casLogout},                           $value_to_test, "casLogout                          = $value_to_test" );
609     is( $report->{systempreferences}->{AllowPkiAuth},                        $value_to_test, "AllowPkiAuth                       = $value_to_test" );
610     is( $report->{systempreferences}->{DebugLevel},                          $value_to_test, "DebugLevel                         = $value_to_test" );
611     is( $report->{systempreferences}->{delimiter},                           $value_to_test, "delimiter                          = $value_to_test" );
612     is( $report->{systempreferences}->{noItemTypeImages},                    $value_to_test, "noItemTypeImages                   = $value_to_test" );
613     is( $report->{systempreferences}->{virtualshelves},                      $value_to_test, "virtualshelves                     = $value_to_test" );
614     is( $report->{systempreferences}->{AutoLocation},                        $value_to_test, "AutoLocation                       = $value_to_test" );
615     is( $report->{systempreferences}->{IndependentBranches},                 $value_to_test, "IndependentBranches                = $value_to_test" );
616     is( $report->{systempreferences}->{SessionStorage},                      $value_to_test, "SessionStorage                     = $value_to_test" );
617     is( $report->{systempreferences}->{Persona},                             $value_to_test, "Persona                            = $value_to_test" );
618     is( $report->{systempreferences}->{AuthDisplayHierarchy},                $value_to_test, "AuthDisplayHierarchy               = $value_to_test" );
619     is( $report->{systempreferences}->{AutoCreateAuthorities},               $value_to_test, "AutoCreateAuthorities              = $value_to_test" );
620     is( $report->{systempreferences}->{BiblioAddsAuthorities},               $value_to_test, "BiblioAddsAuthorities              = $value_to_test" );
621     is( $report->{systempreferences}->{dontmerge},                           $value_to_test, "dontmerge                          = $value_to_test" );
622     is( $report->{systempreferences}->{UseAuthoritiesForTracings},           $value_to_test, "UseAuthoritiesForTracings          = $value_to_test" );
623     is( $report->{systempreferences}->{CatalogModuleRelink},                 $value_to_test, "CatalogModuleRelink                = $value_to_test" );
624     is( $report->{systempreferences}->{hide_marc},                           $value_to_test, "hide_marc                          = $value_to_test" );
625     is( $report->{systempreferences}->{IntranetBiblioDefaultView},           $value_to_test, "IntranetBiblioDefaultView          = $value_to_test" );
626     is( $report->{systempreferences}->{LabelMARCView},                       $value_to_test, "LabelMARCView                      = $value_to_test" );
627     is( $report->{systempreferences}->{OpacSuppression},                     $value_to_test, "OpacSuppression                    = $value_to_test" );
628     is( $report->{systempreferences}->{SeparateHoldings},                    $value_to_test, "SeparateHoldings                   = $value_to_test" );
629     is( $report->{systempreferences}->{UseControlNumber},                    $value_to_test, "UseControlNumber                   = $value_to_test" );
630     is( $report->{systempreferences}->{advancedMARCeditor},                  $value_to_test, "advancedMARCeditor                 = $value_to_test" );
631     is( $report->{systempreferences}->{DefaultClassificationSource},         $value_to_test, "DefaultClassificationSource        = $value_to_test" );
632     is( $report->{systempreferences}->{EasyAnalyticalRecords},               $value_to_test, "EasyAnalyticalRecords              = $value_to_test" );
633     is( $report->{systempreferences}->{autoBarcode},                         $value_to_test, "autoBarcode                        = $value_to_test" );
634     is( $report->{systempreferences}->{'item-level_itypes'},                 $value_to_test, "item-level_itypes                  = $value_to_test" );
635     is( $report->{systempreferences}->{marcflavour},                         $value_to_test, "marcflavour                        = $value_to_test" );
636     is( $report->{systempreferences}->{PrefillItem},                         $value_to_test, "PrefillItem                        = $value_to_test" );
637     is( $report->{systempreferences}->{z3950NormalizeAuthor},                $value_to_test, "z3950NormalizeAuthor               = $value_to_test" );
638     is( $report->{systempreferences}->{SpineLabelAutoPrint},                 $value_to_test, "SpineLabelAutoPrint                = $value_to_test" );
639     is( $report->{systempreferences}->{SpineLabelShowPrintOnBibDetails},     $value_to_test, "SpineLabelShowPrintOnBibDetails    = $value_to_test" );
640     is( $report->{systempreferences}->{BlockReturnOfWithdrawnItems},         $value_to_test, "BlockReturnOfWithdrawnItems        = $value_to_test" );
641     is( $report->{systempreferences}->{CalculateFinesOnReturn},              $value_to_test, "CalculateFinesOnReturn             = $value_to_test" );
642     is( $report->{systempreferences}->{AgeRestrictionOverride},              $value_to_test, "AgeRestrictionOverride             = $value_to_test" );
643     is( $report->{systempreferences}->{AllFinesNeedOverride},                $value_to_test, "AllFinesNeedOverride               = $value_to_test" );
644     is( $report->{systempreferences}->{AllowFineOverride},                   $value_to_test, "AllowFineOverride                  = $value_to_test" );
645     is( $report->{systempreferences}->{AllowItemsOnHoldCheckout},            $value_to_test, "AllowItemsOnHoldCheckout           = $value_to_test" );
646     is( $report->{systempreferences}->{AllowNotForLoanOverride},             $value_to_test, "AllowNotForLoanOverride            = $value_to_test" );
647     is( $report->{systempreferences}->{AllowRenewalLimitOverride},           $value_to_test, "AllowRenewalLimitOverride          = $value_to_test" );
648     is( $report->{systempreferences}->{AllowReturnToBranch},                 $value_to_test, "AllowReturnToBranch                = $value_to_test" );
649     is( $report->{systempreferences}->{AllowTooManyOverride},                $value_to_test, "AllowTooManyOverride               = $value_to_test" );
650     is( $report->{systempreferences}->{AutomaticItemReturn},                 $value_to_test, "AutomaticItemReturn                = $value_to_test" );
651     is( $report->{systempreferences}->{AutoRemoveOverduesRestrictions},      $value_to_test, "AutoRemoveOverduesRestrictions     = $value_to_test" );
652     is( $report->{systempreferences}->{CircControl},                         $value_to_test, "CircControl                        = $value_to_test" );
653     is( $report->{systempreferences}->{HomeOrHoldingBranch},                 $value_to_test, "HomeOrHoldingBranch                = $value_to_test" );
654     is( $report->{systempreferences}->{HomeOrHoldingBranchReturn},           $value_to_test, "HomeOrHoldingBranchReturn          = $value_to_test" );
655     is( $report->{systempreferences}->{InProcessingToShelvingCart},          $value_to_test, "InProcessingToShelvingCart         = $value_to_test" );
656     is( $report->{systempreferences}->{IssueLostItem},                       $value_to_test, "IssueLostItem                      = $value_to_test" );
657     is( $report->{systempreferences}->{IssuingInProcess},                    $value_to_test, "IssuingInProcess                   = $value_to_test" );
658     is( $report->{systempreferences}->{ManInvInNoissuesCharge},              $value_to_test, "ManInvInNoissuesCharge             = $value_to_test" );
659     is( $report->{systempreferences}->{OverduesBlockCirc},                   $value_to_test, "OverduesBlockCirc                  = $value_to_test" );
660     is( $report->{systempreferences}->{RenewalPeriodBase},                   $value_to_test, "RenewalPeriodBase                  = $value_to_test" );
661     is( $report->{systempreferences}->{RenewalSendNotice},                   $value_to_test, "RenewalSendNotice                  = $value_to_test" );
662     is( $report->{systempreferences}->{RentalsInNoissuesCharge},             $value_to_test, "RentalsInNoissuesCharge            = $value_to_test" );
663     is( $report->{systempreferences}->{ReturnBeforeExpiry},                  $value_to_test, "ReturnBeforeExpiry                 = $value_to_test" );
664     is( $report->{systempreferences}->{ReturnToShelvingCart},                $value_to_test, "ReturnToShelvingCart               = $value_to_test" );
665     is( $report->{systempreferences}->{TransfersMaxDaysWarning},             $value_to_test, "TransfersMaxDaysWarning            = $value_to_test" );
666     is( $report->{systempreferences}->{UseBranchTransferLimits},             $value_to_test, "UseBranchTransferLimits            = $value_to_test" );
667     is( $report->{systempreferences}->{useDaysMode},                         $value_to_test, "useDaysMode                        = $value_to_test" );
668     is( $report->{systempreferences}->{UseTransportCostMatrix},              $value_to_test, "UseTransportCostMatrix             = $value_to_test" );
669     is( $report->{systempreferences}->{UseCourseReserves},                   $value_to_test, "UseCourseReserves                  = $value_to_test" );
670     is( $report->{systempreferences}->{finesCalendar},                       $value_to_test, "finesCalendar                      = $value_to_test" );
671     is( $report->{systempreferences}->{FinesIncludeGracePeriod},             $value_to_test, "FinesIncludeGracePeriod            = $value_to_test" );
672     is( $report->{systempreferences}->{finesMode},                           $value_to_test, "finesMode                          = $value_to_test" );
673     is( $report->{systempreferences}->{RefundLostItemFeeOnReturn},           $value_to_test, "RefundLostItemFeeOnReturn          = $value_to_test" );
674     is( $report->{systempreferences}->{WhenLostChargeReplacementFee},        $value_to_test, "WhenLostChargeReplacementFee       = $value_to_test" );
675     is( $report->{systempreferences}->{WhenLostForgiveFine},                 $value_to_test, "WhenLostForgiveFine                = $value_to_test" );
676     is( $report->{systempreferences}->{AllowHoldDateInFuture},               $value_to_test, "AllowHoldDateInFuture              = $value_to_test" );
677     is( $report->{systempreferences}->{AllowHoldPolicyOverride},             $value_to_test, "AllowHoldPolicyOverride            = $value_to_test" );
678     is( $report->{systempreferences}->{AllowHoldsOnDamagedItems},            $value_to_test, "AllowHoldsOnDamagedItems           = $value_to_test" );
679     is( $report->{systempreferences}->{AllowHoldsOnPatronsPossessions},      $value_to_test, "AllowHoldsOnPatronsPossessions     = $value_to_test" );
680     is( $report->{systempreferences}->{AutoResumeSuspendedHolds},            $value_to_test, "AutoResumeSuspendedHolds           = $value_to_test" );
681     is( $report->{systempreferences}->{canreservefromotherbranches},         $value_to_test, "canreservefromotherbranches        = $value_to_test" );
682     is( $report->{systempreferences}->{decreaseLoanHighHolds},               $value_to_test, "decreaseLoanHighHolds              = $value_to_test" );
683     is( $report->{systempreferences}->{DisplayMultiPlaceHold},               $value_to_test, "DisplayMultiPlaceHold              = $value_to_test" );
684     is( $report->{systempreferences}->{emailLibrarianWhenHoldIsPlaced},      $value_to_test, "emailLibrarianWhenHoldIsPlaced     = $value_to_test" );
685     is( $report->{systempreferences}->{ExpireReservesMaxPickUpDelay},        $value_to_test, "ExpireReservesMaxPickUpDelay       = $value_to_test" );
686     is( $report->{systempreferences}->{OPACAllowHoldDateInFuture},           $value_to_test, "OPACAllowHoldDateInFuture          = $value_to_test" );
687     is( $report->{systempreferences}->{OPACAllowUserToChooseBranch},         $value_to_test, "OPACAllowUserToChooseBranch        = $value_to_test" );
688     is( $report->{systempreferences}->{ReservesControlBranch},               $value_to_test, "ReservesControlBranch              = $value_to_test" );
689     is( $report->{systempreferences}->{ReservesNeedReturns},                 $value_to_test, "ReservesNeedReturns                = $value_to_test" );
690     is( $report->{systempreferences}->{SuspendHoldsIntranet},                $value_to_test, "SuspendHoldsIntranet               = $value_to_test" );
691     is( $report->{systempreferences}->{SuspendHoldsOpac},                    $value_to_test, "SuspendHoldsOpac                   = $value_to_test" );
692     is( $report->{systempreferences}->{TransferWhenCancelAllWaitingHolds},   $value_to_test, "TransferWhenCancelAllWaitingHolds  = $value_to_test" );
693     is( $report->{systempreferences}->{AllowAllMessageDeletion},             $value_to_test, "AllowAllMessageDeletion            = $value_to_test" );
694     is( $report->{systempreferences}->{AllowOfflineCirculation},             $value_to_test, "AllowOfflineCirculation            = $value_to_test" );
695     is( $report->{systempreferences}->{CircAutocompl},                       $value_to_test, "CircAutocompl                      = $value_to_test" );
696     is( $report->{systempreferences}->{CircAutoPrintQuickSlip},              $value_to_test, "CircAutoPrintQuickSlip             = $value_to_test" );
697     is( $report->{systempreferences}->{DisplayClearScreenButton},            $value_to_test, "DisplayClearScreenButton           = $value_to_test" );
698     is( $report->{systempreferences}->{FilterBeforeOverdueReport},           $value_to_test, "FilterBeforeOverdueReport          = $value_to_test" );
699     is( $report->{systempreferences}->{FineNotifyAtCheckin},                 $value_to_test, "FineNotifyAtCheckin                = $value_to_test" );
700     is( $report->{systempreferences}->{itemBarcodeFallbackSearch},           $value_to_test, "itemBarcodeFallbackSearch          = $value_to_test" );
701     is( $report->{systempreferences}->{itemBarcodeInputFilter},              $value_to_test, "itemBarcodeInputFilter             = $value_to_test" );
702     is( $report->{systempreferences}->{previousIssuesDefaultSortOrder},      $value_to_test, "previousIssuesDefaultSortOrder     = $value_to_test" );
703     is( $report->{systempreferences}->{RecordLocalUseOnReturn},              $value_to_test, "RecordLocalUseOnReturn             = $value_to_test" );
704     is( $report->{systempreferences}->{soundon},                             $value_to_test, "soundon                            = $value_to_test" );
705     is( $report->{systempreferences}->{SpecifyDueDate},                      $value_to_test, "SpecifyDueDate                     = $value_to_test" );
706     is( $report->{systempreferences}->{todaysIssuesDefaultSortOrder},        $value_to_test, "todaysIssuesDefaultSortOrder       = $value_to_test" );
707     is( $report->{systempreferences}->{UpdateTotalIssuesOnCirc},             $value_to_test, "UpdateTotalIssuesOnCirc            = $value_to_test" );
708     is( $report->{systempreferences}->{UseTablesortForCirc},                 $value_to_test, "UseTablesortForCirc                = $value_to_test" );
709     is( $report->{systempreferences}->{WaitingNotifyAtCheckin},              $value_to_test, "WaitingNotifyAtCheckin             = $value_to_test" );
710     is( $report->{systempreferences}->{AllowSelfCheckReturns},               $value_to_test, "AllowSelfCheckReturns              = $value_to_test" );
711     is( $report->{systempreferences}->{AutoSelfCheckAllowed},                $value_to_test, "AutoSelfCheckAllowed               = $value_to_test" );
712     is( $report->{systempreferences}->{FRBRizeEditions},                     $value_to_test, "FRBRizeEditions                    = $value_to_test" );
713     is( $report->{systempreferences}->{OPACFRBRizeEditions},                 $value_to_test, "OPACFRBRizeEditions                = $value_to_test" );
714     is( $report->{systempreferences}->{AmazonCoverImages},                   $value_to_test, "AmazonCoverImages                  = $value_to_test" );
715     is( $report->{systempreferences}->{OPACAmazonCoverImages},               $value_to_test, "OPACAmazonCoverImages              = $value_to_test" );
716     is( $report->{systempreferences}->{Babeltheque},                         $value_to_test, "Babeltheque                        = $value_to_test" );
717     is( $report->{systempreferences}->{BakerTaylorEnabled},                  $value_to_test, "BakerTaylorEnabled                 = $value_to_test" );
718     is( $report->{systempreferences}->{GoogleJackets},                       $value_to_test, "GoogleJackets                      = $value_to_test" );
719     is( $report->{systempreferences}->{HTML5MediaEnabled},                   $value_to_test, "HTML5MediaEnabled                  = $value_to_test" );
720     is( $report->{systempreferences}->{IDreamBooksReadometer},               $value_to_test, "IDreamBooksReadometer              = $value_to_test" );
721     is( $report->{systempreferences}->{IDreamBooksResults},                  $value_to_test, "IDreamBooksResults                 = $value_to_test" );
722     is( $report->{systempreferences}->{IDreamBooksReviews},                  $value_to_test, "IDreamBooksReviews                 = $value_to_test" );
723     is( $report->{systempreferences}->{LibraryThingForLibrariesEnabled},     $value_to_test, "LibraryThingForLibrariesEnabled    = $value_to_test" );
724     is( $report->{systempreferences}->{LocalCoverImages},                    $value_to_test, "LocalCoverImages                   = $value_to_test" );
725     is( $report->{systempreferences}->{OPACLocalCoverImages},                $value_to_test, "OPACLocalCoverImages               = $value_to_test" );
726     is( $report->{systempreferences}->{NovelistSelectEnabled},               $value_to_test, "NovelistSelectEnabled              = $value_to_test" );
727     is( $report->{systempreferences}->{XISBN},                               $value_to_test, "XISBN                              = $value_to_test" );
728     is( $report->{systempreferences}->{OpenLibraryCovers},                   $value_to_test, "OpenLibraryCovers                  = $value_to_test" );
729     is( $report->{systempreferences}->{UseKohaPlugins},                      $value_to_test, "UseKohaPlugins                     = $value_to_test" );
730     is( $report->{systempreferences}->{SyndeticsEnabled},                    $value_to_test, "SyndeticsEnabled                   = $value_to_test" );
731     is( $report->{systempreferences}->{TagsEnabled},                         $value_to_test, "TagsEnabled                        = $value_to_test" );
732     is( $report->{systempreferences}->{CalendarFirstDayOfWeek},              $value_to_test, "CalendarFirstDayOfWeek             = $value_to_test" );
733     is( $report->{systempreferences}->{opaclanguagesdisplay},                $value_to_test, "opaclanguagesdisplay               = $value_to_test" );
734     is( $report->{systempreferences}->{AuthoritiesLog},                      $value_to_test, "AuthoritiesLog                     = $value_to_test" );
735     is( $report->{systempreferences}->{BorrowersLog},                        $value_to_test, "BorrowersLog                       = $value_to_test" );
736     is( $report->{systempreferences}->{CataloguingLog},                      $value_to_test, "CataloguingLog                     = $value_to_test" );
737     is( $report->{systempreferences}->{FinesLog},                            $value_to_test, "FinesLog                           = $value_to_test" );
738     is( $report->{systempreferences}->{IssueLog},                            $value_to_test, "IssueLog                           = $value_to_test" );
739     is( $report->{systempreferences}->{LetterLog},                           $value_to_test, "LetterLog                          = $value_to_test" );
740     is( $report->{systempreferences}->{ReturnLog},                           $value_to_test, "ReturnLog                          = $value_to_test" );
741     is( $report->{systempreferences}->{SubscriptionLog},                     $value_to_test, "SubscriptionLog                    = $value_to_test" );
742     is( $report->{systempreferences}->{AuthorisedValueImages},               $value_to_test, "AuthorisedValueImages              = $value_to_test" );
743     is( $report->{systempreferences}->{BiblioDefaultView},                   $value_to_test, "BiblioDefaultView                  = $value_to_test" );
744     is( $report->{systempreferences}->{COinSinOPACResults},                  $value_to_test, "COinSinOPACResults                 = $value_to_test" );
745     is( $report->{systempreferences}->{DisplayOPACiconsXSLT},                $value_to_test, "DisplayOPACiconsXSLT               = $value_to_test" );
746     is( $report->{systempreferences}->{hidelostitems},                       $value_to_test, "hidelostitems                      = $value_to_test" );
747     is( $report->{systempreferences}->{HighlightOwnItemsOnOPAC},             $value_to_test, "HighlightOwnItemsOnOPAC            = $value_to_test" );
748     is( $report->{systempreferences}->{OpacAddMastheadLibraryPulldown},      $value_to_test, "OpacAddMastheadLibraryPulldown     = $value_to_test" );
749     is( $report->{systempreferences}->{OPACDisplay856uAsImage},              $value_to_test, "OPACDisplay856uAsImage             = $value_to_test" );
750     is( $report->{systempreferences}->{OpacHighlightedWords},                $value_to_test, "OpacHighlightedWords               = $value_to_test" );
751     is( $report->{systempreferences}->{OpacKohaUrl},                         $value_to_test, "OpacKohaUrl                        = $value_to_test" );
752     is( $report->{systempreferences}->{OpacMaintenance},                     $value_to_test, "OpacMaintenance                    = $value_to_test" );
753     is( $report->{systempreferences}->{OpacPublic},                          $value_to_test, "OpacPublic                         = $value_to_test" );
754     is( $report->{systempreferences}->{OpacSeparateHoldings},                $value_to_test, "OpacSeparateHoldings               = $value_to_test" );
755     is( $report->{systempreferences}->{OPACShowBarcode},                     $value_to_test, "OPACShowBarcode                    = $value_to_test" );
756     is( $report->{systempreferences}->{OPACShowCheckoutName},                $value_to_test, "OPACShowCheckoutName               = $value_to_test" );
757     is( $report->{systempreferences}->{OpacShowFiltersPulldownMobile},       $value_to_test, "OpacShowFiltersPulldownMobile      = $value_to_test" );
758     is( $report->{systempreferences}->{OPACShowHoldQueueDetails},            $value_to_test, "OPACShowHoldQueueDetails           = $value_to_test" );
759     is( $report->{systempreferences}->{OpacShowLibrariesPulldownMobile},     $value_to_test, "OpacShowLibrariesPulldownMobile    = $value_to_test" );
760     is( $report->{systempreferences}->{OpacShowRecentComments},              $value_to_test, "OpacShowRecentComments             = $value_to_test" );
761     is( $report->{systempreferences}->{OPACShowUnusedAuthorities},           $value_to_test, "OPACShowUnusedAuthorities          = $value_to_test" );
762     is( $report->{systempreferences}->{OpacStarRatings},                     $value_to_test, "OpacStarRatings                    = $value_to_test" );
763     is( $report->{systempreferences}->{opacthemes},                          $value_to_test, "opacthemes                         = $value_to_test" );
764     is( $report->{systempreferences}->{OPACURLOpenInNewWindow},              $value_to_test, "OPACURLOpenInNewWindow             = $value_to_test" );
765     is( $report->{systempreferences}->{OpacAuthorities},                     $value_to_test, "OpacAuthorities                    = $value_to_test" );
766     is( $report->{systempreferences}->{opacbookbag},                         $value_to_test, "opacbookbag                        = $value_to_test" );
767     is( $report->{systempreferences}->{OpacBrowser},                         $value_to_test, "OpacBrowser                        = $value_to_test" );
768     is( $report->{systempreferences}->{OpacBrowseResults},                   $value_to_test, "OpacBrowseResults                  = $value_to_test" );
769     is( $report->{systempreferences}->{OpacCloud},                           $value_to_test, "OpacCloud                          = $value_to_test" );
770     is( $report->{systempreferences}->{OPACFinesTab},                        $value_to_test, "OPACFinesTab                       = $value_to_test" );
771     is( $report->{systempreferences}->{OpacHoldNotes},                       $value_to_test, "OpacHoldNotes                      = $value_to_test" );
772     is( $report->{systempreferences}->{OpacItemLocation},                    $value_to_test, "OpacItemLocation                   = $value_to_test" );
773     is( $report->{systempreferences}->{OpacPasswordChange},                  $value_to_test, "OpacPasswordChange                 = $value_to_test" );
774     is( $report->{systempreferences}->{OPACPatronDetails},                   $value_to_test, "OPACPatronDetails                  = $value_to_test" );
775     is( $report->{systempreferences}->{OPACpatronimages},                    $value_to_test, "OPACpatronimages                   = $value_to_test" );
776     is( $report->{systempreferences}->{OPACPopupAuthorsSearch},              $value_to_test, "OPACPopupAuthorsSearch             = $value_to_test" );
777     is( $report->{systempreferences}->{OpacTopissue},                        $value_to_test, "OpacTopissue                       = $value_to_test" );
778     is( $report->{systempreferences}->{opacuserlogin},                       $value_to_test, "opacuserlogin                      = $value_to_test" );
779     is( $report->{systempreferences}->{QuoteOfTheDay},                       $value_to_test, "QuoteOfTheDay                      = $value_to_test" );
780     is( $report->{systempreferences}->{RequestOnOpac},                       $value_to_test, "RequestOnOpac                      = $value_to_test" );
781     is( $report->{systempreferences}->{reviewson},                           $value_to_test, "reviewson                          = $value_to_test" );
782     is( $report->{systempreferences}->{ShowReviewer},                        $value_to_test, "ShowReviewer                       = $value_to_test" );
783     is( $report->{systempreferences}->{ShowReviewerPhoto},                   $value_to_test, "ShowReviewerPhoto                  = $value_to_test" );
784     is( $report->{systempreferences}->{SocialNetworks},                      $value_to_test, "SocialNetworks                     = $value_to_test" );
785     is( $report->{systempreferences}->{suggestion},                          $value_to_test, "suggestion                         = $value_to_test" );
786     is( $report->{systempreferences}->{AllowPurchaseSuggestionBranchChoice}, $value_to_test, "AllowPurchaseSuggestionBranchChoice= $value_to_test" );
787     is( $report->{systempreferences}->{OpacAllowPublicListCreation},         $value_to_test, "OpacAllowPublicListCreation        = $value_to_test" );
788     is( $report->{systempreferences}->{OpacAllowSharingPrivateLists},        $value_to_test, "OpacAllowSharingPrivateLists       = $value_to_test" );
789     is( $report->{systempreferences}->{OpacRenewalAllowed},                  $value_to_test, "OpacRenewalAllowed                 = $value_to_test" );
790     is( $report->{systempreferences}->{OpacRenewalBranch},                   $value_to_test, "OpacRenewalBranch                  = $value_to_test" );
791     is( $report->{systempreferences}->{OPACViewOthersSuggestions},           $value_to_test, "OPACViewOthersSuggestions          = $value_to_test" );
792     is( $report->{systempreferences}->{SearchMyLibraryFirst},                $value_to_test, "SearchMyLibraryFirst               = $value_to_test" );
793     is( $report->{systempreferences}->{singleBranchMode},                    $value_to_test, "singleBranchMode                   = $value_to_test" );
794     is( $report->{systempreferences}->{AnonSuggestions},                     $value_to_test, "AnonSuggestions                    = $value_to_test" );
795     is( $report->{systempreferences}->{EnableOpacSearchHistory},             $value_to_test, "EnableOpacSearchHistory            = $value_to_test" );
796     is( $report->{systempreferences}->{OPACPrivacy},                         $value_to_test, "OPACPrivacy                        = $value_to_test" );
797     is( $report->{systempreferences}->{opacreadinghistory},                  $value_to_test, "opacreadinghistory                 = $value_to_test" );
798     is( $report->{systempreferences}->{TrackClicks},                         $value_to_test, "TrackClicks                        = $value_to_test" );
799     is( $report->{systempreferences}->{PatronSelfRegistration},              $value_to_test, "PatronSelfRegistration             = $value_to_test" );
800     is( $report->{systempreferences}->{OPACShelfBrowser},                    $value_to_test, "OPACShelfBrowser                   = $value_to_test" );
801     is( $report->{systempreferences}->{AutoEmailOpacUser},                   $value_to_test, "AutoEmailOpacUser                  = $value_to_test" );
802     is( $report->{systempreferences}->{AutoEmailPrimaryAddress},             $value_to_test, "AutoEmailPrimaryAddress            = $value_to_test" );
803     is( $report->{systempreferences}->{autoMemberNum},                       $value_to_test, "autoMemberNum                      = $value_to_test" );
804     is( $report->{systempreferences}->{BorrowerRenewalPeriodBase},           $value_to_test, "BorrowerRenewalPeriodBase          = $value_to_test" );
805     is( $report->{systempreferences}->{checkdigit},                          $value_to_test, "checkdigit                         = $value_to_test" );
806     is( $report->{systempreferences}->{EnableBorrowerFiles},                 $value_to_test, "EnableBorrowerFiles                = $value_to_test" );
807     is( $report->{systempreferences}->{EnhancedMessagingPreferences},        $value_to_test, "EnhancedMessagingPreferences       = $value_to_test" );
808     is( $report->{systempreferences}->{ExtendedPatronAttributes},            $value_to_test, "ExtendedPatronAttributes           = $value_to_test" );
809     is( $report->{systempreferences}->{intranetreadinghistory},              $value_to_test, "intranetreadinghistory             = $value_to_test" );
810     is( $report->{systempreferences}->{memberofinstitution},                 $value_to_test, "memberofinstitution                = $value_to_test" );
811     is( $report->{systempreferences}->{patronimages},                        $value_to_test, "patronimages                       = $value_to_test" );
812     is( $report->{systempreferences}->{TalkingTechItivaPhoneNotification},   $value_to_test, "TalkingTechItivaPhoneNotification  = $value_to_test" );
813     is( $report->{systempreferences}->{uppercasesurnames},                   $value_to_test, "uppercasesurnames                  = $value_to_test" );
814     is( $report->{systempreferences}->{IncludeSeeFromInSearches},            $value_to_test, "IncludeSeeFromInSearches           = $value_to_test" );
815     is( $report->{systempreferences}->{OpacGroupResults},                    $value_to_test, "OpacGroupResults                   = $value_to_test" );
816     is( $report->{systempreferences}->{QueryAutoTruncate},                   $value_to_test, "QueryAutoTruncate                  = $value_to_test" );
817     is( $report->{systempreferences}->{QueryFuzzy},                          $value_to_test, "QueryFuzzy                         = $value_to_test" );
818     is( $report->{systempreferences}->{QueryStemming},                       $value_to_test, "QueryStemming                      = $value_to_test" );
819     is( $report->{systempreferences}->{QueryWeightFields},                   $value_to_test, "QueryWeightFields                  = $value_to_test" );
820     is( $report->{systempreferences}->{TraceCompleteSubfields},              $value_to_test, "TraceCompleteSubfields             = $value_to_test" );
821     is( $report->{systempreferences}->{TraceSubjectSubdivisions},            $value_to_test, "TraceSubjectSubdivisions           = $value_to_test" );
822     is( $report->{systempreferences}->{UseICU},                              $value_to_test, "UseICU                             = $value_to_test" );
823     is( $report->{systempreferences}->{UseQueryParser},                      $value_to_test, "UseQueryParser                     = $value_to_test" );
824     is( $report->{systempreferences}->{defaultSortField},                    $value_to_test, "defaultSortField                   = $value_to_test" );
825     is( $report->{systempreferences}->{displayFacetCount},                   $value_to_test, "displayFacetCount                  = $value_to_test" );
826     is( $report->{systempreferences}->{OPACdefaultSortField},                $value_to_test, "OPACdefaultSortField               = $value_to_test" );
827     is( $report->{systempreferences}->{OPACItemsResultsDisplay},             $value_to_test, "OPACItemsResultsDisplay            = $value_to_test" );
828     is( $report->{systempreferences}->{expandedSearchOption},                $value_to_test, "expandedSearchOption               = $value_to_test" );
829     is( $report->{systempreferences}->{IntranetNumbersPreferPhrase},         $value_to_test, "IntranetNumbersPreferPhrase        = $value_to_test" );
830     is( $report->{systempreferences}->{OPACNumbersPreferPhrase},             $value_to_test, "OPACNumbersPreferPhrase            = $value_to_test" );
831     is( $report->{systempreferences}->{opacSerialDefaultTab},                $value_to_test, "opacSerialDefaultTab               = $value_to_test" );
832     is( $report->{systempreferences}->{RenewSerialAddsSuggestion},           $value_to_test, "RenewSerialAddsSuggestion          = $value_to_test" );
833     is( $report->{systempreferences}->{RoutingListAddReserves},              $value_to_test, "RoutingListAddReserves             = $value_to_test" );
834     is( $report->{systempreferences}->{RoutingSerials},                      $value_to_test, "RoutingSerials                     = $value_to_test" );
835     is( $report->{systempreferences}->{SubscriptionHistory},                 $value_to_test, "SubscriptionHistory                = $value_to_test" );
836     is( $report->{systempreferences}->{Display856uAsImage},                  $value_to_test, "Display856uAsImage                 = $value_to_test" );
837     is( $report->{systempreferences}->{DisplayIconsXSLT},                    $value_to_test, "DisplayIconsXSLT                   = $value_to_test" );
838     is( $report->{systempreferences}->{StaffAuthorisedValueImages},          $value_to_test, "StaffAuthorisedValueImages         = $value_to_test" );
839     is( $report->{systempreferences}->{template},                            $value_to_test, "template                           = $value_to_test" );
840     is( $report->{systempreferences}->{yuipath},                             $value_to_test, "yuipath                            = $value_to_test" );
841     is( $report->{systempreferences}->{HidePatronName},                      $value_to_test, "HidePatronName                     = $value_to_test" );
842     is( $report->{systempreferences}->{intranetbookbag},                     $value_to_test, "intranetbookbag                    = $value_to_test" );
843     is( $report->{systempreferences}->{StaffDetailItemSelection},            $value_to_test, "StaffDetailItemSelection           = $value_to_test" );
844     is( $report->{systempreferences}->{viewISBD},                            $value_to_test, "viewISBD                           = $value_to_test" );
845     is( $report->{systempreferences}->{viewLabeledMARC},                     $value_to_test, "viewLabeledMARC                    = $value_to_test" );
846     is( $report->{systempreferences}->{viewMARC},                            $value_to_test, "viewMARC                           = $value_to_test" );
847     is( $report->{systempreferences}->{'ILS-DI'},                            $value_to_test, "ILS-DI                             = $value_to_test" );
848     is( $report->{systempreferences}->{'OAI-PMH'},                           $value_to_test, "OAI-PMH                            = $value_to_test" );
849     is( $report->{systempreferences}->{version},                             $value_to_test, "version                            = $value_to_test" );
850 }
851
852 $dbh->rollback;