Tomas Cohen Arazi
39a2763109
This patch makes the `get_savings` method use a single query to calculate the sum of the replacement prices. This way we save one query per item and just rely on the DB features. It has a side effect: we are not summing items twice. Added tests for the 'itenumber is null' pathological but common use case (specially in old_issues), as mentioned by Lucas. Handling for this is added (grep filtering out undefined ones) and also in the return, for the empty case, with // 0. To test: 1. Apply this patch 2. Run: qa -c 6 --run-tests => SUCCESS: All good 3. Sign off :-D Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> |
||
---|---|---|
.. | ||
Acquisition | ||
Biblio | ||
Budgets | ||
Circulation | ||
cypress | ||
data | ||
db_dependent | ||
edi_testfiles | ||
etc | ||
External | ||
Koha | ||
lib | ||
Members | ||
Number | ||
Search | ||
Serials | ||
SIP | ||
Test | ||
00-check-atomic-updates.t | ||
00-deprecated.t | ||
00-load.t | ||
00-merge-conflict-markers.t | ||
00-testcritic.t | ||
00-valid-xml.t | ||
Auth.t | ||
Auth_with_shibboleth.t | ||
AuthoritiesMarc_MARC21.t | ||
AuthoritiesMarc_UNIMARC.t | ||
Barcodes_annual.t | ||
Barcodes_EAN13.t | ||
Barcodes_hbyymmincr.t | ||
Barcodes_incremental.t | ||
Biblio.t | ||
Biblio2.t | ||
Budgets.t | ||
Calendar.t | ||
Charset.t | ||
Circulation_barcodedecode.t | ||
ClassSortRoutine.t | ||
ClassSortRoutine_Dewey.t | ||
ClassSortRoutine_Generic.t | ||
ClassSortRoutine_LCC.t | ||
ClassSource.t | ||
Context.t | ||
Contract.t | ||
CookieManager.t | ||
Creators.t | ||
DateUtils.t | ||
dummy.t | ||
Edifact.t | ||
EdiInvoice.t | ||
Ediorder.t | ||
Ediordrsp.t | ||
EdiTransport.t | ||
Form_MessagingPreferences.t | ||
HtmlTags.t | ||
ImportBatch.t | ||
Installer_PerlModules.t | ||
ItemCirculationAlertPreference.t | ||
Koha.t | ||
Koha_MetadataRecord.t | ||
Koha_SearchEngine_Elasticsearch_Browse.t | ||
Koha_Template_Plugin_Cache.t | ||
Koha_Template_Plugin_HtmlId.t | ||
Koha_Template_Plugin_Koha.t | ||
Koha_Util_FrameworkPlugin.t | ||
Koha_Util_MARC.t | ||
Koha_XSLT_HTTPS.t | ||
Labels.t | ||
Labels_split_ccn.t | ||
Labels_split_ddcn.t | ||
Labels_split_lccn.t | ||
Labels_split_Regex.t | ||
Languages.t | ||
Letters.t | ||
Logger.t | ||
Makefile.t | ||
Matcher.t | ||
Members_Messaging.t | ||
OpenLibrarySearch.t | ||
Output.t | ||
Output_JSONStream.t | ||
Patron.t | ||
Patroncards.t | ||
Patroncards_Batch.t | ||
Patroncards_Lib.t | ||
Patroncards_Patroncard.t | ||
Patroncards_Profile.t | ||
Patroncards_Template.t | ||
Prices.t | ||
RecordProcessor.t | ||
Ris.t | ||
Scheduler.t | ||
Scrubber.t | ||
Search.t | ||
Search_PazPar2.t | ||
SimpleMARC.t | ||
SMS.t | ||
SocialData.t | ||
Stats.t | ||
SuggestionEngine.t | ||
SuggestionEngine_AuthorityFile.t | ||
template_filters.t | ||
timezones.t | ||
TmplToken.t | ||
Token.t | ||
XSLT.t |